Hilfe hausaufgabe

özkan

Mitglied
sorry brauche hilfe was ist der Fehler der mir hier angezeigt wird

Das hier ist der Code:
Java:
import java.util.Scanner;
public class Harmon {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.print("Bitte geben Sie eine Zahl ein: ");
        double zahl = scan.nextDouble();
        System.out.print("Anzahl Iterationen: ");
        double iteration = scan.nextDouble();
        double zwischenzahl = zahl;
       
        for(int n=1; n<iteration+1; n++)
        {
            double Ergebnis = (zwischenzahl + zahl/zwischenzahl)/2;
            Ergebnis = (double)Math.round(Ergebnis*100000)/100000;
           
           
            String text = Double.toString(Ergebnis);
           
           
            text = text.replace(".", ",");
           
            int counter=0;
           
            while(text.charAt(counter)!=',')
            {
                counter++;
            }
           
            for(int u=0;u<3+counter;u++)
               
            {
                 text = text+"0";
            }
           
            System.out.print(n+". ");
           
        for(int o=0;o<6+counter;o++)
        {
            System.out.print(text.charAt(o));
        }
       
        System.out.println();
       
            zwischenzahl = Ergebnis;
        }
        scan.close();
   
   
   
    }
}
 

Anhänge

  • 2021-11-14.png
    2021-11-14.png
    852,3 KB · Aufrufe: 3
  • 2021-11-14 (1).png
    2021-11-14 (1).png
    876,9 KB · Aufrufe: 8
Zuletzt bearbeitet von einem Moderator:

özkan

Mitglied
sorry brauche hilfe was ist der Fehler der mir hier angezeigt wird

Das hier ist der Code:
import java.util.Scanner;
public class Harmon {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("Bitte geben Sie eine Zahl ein: ");
double zahl = scan.nextDouble();
System.out.print("Anzahl Iterationen: ");
double iteration = scan.nextDouble();
double zwischenzahl = zahl;

for(int n=1; n<iteration+1; n++)
{
double Ergebnis = (zwischenzahl + zahl/zwischenzahl)/2;
Ergebnis = (double)Math.round(Ergebnis*100000)/100000;


String text = Double.toString(Ergebnis);


text = text.replace(".", ",");

int counter=0;

while(text.charAt(counter)!=',')
{
counter++;
}

for(int u=0;u<3+counter;u++)

{
text = text+"0";
}

System.out.print(n+". ");

for(int o=0;o<6+counter;o++)
{
System.out.print(text.charAt(o));
}

System.out.println();

zwischenzahl = Ergebnis;
}
scan.close();



}
}

Wie lautet die genaue Aufgabenstellung?
 

Anhänge

  • 2021-11-14 (5).png
    2021-11-14 (5).png
    844,8 KB · Aufrufe: 2
K

kneitzel

Gast
Bei sowas immer in die Dokumentation schauen. Da findet man dann auch eine Erklärung, wann die Exception geworfen wird.

Die NoSuchElement Exception wird geworfen, wenn es keine Eingaben mehr gibt, die ausgewertet werden können.

Und der Code passt nicht mit der Aufgabe überein. Laut Aufgabe soll eine Zahl eingegeben werden. Du versuchst zwei Zahlen einzulesen!
 

Neue Themen


Oben