Frage zu C++ ;-)

BlackWiddow

Fahrer
Registriert
24 Juni 2004
Hallo!!

Also heute habe ich mal eine Frage, die ist sowas von Off-Topic ;-)

Und zwar geht es um folgende Frage zum Thema C++ :

Aufgabe:

Ich habe einen Schalter mit 3 Eingängen (A,B,C) und einem Ausgang (Y). Laut Boolscher Funktion ist Y nur nur dann an (also 1) wenn A UND B UND C auch an sind (also auch 1). Ansonsten ist Y immer aus (0).

Eine C-Funktion soll diesen Schalter nun nachbilden. Dabei soll der logische Zustand "Wahr" ("true") durch das Zeichen T und der logische Zustand "Falsch" ("false") durch das Zeichen F representiert werden. Entsprechend sind die Parameter dieser Funktion und der Funktionswert vom Typ char. (An sich kein Problem, allerdings muss man folgende Vorlage vervollständigen und darf nichts eigenes machen, ich hätte das jetzt mit ner if-else Schleife gemacht denke ich):

char ausgang_y(char eingang_a, char eingang_b, char eingang_c)
{

}

Hat einer ne Idee?? &:

Gruß

Henning
 
AW: Frage zu C++ ;-)

char ausgang_y(char eingang_a, char eingang_b, char eingang_c)
{
char zustand;

if(eingang_a=='T' && eingang_b=='T' && eingang_c=='T') zustand='T';
else zustand='F';

return zustand;


}
 
AW: Frage zu C++ ;-)

Oder:

char ausgang_y(char eingang_a, char eingang_b, char eingang_c)
{
return (eingang_a=='T' && eingang_b=='T' && eingang_c=='T') ? 'T' : 'F';
}

:B
 
AW: Frage zu C++ ;-)

oder:

char ausgang_y(char eingang_a, char eingang_b, char eingang_c)
{
int n,n_a,n_b,n_c;

n_a = (int)eingang_a;
n_b = (int)eingang_b;
n_c = (int)eingang_c;
n = n_a * n_b * n_c;

if (n == 592704)
return 'T';
return 'F';
}

char ausgang_y_2(char eingang_a, char eingang_b, char eingang_c)
{
int n,n_a,n_b,n_c;

n_a = (int)eingang_a;
n_b = (int)eingang_b;
n_c = (int)eingang_c;
n = n_a + n_b + n_c;

if (n == 252)
return 'T';
return 'F';
}

char ausgang_y_3(char eingang_a, char eingang_b, char eingang_c)
{
if (eingang_a != eingang_b)
return 'F';
if (eingang_b != eingang_c)
return 'F';
return eingang_a;
}

gar nicht so einfach, hier eine komplizierte Lösung zu finden...:w :d
 
AW: Frage zu C++ ;-)

hey super danke ;-)

bereite mich grade auf eine Informatik Klausur fürs Maschinenbaustudium vor.....wäre Informatik doch nur so einfach wie Termodynamik oder Meachanik :D

Hmm stdin und stdout ist nicht das gleiche wie scanf und printf oder??

Aufgabe 6) Schreiben sie ein C- Programm, dass eine Matrikelnummer (int ) <- offenbar jede 6 stellige Matrikelnummer!? von der Tastatur (stdin) einliest und diese Nummer zusammen mit ihrem Namen (Vorname Nachname) in EINER Ausgabezeile auf den Bildschirm (stdout) schreibt.

Also mit scanf ne integer einlesen, und die dann mit printf und meinem Namen wieder ausgeben wäre ja extrem easy....

Aber stdin und stdout kommt in meinem script nicht vor :g ist das irgendwas mit dateinanlage und dateiauslesen??

Gruß

Henning
 
AW: Frage zu C++ ;-)

Hmm stdin und stdout ist nicht das gleiche wie scanf und printf oder??
Vielleicht solltest Du die Klausur besser nächstes Jahr schreiben. In der Zwischenzeit empfehle ich

51TGEPRTDNL._SS500_.jpg
 
AW: Frage zu C++ ;-)

Hallo,

"Hmm stdin und stdout ist nicht das gleiche wie scanf und printf oder??"

stdin = ist im Normalfall die Tastatur
stdout = der Bildschirm

Die Ausnahme wäre wenn man eine Umleitung vorgenommen hätte. Bei deiner Fragestellung liest Scanf die Zeichen von der Tastatur (= stdin) und die Ausgabe erfolgt mit printf (= stdout).

Ich hoffe das hilft weiter. Den Rest solltest Du alleine können (3 Variablen definieren, 3 Werte einlesen mit scanf (stdin) und 3 Werte ausgeben mit printf (stdout)).
 
AW: Frage zu C++ ;-)

@FritzHer:

alles klar, dann wars ja doch einfach. I

@dwz8:

der Anteil von C an der Informatik Klausur liegt bei ca. 20%, da ich den restlichen Stoff der Klausur quasi vorwärts und rückwärts kann, werde ich die Klausur sicherlich nächste Woche schreiben ;-)
 
AW: Frage zu C++ ;-)

Öhm, also auch im ersten Semester sollten zumindest kurz vor der Klausur die absoluten C-Grundlagen bekannt sein ...

... sorry.

Und da die meisten Programmiersprachen doch sehr C ähneln ist das nicht verkehrt sich das Kernighan&Ritchie-Buch mal anzutun ...

Ich hab's auch irgendwo noch rumliegen :X
 
AW: Frage zu C++ ;-)

char ausgang_y(char eingang_a, char eingang_b, char eingang_c)
{
return( eingang_a == 'T' && eingang_b == 'T' && eingang_c == 'T' ? 'T' : 'F' );
}

Da muß man doch nich' soviel Wind machen ;)
 
AW: Frage zu C++ ;-)

#define NU return
#define OY eingang_a
#define OYOY eingang_b
#define OYOYOY eingang_c
#define UH 'T'
#define AH 'F'

char ausgang_y(char OY, char OYOY, char OYOYOY)
{
NU OY==UH && OYOY==UH && OYOYOY==UH ? UH : AH;
}

Oder so, wenn's lesbar sein soll!
 
AW: Frage zu C++ ;-)

#define NU return
#define OY eingang_a
#define OYOY eingang_b
#define OYOYOY eingang_c
#define UH 'T'
#define AH 'F'

char ausgang_y(char OY, char OYOY, char OYOYOY)
{
NU OY==UH && OYOY==UH && OYOYOY==UH ? UH : AH;
}

Oder so, wenn's lesbar sein soll!

bei uns war immer sowas der hit ;)

#define XXXXYX return
#define XXXYXX eingang_a
#define XXYXXX eingang_b
#define XYXXXX eingang_c
#define YXXXXX 'T'
#define XXXXXY 'F'

char ausgang_y(char XXXYXX, char XXYXXX, char XYXXXX)
{
XXXXYX XXXYXX==YXXXXX && XXYXXX==YXXXXX && XYXXXX==YXXXXX ? YXXXXX : XXXXXY;
}

GrusZ3
andreas
 
AW: Frage zu C++ ;-)

Wir müssen aufpassen, das wir hier nicht aus Versehen Teile von MS-Windows nachschreiben.
Den Dokumentationsstil haben wir vermutlich schon fast erreicht...
Zumindest wenn's um die neue Kernel-Patch-Protection in Vista geht...
 
Zurück
Oben Unten