Mani Geschrieben 5. Dezember 2003 Geschrieben 5. Dezember 2003 #include <stdio.h> #include <math.h> #include <conio.h> #include <iostream> main() { int zaehler, zahl1, zahl2; printf ("\nHerzlich Willkommen im kleinen Mathespiel\n\n"); printf ("Sie koennen hier 2 verschiedene Zahlen im Bereich von 1 - 150 eingeben\n"); printf ("Die Zahlen, (im Bereich von 1- 150) die teilbar durch Ihre Eingabezahlen\n"); printf ("sind, werden mit einem X ausgegeben\n\n"); printf ("Programmiert wurde dieses Prog von XXXXXXX\n\n\n"); printf ("Bitte geben Sie nun die erste Zahl ein!"); scanf ("%i", &zahl1); printf ("\nBitte geben Sie nun die zweite Zahl ein!"); scanf ("%i", &zahl2); for (zaehler =1; zaehler<151; zaehler++) { if (zaehler%zahl1 == 0 && zaehler%zahl2 == 0) { printf ("X \t"); } else if (zaehler<151) { printf("%i", zaehler); } } system("pause"); return(0); } Zitieren
Diablo999 Geschrieben 5. Dezember 2003 Geschrieben 5. Dezember 2003 Was soll den das Prog genau machen? alle Zahlen von 1 bis 150 ausgeben und bei jeder Zahl ein X ausgeben wenn sie durch eine der beiden Eingabewerte teilbar ist (so funktionierts im Moment) oder alle Zahlen von 1 bis 150 ausgeben und bei jeder Zahl ein X ausgeben wenn sie durch beide Eingabewerte teilbar ist (einfach des && durch ein || ersetzen) ??? Zitieren
Master Z Geschrieben 5. Dezember 2003 Geschrieben 5. Dezember 2003 Hi! Also ich verstehe überhaupt nicht was das Programm überhaupt soll!Kannst du mal versuchen das was du willst genauer zu beschreiben so kann das nichts werden! Ich kann auch noch nicht so gut C programmieren aber im Moment weiß ich wirklich nicht was du überhaupt ausrechnen willst!Ist jetzt nicht böse gemeint aber könntest du es bitte mal genauer beschreiben?Bin noch nicht so gut wie schon erwähnt, will dir aber trotzdem helfen! Zitieren
Doham Geschrieben 6. Dezember 2003 Geschrieben 6. Dezember 2003 Also der Quellcode ist an sich ok. Jedenfalls lässt sich das Programm (nach dem #include<conio.h> (liegt aber an meinem Linuxsystem) rausgenommen wurde) ohne Fehler kompilieren und ausführen. Also läuft das Programm. Nur, was Du damit bezwecken willst verschiedene Zahlen anzuzeigen? PS: Ich würde die Eingabe zumindest überprüfen, ob die eingegebene Zahl nicht größer 151 ist PPS: Kommentare würden auch nicht schaden Zitieren
Mani Geschrieben 6. Dezember 2003 Autor Geschrieben 6. Dezember 2003 Ok folgendes: Ich weis das das Programm funzt, jedoch möchte ich, dass die Zahlen, die nicht durch die Eingabezahlen teilbar sind, ausgebenen werden. Das heisst wo die Modular funktion greift, sprich eingabezahl durch Zaehler = Rest null, soll mit X ausgegeben werden. Die Zahlen die nicht durch die Eingabezahlen teilbar sind, sollen ganz normal ausgegeben werden. Dies soll im Breich 1 -150 geschehen! Und das ist mein Problem, das ich die Zahlen, die nicht teilbar mit den Eingabezahlen sind, ausgeben möchte ! MFG Mani Zitieren
Mani Geschrieben 6. Dezember 2003 Autor Geschrieben 6. Dezember 2003 Es muss heißen: Zaehler durch Eingabezahl! Zitieren
Master Z Geschrieben 6. Dezember 2003 Geschrieben 6. Dezember 2003 Hi! Also nach deiner letzten Erklärung hab ich eigentlich begriffen was du überhaupt machen willst!Ich hab mal versucht das Programm für dich zu schreiben!Ich hoffe es funzt(Also bei mir funzt es!)! Hab es zwar ein wenig veränder aber es funktioniert!Ich lese erst die erste zahl ein und gebe dann das Ergebnis aus!Dann die zweite und das Ergebnis!Ich hoffe es passt auch so! Probiere es einfach mal aus! #include <stdio.h> #include <math.h> #include <conio.h> void main() { int zaehler, zahl1, zahl2; printf ("\nHerzlich Willkommen im kleinen Mathespiel\n\n"); printf ("Sie koennen hier 2 verschiedene Zahlen im Bereich von 1 - 150 eingeben\n"); printf ("Die Zahlen, (im Bereich von 1- 150) die teilbar durch Ihre Eingabezahlen\n"); printf ("sind, werden mit einem X ausgegeben\n\n"); printf ("Programmiert wurde dieses Prog von XXXXXXX\n\n\n"); printf ("Bitte geben Sie nun die erste Zahl ein!\n"); scanf ("%i", &zahl1); fflush(stdin); for (zaehler = 0; zaehler<=150; zaehler++) { if(zaehler%zahl1 == 0) { printf("X,"); } else { printf("%d,",zaehler); } } printf("\n"); printf ("\nBitte geben Sie nun die zweite Zahl ein!\n"); scanf ("%i", &zahl2); fflush(stdin); for (zaehler = 0; zaehler<=150; zaehler++) { if(zaehler%zahl2 == 0) { printf("X,"); } else { printf("%d,",zaehler); } } getchar (); return(0); } Ich hoffe ich konnte dir weiterhelfen! :marine :marine Wenn ich deine Erklärung falsch verstanden haben sollte!Sorry!:uli Zitieren
Mani Geschrieben 6. Dezember 2003 Autor Geschrieben 6. Dezember 2003 Thnanxx! Hast mir viel dmit geholfen! Allerdings hab ich vergessen, dass für das programm nur eine Zählschleife verbraten werden darf... Ich weis aber jetzt wie es funzt! Noch mal Danke. Ach ja, was bedeutet denn fflush ?? Zitieren
nic_power Geschrieben 6. Dezember 2003 Geschrieben 6. Dezember 2003 Hallo, fflush() schreibe alle noch in einem Ausgabe-Stream vorhandenen Daten (flushed) auf den Bildschirm oder in die geöffnete Datei. Aus diesem Grund ist fflush auf einen Eingabestrom (wie beispielsweise stdin) nicht definiert und liefert nicht-reproduzierbare Ergebnisse, die im schlimmsten Fall einen Absturz nach sich ziehen. Nic Zitieren
Daiana Geschrieben 10. Dezember 2003 Geschrieben 10. Dezember 2003 Also wir haben in der Schule auch gerade das Programm gemacht (bzw. sind dabei) Ich habs so gelöst, sind aber kleinere Spielereien wie Tonsignale oder eineVerzögerung beim Auflisten der Zahlen bei: #include <stdlib.h> #include <stdio.h> #include <windows.h> /*Dieses Programm listet alle Zahlen von 1 - 150 auf. Zu Anfang des Programms werden 2 Zahlen eingelesen. Wenn die gegebene Zahl durch zahl eins restlos teilbar ist, wird ein x ausgegeben, wenn die gegebene Zahl durch zahl zwei restlos teilbar ist ein y. Sollte die Zahl durch beide Zahlen teilbar sein, wird xy ausgegeben. Nach jeder 5. Zahl erfolg ein Zeilenumbruch und nach jeder 50 wird der Bildschirm einmal komplett gelöscht.*/ int main(void) { int zahl1, zahl2, zaehler=1; printf ("Bitte geben Sie die erste Zahl ein. \n"); scanf ("%i", &zahl1); printf ("Bitte geben Sie die zweite Zahl ein. \n"); scanf ("%i", &zahl2); system("PAUSE"); system ("cls"); printf ("Die erste Zahl ist %i \n" , zahl1); printf ("Die zweite Zahl ist %i \n\n\n" , zahl2); for (zaehler=1; zaehler<=150; ++zaehler) { if (zaehler%zahl1 != 0 && zaehler%zahl2 !=0) printf ("%i ", zaehler); if (zaehler%zahl1 ==0 && zaehler%zahl2 !=0) printf ("x "); if (zaehler%zahl2 ==0 && zaehler%zahl1 !=0) printf ("y "); if (zaehler%zahl2 ==0 && zaehler%zahl1 ==0) {printf ("xy "); printf ("\a");} if (zaehler%5 == 0) printf (" \n"); if (zaehler%50 == 0 && zaehler < 150) { system ("PAUSE"); system ("cls"); printf ("Die erste Zahl ist %i \n" , zahl1); printf ("Die zweite Zahl ist %i \n\n\n" , zahl2); } Sleep(50); } system("PAUSE"); return 0; } Liebe Grüße, Daiana Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.