Was mache ich hier falsch? Ich möchte das ganze kleine 1x1 ausgeben.?
4 Antworten
Die Methode musst du schon mit einer Ganzzahl aufrufen, nicht einfach mit einem Buchstaben.
Außerdem initialisierst du z gar nicht.
Lad bitte den Code der Funktion mal hoch, mit dem Bild ist es schwierig zu erklären.
public void act()
{
reihe1c(0);
}
public void reihe1c (int r){
for (int z=1; z<=10; z++){
for (int i=r; i<=r*10; i=i+r){
System.out.print(i+" ");
}}}
Meinst du vielleicht sowas?
public void reihe1c() {
for (int i = 1; i <= 10; i++) {
for (int j = 1; j <= 10; j++) {
System.out.print(i*j + "\t");
}
System.out.println();
}
}
Dies funktioniert leider nicht, es zeigt keinen Fehler an, jedoch wird auch nichts ausgegeben.
Komisch, bei mir funktioniert es einwandfrei.
Probier mal \t durch ein Leerzeichen zu ersetzen.
Möchtest du die Multiplikationsreihe von r ausgeben (dann reicht die innere Schleife)
oder möchtest du das GESAMTE 1x1 ausgeben? Dann braucht deine "reihe1c" kein Argument. Du musst dann in der äußeren Schleife r anstatt z verwenden.
Ich möchte das gesamte 1x1 ausgeben. Soll ich also alle z zu r tauschen? Und ist mit dem Argument (int r) gemeint?
- Formatier bitte den Kram mit Strg+Alt+F
- Du übergibst einen char bei reihelc(r); erwartet wird ein int.
- Du musst z initialisieren in deiner for-Schleife.
Außerdem ist deine "act()"-Methode nicht sinnig. Du erstellt eine Methode die eine Methode aufruft. Wieso?
Erstelle mal lieber einen constructor:
public Actor(int i){
this.reihenlc(i);
}
Übergib mal die Zahl 0 statt r, also this.reihelc(0);
Außerdem mag ich auch nicht, wie du das ganze umgesetzt hast (eigentlich wäre es sinniger eine Zahl zu übergeben, die beschreibt, welche Zahlen ausgegeben werden müssen).
Und schreib mal dein Programm in Englisch. Das mit dem halb-deutschen ist auch nicht so schön.
Viel Glück!
- Das Formatieren übernimmt das Programm selbst, ich kann leider nichts machen
- Wie meinst du das mit char, also ich muss dies mit dem Parameter r machen.
- Ja, stimmt ich muss es Initialisieren, wo genau muss ich das tun?
Wir lernen dies gerade in der Schule (Online - wegen dem Coronavirus), von einem constructor habe ich noch nie etwas gehört.
Wenn ich reihe(0); mache erhalte ich unendlich viele 0
Vielen Dank:)
Im aufruf der Methode reihe1c musst du eine Ganzzahl mitgeben.
public void act() {
reihe1c(0);
}
Das habe ich gemacht, es ergibt auch Sinn, jedoch bekomme ich jetzt unendlich viele 0
Wie meinen Sie das ich das mit einer Ganzzahl aufrufen muss? Und wo genau muss ich z Initialisieren?