Problem in einer while-Schleife
-
Hi, ich komme absolut nicht auf eine Idee. Meine Schleife sieht wie folgt aus:
while (n>=2) {p=n*(n-1); printf("\nTextausgabe fuer Einzelprodukt: %d\n", p); n=n-2; }
Man gibt eine Zahl ein und diese wird dann stückweise runtermultipliziert.
Bsp: n=20. Das Programm rechnet dann 20*19 und spuckt das Ergebnis(p) aus, dann rechnet es 18*17 und das Ergebnis wird gezeigt, usw.
So soll es auch sein, mein Problem ist aber dass die einzelnen Ergebnisse addiert werden sollen. Ich denke ich muss das mithilfe einer Hilfsvariable machen, aber der Gedankengang ist glaube ich eine Nummer zu hoch für mich.Ich hoffe mir kann jemand folgen und sogar eine Problemlösung nennen
Danke
-
Dömdömdöm schrieb:
sum = 0; while (n>=2) {p=n*(n-1); sum = sum + p; printf("\nTextausgabe fuer Einzelprodukt: %d\n", p); n=n-2; }
-
Hi.
Wie wärs damit?
#include <stdio.h> #include <stdlib.h> void main(void) { int n=20, p, e=0, i=0; while (n>=2) { p=n*(n-1); if(i==0) { printf("\nTextausgabe fuer Einzelprodukt: %d\n", p); i++; } else { printf(" : %d\n", p); } n=n-2; e=e+p; } printf("\n ______\n"); printf("\nEndergebnis : %d\n", e); system("PAUSE"); }}
Ich habe einfach nur eine weitere Variable deklariert, 'e', und dann wird in jedem Schleifendurchlauf auf die Zahl in 'e' die Zahl in 'p' hinzugerechnet.
Der Rest den ich gemacht habe ist für mehr Übersichtlichkeit.
Du solltest dir auch eine übersichtlichere Schreibweise angewöhnen.MfG
Vielleicht bin ich aber auch über das Zeil hinausgeschossen ...
-
Danke euch beiden. Eigentlich wars ja ne einfache Sache, im nachhinein frag ich mich warum ich nicht selbst auf die Lösung gekommen bin. Naja, nächstes mal weiß ichs^^