x+x-x+x-x...

Anonym1

Mitglied
Hey, ich hätte da eine Frage nämlich bin ich mir nicht sicher wie ich ein Programm schreiben soll, das abwechselnd eine Zahl addiert und eine andere subtrahiert.
Das ganze soll in einem vorgegebenen Bereich passieren, also z.b. von 0-100.
Bisher bin ich nicht sehr weit gekommen hab eine Methode geschrieben, welche allerdings nur alle zahlen miteinander addiert, brauche nur noch etwas hilfe, wie ich es so umschreiben kann, dass es nach 1x addieren 1x subtrahiert usw.

Verwende den JavaEditor zum programmieren.

public void addiereabwechselnd (int start, int ende){
int summe = 0;
for (int i = 0;i<=ende;i++){
summe += Math.pow(i, 2);
}
jTextField1.setText (""+summe);
}
 
G

Gelöschtes Mitglied 65838

Gast
Java:
if ( i % 2 == 0) addieren
else subtrahiern

gibt bestimmt schöneres aber so gehts auch
 
G

Gelöschtes Mitglied 65838

Gast
hatte das - und + vertauscht also das funktioniert
du solltest mal das ausgeben was überhaupt ausgerechnet hast

du hattest übrigens start nicht mal eingebaut
 

Anonym1

Mitglied
hatte das - und + vertauscht also das funktioniert

du hattest übrigens start nicht mal ein
Es funktioniert nun! 😄
Vielen lieben Dank, dass sie sich die Zeit genommen haben mir zu helfen.
Bleiben sie gesund und einen schönen Abend wünsche Ich ihnen noch!
Achso allerdings eine Frage hätte ich noch, könnten sie mir vielleicht sagen, was das i%==2 macht, würde mich interessieren, da ich es so vielleicht in zukünftigen Programmen mit einbauen kann.
 
Zuletzt bearbeitet:
G

Gelöschtes Mitglied 65838

Gast
Es funktioniert nun! 😄
Vielen lieben Dank, dass sie sich die Zeit genommen haben mir zu helfen.
Bleiben sie gesund und einen schönen Abend wünsche Ich ihnen noch!
Achso allerdings eine Frage hätte ich noch, könnten sie mir vielleicht sagen, was das i%==2 macht, würde mich interessieren, da ich es so vielleicht in zukünftigen Programmen mit einbauen kann.
Modulo ist das Prozent Zeichen ...

es gibt 5 rechenarten + - / * %


modulo rechnet solange minus bis nur noch der Rest Überbleibt
dh bei 5 % 2
wird das gerechnet
5 - 2= 3
3 - 2 = 1
1 - 2 -> würde negativ werden also ist das der Rest : 1
bei 9 % 3
9 - 3 = 6
6 - 3 = 3
3 -3 = 0
0- 3-> würde negativ werden alsoder Rest ist : 0


x%2 gibt dir aus obs ne gerade oder ungerade zahl ist..das ist so ziemlich der Klassiker

ansich kann man viele tolle Sachen mit Modulo machen
 

fhoffmann

Top Contributor
Man kann "%" auch anders erkären:

In der Grundschule lernt man oft: "7 geteilt durch 2 macht 3 Rest 1". Diesen "Rest" berechnet der Modulo-Operator.

Mit n % 2 bekommt man hearaus, ob eine Zahl gerade oder ungerade ist.
 

mihe7

Top Contributor
Man kann sowas natürlich mit Restoperator und if-Abfrage lösen, das geht aber auch deutlich intuitiver:
Java:
int vorzeichen = 1;
int summe = 0;
for (int i = 0; i <= ende; i++){
    summe += vorzeichen*Math.pow(i, 2);
    vorzeichen = -vorzeichen;
}
 

fhoffmann

Top Contributor
Math.pow(...) erwartet als Parameter zwei double und gibt einen double zurück.
Deshalb führt schon folgender Code zu einem Fehler (beim Kompilieren):
Java:
int quadrat = Math.pow(3, 2);
Dagegen funktioniert problemlos
Java:
int quadrat = 3 * 3;
 
Zuletzt bearbeitet:

Neue Themen


Oben