Bedingte Ausgabe für Werte ohne Rest
-
Hi,
ich lern momentan C im Studium für Wirtschaftsinformatik im ersten Semester...
Ich soll in einer Aufgabe alle Zahlen von 3 bis 1000 auf dem Bildschirm ausgeben, die ohne rest durch 19 teilbar sind.
Ich hab angefangen mit einer do/while Schleife, mit integrierter if-Abfrage. Aber irgendwie will das so nicht. Ich weiß auch nicht wie ich diesen Zahlenwert bestimme, muss ich das als %d machen, weils ja ne Ganzzahl ist oder wie?Danke im voraus, ich hab meinen Code mal noch mit aufgeschrieben!
int main (void)
{
static int i;
i = 3;do
{
++i;if
{
i/19==("%d"));
printf("%d",i);
}}while (i!=1000);
return 0;
}
-
for (i = 3; i <= 1000; i++) if (i % 19 == 0) // ohne Rest teilbar printf ("%d,", i);
-
Für so eine Zählschleife solltest du lieber die
for
-Schleife der Form:int i = 0; for (i = start; i < ende; i++) { /* Anweisungen... */ }
einsetzen (die Variablen
start
undende
natürlich entsprechend ersetzen). Abgesehen davon inkrementierst du in deinem Codei
bereits am Anfang des Schleifendurchlaufs, weshalb die Schleife nur von 4 bis 1000 läuft.Eine if-Abfrage sieht so aus:
if (...Wahrheits-Ausdruck...) { /* Anweisungen... */ }
(
...Wahrheits-Ausdruck...
natürlich entsprechend einsetzen)Teilbarkeit durch eine Zahl:
if (i % zahl == 0) { /* i durch zahl teilbar */ }
bzw.:
if (i % zahl != 0) { /* i nicht durch zahl teilbar */ }
-
Vielen Dank für die schnelle Antwort und Hilfe!!
Das hat mir sehr geholfen!!