Wuzeln in dyn. Array speichern ...
-
Hi!
Ich möchte die Ergebnisse von sqrt in eine Arry speichern.
Hab auch schon mal mit unten anliegendem, Code angefangen, kommen nun aber nicht weiter...
Kann wer helfen?#include <stdio.h> #include <conio.h> #include <math.h> int main() { double i,anz; float *x; anz = 10e300; x = malloc(anz * sizeof(double)); for(i=1;i<=10e300;i++) { *x[i] = sqrt(i); printf("\nDie wurzel aus %e ist %f",i,*x[i]); } free(x); getch(); return 0; }
-
Soll das heißen, du reservierst dir ein Array mit 10e300 double´s ?Man gönnt sich ja sonst nix...
-
joa ... falls das geht.... ???
-
ok .... es gehtn ich ....
-
Naja, 8 Byte für ein Double * 10e300.
Nun rechne das mal in GB um ...
-
Nun lass mal den Kopf nicht hängen, du kannst ja deine Wurzeln noch on the fly berechnen.
Die Schreibweise *x[i] ist übrigens falsch.
Entweder *x für das erste Element, oder x[i] für beliebiges Element.
Außerdem muss der Index eine ganze Zahl sein.for(i=1;i<=10e300;i++) { float x; x = sqrt(i); printf("\nDie wurzel aus %e ist %f",i,x); }
So hast du auch deinen Spass.
Kannst dich ja mal melden, wenn er fertig durchgelaufen ist.
-
ja das hab ich auch noch selber hinbekommen ....
will aber unbedingt meinen RAM vollschreiben ...
dazu will ich n dyn. Array benutzen....hab mom. leider irgend ne Denkblockade...
-
hab übrigens ausgerechnet wieviele GB meine ursprüngliche Lösung ben. würde...
7,450580596923828125e+291 GB
das rockt mehr als
foo: jmp foo;
-
aliendrummer schrieb:
will aber unbedingt meinen RAM vollschreiben ...
Wozu?
Weißt du, was virtueller Speicher ist?
-
In C(++) fängt der Index eines Arrays übrigens bei 0 an und nicht bei 1!