Mein vorläufiger Code kann aber nicht stimmen, weil am ende genau wieder 10 hoch 6 rauskommt. Der Sinn der Aufgabe ist es imho Rundungsfehler deutlich zu machen.
Imho liegt es daran, dass ich kein Exponentenformat verwendet habe. Wieso nicht ? Na ganz einfach, weil ich nicht weiß, was damit gemeint ist. "10^6" kann ich glaub ich nicht schreiben. Plz help.
Achso: Das ist ne Anfängeraufgabe, darüber machen sich einige sicher lustig ;-) Aber jeder fängt mal an und wenn man vorher noch nie wirklich mit sowas zu tun hatte ist der Einstieg nicht grade einfach, also bitte etwas Nachsicht
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include <stdio.h>
#define k 0.1693;
int main (){
int m; /*Variablendeklarationen*/
float x, y, z;
y=0;
x=1000000;
for(m=0; m<10; m++) /*1. Schleife multipliziert 10x*/
{
y=y+x*k;
}
z=y; /*z als Kopie für spätere Ergebnissausgabe*/
do /*2. Schleife dividiert 10x*/
{
y=y/k;
m=m-1;
}
while(m<0);
printf("Ausgangswert: %.8f\n", z);
printf("Endwert: %.8f\n\n", y);
getchar();
return 0;
}
|
Ausgabe sieht danach so aus: