Formelproblem

D

Diode

Gast
Hallo,

Habe einen code, aber kann nicht ganz nachvollziehen, was genau berechnet wird, könnte mir jemand dei Formel erklären und ausschreiben?

Java:
class test
{
  public static void main(String[] args)
{
   int x = 0;
   int y = 0;
   while ( x < 5 )
{
    y=x-y;
    System.out.print(x +""+y+" ");
    x=x+1;
}
}
}

Vielen Dank
A.
 
B

Beni

Gast
Bei solch einem Problem nimmt man am besten ein Stück Papier und ein Bleistift, und führt das Programm von Hand einmal aus...
 
D

Diode

Gast
Wird wohl Mathematik sein, low level Algebra hatte ich auch schon, dennoch kommt mir das nicht bekannt vor.

steht da nicht x und y wären gleich null, und bis x = 0 nicht grösser als 5 ist wird die schleife durchlaufen. Obwohl der Inhalt der Schleife etwas Erklärung bräuchte, was dann Java basics wären?


class test
{
public static void main(String[] args)
{
int x = 0;
int y = 0;
while ( x < 5 )
{
y=x-y;
System.out.print(x +""+y+" ");
x=x+1;
}
}
}
 

s4ke

Bekanntes Mitglied
Hallo,

Habe einen code, aber kann nicht ganz nachvollziehen, was genau berechnet wird, könnte mir jemand dei Formel erklären und ausschreiben?

Java:
class test
{
  public static void main(String[] args)
{
   int x = 0;
   int y = 0;
   while ( x < 5 )
{
    y=x-y;
    System.out.print(x +""+y+" ");
    x=x+1;
}
}
}

Vielen Dank
A.

1. Schleifendurchlauf:
x = 0; y = 0;
y = 0 - 0;
x = 0 + 1;
2. Schleifendurchlauf:
x = 1; y = 0;
y = 1 - 0;
x = 1 + 1;
3. Schleifendurchlauf:
x = 2; y = 1;
y = 2 - 1 = 1;
x = 2 + 1 = 3;
4. Schleifendurchlauf:
x = 3; y = 1;
y = 3 - 1 = 2;
x = 3 + 1 = 4;
5. Schleifendurchlauf:
x = 4; y = 2;
y = 4 - 2 = 2;
x = 4 + 1 = 5
Abbruch der Schleife.
x = 5; y = 2;

Das ginge wenn ich das jetzt richtig sehe immer so weiter, dass x um 1 erhöht wird und y bei jedem 2. mal auch. Also wenn x um 2 erhöht wird, erhöht sich auch y um 1.
 

Matt

Aktives Mitglied
Hallo,

Habe einen code, aber kann nicht ganz nachvollziehen, was genau berechnet wird, könnte mir jemand dei Formel erklären und ausschreiben?

Java:
class test
{
  public static void main(String[] args)
{
   int x = 0;
   int y = 0;
   while ( x < 5 )
{
    y=x-y;
    System.out.print(x +""+y+" ");
    x=x+1;
}
}
}

Vielen Dank
A.

Die Ausgabe:
Code:
00 11 21 32 42

x|y
0|0
1|1
2|1
3|2
4|2

In der Zeit wo x normal hochzählt braucht y doppel solange da mit jedem schritt jeder y wert doppelt vorkommt :p
 
D

Diode

Gast
War nicht so komplex, mehr üben indemfall und einwenig Algebra auffrischen.
Eigentlich lass ich 11 als elf und nicht eins eins, aber man braucht nicht viel um es herauszufinden.

Vielen Dank für die Hilfe!
D.
 
D

Diode

Gast
Schon gut, so was wie faulheit kennt jeder, aber es war ein missverständnis des javacodes, so wie der abläuft.
Algebra kenn ich schon, aber nicht gleich der Techniker Schule.
Ja stimmt theoretisch müsste man doch mal die Principia Mathematica in die Hand nehmen, um schritt für schritt lernen.

Nochmals Vielen Dank
D.
 

Neue Themen


Oben