C-Aufgabe. Ich peil nix :(
-
Also jetz nich eine einzige fürs Proggi sondern eine einzige für das mit dem Exponenten. Nur wie soll das gehen? Es soll halt ne FOR-Schleife sein...
-
In eine Funktion packen
Schreib dir das pow halt selbst.
-
Ich weiß ja nicht wie euer Lehrer drauf ist, wenn du ihm aber sagst, dass du
meine Zinsformel oben gewählt hast, weil Sie ersten Kinderleicht zu benutzen ist
und zweitens Rechenzeit spart, sollte dir das eigentlich Pluspunkte und keine Kritik
einbringen, der Lehrer sieht ja, dann dass du mitdenkst und sogar ne bessere Lösung gefunden hast
-
Des stimmt schon. Nur das meine ich ja jetzt mehr aus interesse. Weil die anderen müssen es ja auch hinkriegen und die haben die andere Zinsformel und das pow() halt nicht. Ich wollt nur aus Interesse wissen wie man sowas realisieren kann... thx
cya
-
der Lehrer sieht ja, dann dass du mitdenkst
Warst du jemals inner Schule? Da ist nix mit mitdenken und dafür noch gute Noten einkassieren.....
-
CarstenJ schrieb:
der Lehrer sieht ja, dann dass du mitdenkst
Warst du jemals inner Schule? Da ist nix mit mitdenken und dafür noch gute Noten einkassieren.....
Dann hab ich den falschen Lehrer im IT Unterricht
#include <stdio.h> int main (void) { int zahl = 10; int ergebnis = 1; int exp = 5; int i; for (i = 0; i < exp; i++){ ergebnis *= zahl; } printf ("%d",ergebnis); getchar (); return 0; }
-
Dann hab ich den falschen Lehrer im IT Unterricht
Tja, ich leider auch.....aber was sag ich dazu immer: Hauptsache gesund
-
ahhh. danke!!! ich glaub ich registrier mich mal
gutes gefühl von so vielen profis umgeben zu sein
-
Nochmal ne Frage: wofür isn die variable zahl genau? also was genau ist ihre bedeutung???
-
hmm. blöde frage eigentlich. hmm. ich glaube ich werds selbst mal versuchen...
thxcya
-
Also ich habs jetz mal versucht, aber irgendwie klappts immer noch net
# include <stdio.h> # include <ctype.h> int main() { float k, n, p, klammer, i, hintere=1, b; scanf("%d", &k); scanf("%d", &n); scanf("%d", &p); klammer=p/100+1; for (i = 0; i < n; i++) { hintere=hintere*klammer; b=hintere*k; printf("%d", b); } scanf ("%d", k); return 0; }
-
versuch mal
scanf("%d\n",&x);
btw. solltest du eine genaue Fehler Beschreibung mitliefern. "geht nicht" sorgt nicht dafür, dass man dir gut helfen kann.
lies dir am besten mal http://www.catb.org/~esr/faqs/smart-questions.html durch
-
Ich verstehe nicht genau was Du mit der Schleife da versuchst... Aber ne Potenzierung ist es nicht wirklich...
Potenz = x mal mit sich SELBST Multipliziert, ich sehe aber kein selbst*selbst, sondern nur selbst*anders
Die Potenzier SChleife muss so aussehen:
for(i=1; i<=n; i++) { potenz=potenz*potenz; }
AUSSERHALB der Schleife multiplizierst Du das dann mit dem anderen kram
-
k. danke
werd gleich ausprobieren.
-
Ich würde das auch eher in eine Funktion packen:
int myPow(int zahl, int exp) { int i; if(exp == 0) return 1; // Sonderfall: zahl hoch 0 ist immer 1.... for(i = 1; i<exp; i++) zahl *= 2; return zahl; }
Das hat den Vorteil, dass es übersichtlicher ist. Die würdest du dann z. B. so aufrufen:
printf("%i\n", myPow(2,5));
-
hihi. funktionen kommen erst nach den sommerferien...^^
also ich hab das jetz so gemacht, aber egal was ich eingebe, es kommt immer 0 raus =((
# include <stdio.h> # include <ctype.h> int main() { float k, n, p, klammer, i, b; scanf("%d", &k); scanf("%d", &n); scanf("%d", &p); klammer=p/100+1; for (i = 0; i < n; i++) { klammer=klammer*klammer; b=klammer*k; printf("%d", b); } scanf ("%d", k); return 0; }
-
ups. hab das mitm ausserhalb nich gemacht. hach ich hohle birne..^^
-
hmm. aber warum ausserhalb? es soll ja immer zu dem zeitpunkt ausgegeben werden...! oder etwa nicht?
-
int myPow(int zahl, int exp) { int i; if(exp == 0) return 1; // Sonderfall: zahl hoch 0 ist immer 1.... for(i = 1; i<exp; i++) zahl *= 2; return zahl; }
Das stimmt aber nicht! Das multipliziert die Zahl exp-1 mal mit zwei.
for(i=1; i<=n; i++) { potenz=potenz*potenz; }
Ist auch nicht richtig. Hier wird 4^3 :
44=16
1616=256
ausgerechnet.Aber eine korekte Schleife für die Potenz war ja auch schon zu sehen:
#include <stdio.h> int main (void) { int zahl = 10; int ergebnis = 1; int exp = 5; int i; for (i = 0; i < exp; i++){ ergebnis *= zahl; } printf ("%d",ergebnis); getchar (); return 0; }
-
Wie definiert ihr 0^0, eingie definieren es ja als 1, andere als undefiniert.