Funktionstabelle

Josef

Level-1
Beiträge
141
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebe Mitglieder!

Weiss jemand einen besseren Algorithumus um die Zeilen einer
Funktionstabelle zu erzeugen. Mein Programm erzeugt nur die
Zeilen von 3 Eingangsvariablen (e1-e3).

#include <stdio.h>
main()
{
int x,e1,e2,e3,a1,a2;
x=e1=e2=e3=a1=a2=0;
printf("\nE3 E2 E1 A1 A2\n");
printf("---------------------------\n");
for (x=0;x<=7;x++) {
/*printf(" %d %d %d\n",e3,e2,e1);*/
if(x==0||x==2||x==4||x==6)
e1=0;
else
e1=1;
if(x==2||x==3||x==6||x==7)
e2=1;
else
e2=0;
if(x==0||x==1||x==2||x==3)
e3=0;
else
e3=1;
a1=e1&&e2&&e3;
a2=e1||e2||e3;
printf(" %d %d %d %d %d\n",e3,e2,e1,a1,a2);

}
printf("\n");
}


cu
Josef
 
#include <stdio.h>
main()
{
int x,e1,e2,e3,a1,a2;
x=e1=e2=e3=a1=a2=0;
printf("\nE3 E2 E1 A1 A2\n");
printf("---------------------------\n");
for (x=0;x<=7;x++) {
/*printf(" %d %d %d\n",e3,e2,e1);*/
// if(x==0||x==2||x==4||x==6)
if ((x & 0x01==0) // ale geraden Zahlen
e1=0;
else
e1=1;
// if(x==2||x==3||x==6||x==7)
if ((x & 0x02==1) // alle Zahlen, bei denen bit 2 gesetzt ist
e2=1;
else
e2=0;
// if(x==0||x==1||x==2||x==3)
if ((x & 0x04==0) // alle Zahlen, bei denen bit 3 0 ist
e3=0;
else
e3=1;
a1=e1&&e2&&e3;
a2=e1||e2||e3;
printf(" %d %d %d %d %d\n",e3,e2,e1,a1,a2);

}
printf("\n");
}

oder in einer Schleife mit Array:
for (x=0;x<=7;x++) {
int mask=0x1;
for (bit=0;bit<=2;bit++) {
if ((x & mask)!=0) e[bit]=1; else e[bit]=0;
mask<<=1;
}
// Logik und Druck
}
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hurra! jetzt klapt es endlich wie ich es will!
Danke fuer die Hilfe mit den bitwise operatoren.

So hab ich es gemacht:

#include <stdio.h>

int main(void)

{
int x,e1,e2,e3;
x=e1=e2=e3=0;
printf("\nE3 E2 E1\n");
printf("---------\n");
for (x=0;x<=7;x++) {
if ((x & 0x01)==0) /*alle geraden Zahlen */
e1=0;
else
e1=1;
if ((x & 0x02)==0) /* alle Zahlen, bei denen bit 2 0 ist */
e2=0;
else
e2=1;
if ((x & 0x04)==0) /* // alle Zahlen, bei denen bit 3 0 ist */
e3=0;
else
e3=1;
printf(" %d %d %d \n",e3,e2,e1);
}
printf("\n");
}

Jetzt kann ich endlich weitermachen mit dem Buch "Steuerungstechnik mit
SPS" von Guenther Wellenreuther und Dieter Zastrow.

cu
Josef
 
Zurück
Oben