Java Probleme Schleife??
Schreibe ein Programm das folgendes macht:
- der Benutzer wird nach einer oberen Grenze gefragt
- das Programm berechnet die Summe der Zahlen von 1 bis hin zur oberen Grenze.
D.h. wenn der Benutzer als obere Grenze 100 eingibt, berechnet das Programm die Summe von 1+2+3+4+5+6+7+8+9+...+100 = 5050. Achtung: löse dieses Problem mit einer Schleife.
3.Auf der Konsole soll der gesamte Rechenweg und das Resultat stehen.
Du hast Deine Frage vergessen.
wie soll ich dass lösen?
6 Antworten
Neuer Versuch:
package test;
import java.util.Scanner;
public class Test {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("Geben sie eine Obergrenze ein:");
int max = sc.nextInt();
int a = 1;
for(int i = 2; i <= max; i++) {
a = a + i;
System.out.println(a)
}
}
}
Ganz einfach!
int i = 0;
int grenze = 100;
for(int p = 0; p < grenze; p++) {
i+=p+1;
}
Du machst grenze+1, weil die höchste Zahl ist 100, nicht 99, da die Bedienung 100 kleiner als 100, nicht zutreffend ist, folglich ist die höchste Zahl für p die 99, da 99 kleiner als 100 die letzte zutreffende Bedienung ist.
Das was du hier machen willst, ist bescheuert.
Man kann eigentlich nichts schlimmeres machen, als 100 Additionen durchzuführen.
Da gibt etwas etwas, Namens Gaußsche Summenformel.
Bei dir:
Eine Multiplikation, eine Division und du hast dein Ergebnis.
Keine Schleife, keine Mühe, kein Nichts.
Elementare Mathematik.
Warte
Da war ein Fehler, hinten natürlich p++! nicht grenze++!!! Und in der Schleife steht i+= p+1
nicht grenze+1!!!
Hallo,
das ganze ist sehr simpel und sollte möglich sein, ohne Hilfe zu programmieren.
Ich habe dir das ganze mal in C# (da ich mittlerweile kein Java mehr programmiere) geschrieben. Es sollte absolut kein Problem darstellen, die jeweiligen Methoden in Java "umzuwandeln".
static void Main(string[] args)
{
Console.Write("Gebe die gewünschte Zahl ein: ");
int max = int.Parse(Console.ReadLine());
Console.WriteLine("");
int sum = 0;
string calc = "";
for (int i = 1; i <= max; i++)
{
sum += i;
if (i != max)
calc += i + "+";
else
calc += i + "=";
}
calc += sum;
Console.WriteLine("Gerechnet wird folgendes: ");
Console.WriteLine(calc);
Console.WriteLine("");
Console.WriteLine("Das Ergebnis ist " + sum);
Console.ReadLine();
}
So sieht das Programm dann aus...
Ich hoffe ich konnte dir helfen.
Tipp: Lerne die Sprache und befass dich damit, wenn das eine Aufgabe von der Schule o.ä. ist, dann werdet ihr das sicherlich gelernt haben. Man bekommt idR. nichts auf, wovon man null Ahnung hat.
Mit freundlichen Grüßen

Danke, ich schätze es sehr! Bin nicht mehr weiter gekommen! Nochmal Danke vielmals!! Lg
Also wenn es eine Übung ist, dann solltest du sie selber lösen. Sonst sehe ich keinen Sinn darin, die Übung überhaupt zu machen.
Das nötige Wissen sollte dir vorher übermittelt wurden sein.
Lg goldmensch
for(int i = 1; i <= 100, i++) {
System.out.println(i + (i + 1);
}
Um eine Obergrenze zu beschließen kannst du die 100 durch eine Variable ersetzten. Mit der Methode Scanner kannst du dann den Benutzer dazu auffordern eine Zahl als Grenze einzugeben.
Einfach die Scanner-Methode googlen, wenn du nicht weißt, wie du diese benutzen sollst.
(Falls das Programm doch nicht läuft, entschuldige ich mich, da ich es jetzt einfach schnell geschrieben hab.)
Danke mann