0 Daumen
711 Aufrufe

Guten Tag,

ich bin neu am studieren Richtung Informatik und würde mich freuen, wenn mir jemand mir helfen könnte bei einer Aufgabe.

Die Aufgabe sieht wie folgt aus:

Schreiben Sie eine Klasse Mathe mit folgenden Methoden:

a)   ausgabeVielfach hat zwei positive (wovon Sie ausgehen können) ganzzahlige Parameter a und n. Die Methode gibt auf dem Bildschirm die ersten n Vielfachen von a aus, also die Zahlen von a * 1 bis a * n. Nach jeder dieser Zahlen wird ein Leerzeichen ausgegeben. Schließlich wird ein Zeilenumbruch ausgegeben. Die Methode gibt kein Ergebnis zurück.

Beispiel: Hat a den Wert 3 und n den Wert 5 produziert die Methode auf dem Bildschirm die folgende Ausgabe(gefolgt von einem Zeilenumbruch).

3 6 9 12 15

b)   ausgabe1x1 hat einen positiven (wovon Sie ausgehen können) ganzzahligen Parameter n. Die Methode gibt auf dem Bildschirm zeilenweise das ,,Einmaleins bis n" aus, also alle Produkte a * b von Zahlen 1<= a,b <= n. In der ersten Zeile stehen die Vielfachen von 1, in der zweiten die Vielfachen von 2, und so weiter bis zur letzten Zeile, in der die Vielfachen von n stehen. Auf jede der Zahlen folgt ein Leerzeichen. Die Methode gibt kein Ergebnis zurück.

Beispiel: Hat n den Wert 5, produziert die Methoden auf dem Bildschirm die folgende Ausgabe( gefolgt von einem Zeilenumbruch).

1 2 3 4 5

2 4 6 8 10

3 6 9 12 15

4 8 12 16 20

5 10 15 20 25

Ich danke euch im Voraus, bitte hilft mir :(


Code:

von

1 Antwort

0 Daumen

Für beide Aufgaben benötigst du Schleifen, am besten schaust du dir nochmal an wie Schleifen in Java funktionieren.
Hier habe ich die for-Schleife verwendet:

public class Mathe {

public void ausgabeVielfach(int a, int n) {
for (int i = 1; i <= n; i++) { // läuft von i = 1 bis n
System.out.print(a * i + " "); // Berechnung der Vielfachen
}
System.out.println(); // Zeilenumbruch
}

public void ausgabe1x1(int n) {
for (int a = 1; a <= n; a++) { // läuft von a = 1 bis n (also für die Werte 1 - n, von denen die Vielfachen berechnet werden sollen)
for (int i = 1; i <= n; i++) { // läuft von i = 1 bis n (siehe a)
System.out.print(a * i + " "); // Berechnung der Vielfachen (siehe a)
}
System.out.println(); // Zeilenumbruch
}
}
}

Aufrufen kannst du das ganze (in der main-Methode) mit:

 Mathe mathe = new Mathe();
mathe.ausgabeVielfach(3, 5);
System.out.println();
mathe.ausgabe1x1(5);
von

Bei mir zeigt der Fehlanzeige wenn.....

Wann zeigt ihr bei der eine Fehlermeldung, bzw. wie lautet sie genau?

1 Java user-submitted files found for compilation: Mathe.java
Java compiler output:
TestSuite.java:26: error: cannot find symbol
Mathe.ausgabeVielfache(3,5);
    ^
symbol: method ausgabeVielfache(int,int)
location: class Mathe
TestSuite.java:33: error: cannot find symbol
Mathe.ausgabeVielfache(7,1);
    ^
symbol: method ausgabeVielfache(int,int)
location: class Mathe
TestSuite.java:40: error: cannot find symbol
Mathe.ausgabeVielfache(10,3);
    ^
symbol: method ausgabeVielfache(int,int)
location: class Mathe
TestSuite.java:47: error: non-static method ausgabe1x1(int) cannot be referenced from a static context
Mathe.ausgabe1x1(5);
    ^
TestSuite.java:54: error: non-static method ausgabe1x1(int) cannot be referenced from a static context
Mathe.ausgabe1x1(1);
    ^
TestSuite.java:61: error: non-static method ausgabe1x1(int) cannot be referenced from a static context
Mathe.ausgabe1x1(3);
    ^
6 errors


public class Mathe {
public static String ausgabeVielfach(int a, int n) {
for (int i = 1; i <=  n; i++) {
System.out.println(a * i + " ");
}
return " ";
}
public static String ausgabe1x1(int n) {
for (int a = 1; a <= n; a++) {
for (int i = 1; i <= n; i++) {
System.out.println(a * i + " ");
}
return " ";
}
return " bitteschön!";
}
} habe das auf so geändert dann kommt aber als Fehlermeldung das hier raus!
symbol: method ausgabeVielfache(int,int)
location: class Mathe
TestSuite.java:33: error: cannot find symbol
Mathe.ausgabeVielfache(7,1);
    ^
symbol: method ausgabeVielfache(int,int)
location: class Mathe
TestSuite.java:40: error: cannot find symbol
Mathe.ausgabeVielfache(10,3);
    ^
symbol: method ausgabeVielfache(int,int)
location: class Mathe
3 errors
1
Files

Vermutlich liegt die Mathe Klasse nicht im gleichen Package wie die Klasse, die die Main Methode enthält. Du musst die Mathe Klasse also importieren. Alternativ könntest du die main Methode auch in die Mathe Klasse schreiben, dann musst du nichts importieren.

  ^
symbol: method ausgabeVielfache(int,int)
location: class Mathe
TestSuite.java:33: error: cannot find symbol
Mathe.ausgabeVielfache(7,1);
    ^
symbol: method ausgabeVielfache(int,int)
location: class Mathe
TestSuite.java:40: error: cannot find symbol
Mathe.ausgabeVielfache(10,3);
    ^
symbol: method ausgabeVielfache(int,int)
location: class Mathe
3 errors
1
Files

ich verstehe halt nicht was ich da machen muss bin halt neu im Studium...

Was müsste ich ändern bzw in die Klasse hinzufügen

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community