Return Befehl in Methode

inq51

Mitglied
Hi!
Ich bin ein absoluter Anfänger was Java betrifft. Ich möchte die "gesamtkosten" in meiner main-Methode benutzen aber verstehe nicht warum der Compiler die "gesamtkosten" keiner variable zuordnen kann. Ist mein return befehl falsch oder funktioniert er anders?

Java:
public class Tarife {

	public static int prepaid(int minuten, int sms){		
		int kostensms = 190;	                      // 190 Cent/SMS
		int kostentelefon = 150;                     // 150 Cent/Minute
		int gesamtkosten = minuten * kostentelefon + sms * kostensms;
		return gesamtkosten;
				                                   }
	public static void main(String[] args) {
		int minuten = 100;
		int sms = 100;
		System.out.println(gesamtkosten);
		}
}

Danke im Vorraus!
 
G

Gast2

Gast
die Variable
Code:
gesamtkosten
ist nur innerhalb der Methode
Code:
prepaid
gültig.
Du gibst den Wert der Variable aber in der Methode zurück, also kannst du folgendes in der main schreiben:

Java:
int minuten = 100;
int sms = 100;
int gesamt = prepaid(minuten, sms); // Methode aufrufen und Rückgabewert speichern
System.out.println(gesamt);
 

chalkbag

Bekanntes Mitglied
Java:
        int kostensms = 190;                          // 190 Cent/SMS
        int kostentelefon = 150;                     // 150 Cent/Minute

Wow ist das teuer bei euch :joke: (Tschuldigung :oops:)
 

inq51

Mitglied
So hab jetzt ein bisschen weitergemacht und hab wieder probleme mit den methoden:
Java:
public class Tarife {

	public static int prepaid(int minuten, int sms){		
		int anzahlsms= 100;
		int anzahlminuten = 25;
		int kostensms = 19;	 // 19 Cent/SMS
		int kostenminuten = 15; // 15 Cent/Minute
		int gesamtkosten = anzahlminuten * kostenminuten + anzahlsms * kostensms;
		return gesamtkosten;
												   }
	public static int vertrag(int minuten, int sms){		
		int anzahlsms = 100;
		int anzahlminuten= 100;
		int kostensms = 19;	 // 19 Cent/SMS
		int kostenminuten = 29; // 29 Cent/Minute
		final int  GRUNDPREIS = 1745;	// 17,45€
		final int  FREIMINUTEN = 120;	// 120 Minuten
		final int  FREISMS = 40;		// 40 SmS
		
		if (anzahlsms > FREISMS){
			int differenz = anzahlsms - FREISMS;
			int smskosten = differenz * kostensms;}
			
		
		if (anzahlminuten > FREIMINUTEN){
			int differenz = anzahlminuten - FREIMINUTEN;
			int gespraechskosten = differenz * kostenminuten;}
		
		int gesamtkosten = GRUNDPREIS + smskosten + gespraechskosten;	
		
                return gesamtkosten;
			}
		
	
	public static void main(String[] args) {
		int prepaidgesamt = prepaid(anzahlminuten, anzahlsms);
		System.out.println("Prepaid :" +prepaidgesamt);
		int vertraggesamt = vertrag(anzahlminuten, anzahlsms);
		System.out.println("Vertrag :" +vertraggesamt);
		}
}

Wie schaffe ich es die "smskosten" und die "gespraechskosten" auch auserhalb der "if-blöcke" zu benutzen? Oder muss ich die gesamtkosten in die if blöcke mit reinnehmen(wenn ja wie?)
Und in meiner main-Methode kennt er die "anzahlminuten" und die "anzahlsms" nicht. Kann ich diese aus den anderen Methoden benutzen?
 
Zuletzt bearbeitet:

vatras

Mitglied
Vll solltest du dich erstmal durch n paar Tutorials und Workshops lesen bevor du drauf los programmierst....

Zu deiner Frage:

Einfach die Variable außerhalb des Blockes definieren ;)
 

qowaz

Mitglied
Ich glaube du meinst das so:

In der main-Methode übergibts du einfach die Anzahl an Minuten und SMS an die jeweiligen Funktionen prepaid und vertrag. Du musst diese dann nicht mehr innerhalb der Methode deklarieren.

Java:
public class Tarife {
 
    public static int prepaid(int anzahlminuten, int anzahlsms){ 
        int kostensms = 19;  // 19 Cent/SMS
        int kostenminuten = 15; // 15 Cent/Minute
        int gesamtkosten = anzahlminuten * kostenminuten + anzahlsms * kostensms;
        return gesamtkosten;
                                                   }
    public static int vertrag(int anzahlminuten, int anzahlsms){ 
        int kostensms = 19;  // 19 Cent/SMS
        int kostenminuten = 29; // 29 Cent/Minute
        final int  GRUNDPREIS = 1745;   // 17,45€
        final int  FREIMINUTEN = 120;   // 120 Minuten
        final int  FREISMS = 40;        // 40 SmS
        
        if (anzahlsms > FREISMS){
            int differenz = anzahlsms - FREISMS;
            int smskosten = differenz * kostensms;}
            
        
        if (anzahlminuten > FREIMINUTEN){
            int differenz = anzahlminuten - FREIMINUTEN;
            int gespraechskosten = differenz * kostenminuten;}
        
        int gesamtkosten = GRUNDPREIS + smskosten + gespraechskosten;   
        
                return gesamtkosten;
            }
        
    
    public static void main(String[] args) {
        int prepaidgesamt = prepaid(100,25);
        System.out.println("Prepaid :" +prepaidgesamt);
        int vertraggesamt = vertrag(100,100);
        System.out.println("Vertrag :" +vertraggesamt);
        }
}
 

inq51

Mitglied
ja genau das meinte ich, danke :)

und jetzt muss ich noch die "smskosten" und die "gespraechskosten" außerhalb der "if-blöcke" definiert bekommen. könnt ihr mir das auch noch sagen oder einen tipp geben? danke :)

Java:
if (anzahlsms > FREISMS){
            int differenz = anzahlsms - FREISMS;
            int smskosten = differenz * kostensms;}
            
        
        if (anzahlminuten > FREIMINUTEN){
            int differenz = anzahlminuten - FREIMINUTEN;
            int gespraechskosten = differenz * kostenminuten;}
        
        int gesamtkosten = GRUNDPREIS + smskosten + gespraechskosten;
 
Zuletzt bearbeitet:

Landei

Top Contributor
Was ist an "Variable außerhalb des Blockes definieren" so schwer zu verstehen?
Java:
        int smskosten = 0;
        if (anzahlsms > FREISMS){
            int differenz = anzahlsms - FREISMS;
            smskosten = differenz * kostensms;}
            
        int gespraechskosten = 0;
        if (anzahlminuten > FREIMINUTEN){
            int differenz = anzahlminuten - FREIMINUTEN;
            gespraechskosten = differenz * kostenminuten;}
        
        int gesamtkosten = GRUNDPREIS + smskosten + gespraechskosten;
 
H

Heizkörper

Gast
Nur so nebenbei lieber Threadersteller: Du solltest deine Übungsaufgaben ALLEINE machen, nicht in irgendwelchen Foren posten. Ich schätze da wird die Tarife Aufgabe mit null Punkten bewertet ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Warum wird Methode nicht durch return-Befehl beendet? Java Basics - Anfänger-Themen 3
M Frage zum return; Befehl Java Basics - Anfänger-Themen 1
M Objekto.Programm. Return-Befehl Java Basics - Anfänger-Themen 4
F return Befehl in einer if-Anweisung Java Basics - Anfänger-Themen 4
MiMa Java Doc mehrere Return Parameter Java Basics - Anfänger-Themen 11
A Return in While Schleife Java Basics - Anfänger-Themen 6
J Rekursive Funktion und return statement Java Basics - Anfänger-Themen 3
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
M Warum return die Methode den Wert nicht Java Basics - Anfänger-Themen 5
S Methoden Return Rückgabewert wird nicht übergeben Java Basics - Anfänger-Themen 8
schredder Strings und reguläre Ausdrücke - Methode mit return string.matches Java Basics - Anfänger-Themen 5
I Return Array Java Basics - Anfänger-Themen 4
Q return Ausgabe Java Basics - Anfänger-Themen 4
javapingu Variablenwerte ändern ohne return Statement? Java Basics - Anfänger-Themen 7
C Ausgabe boolean return ((n==9)||(n==0)); Java Basics - Anfänger-Themen 13
G return 1 + methode Java Basics - Anfänger-Themen 4
H Methode mit Array als Rückgabe This method must return a result of Type int[] Java Basics - Anfänger-Themen 2
JD_1998 Hilfsmethode if return funktioniert nicht Java Basics - Anfänger-Themen 2
J Missing Return Statement Java Basics - Anfänger-Themen 11
T Return einer anderen Methode herausfinden Java Basics - Anfänger-Themen 9
C ArrayList mit return zurückgeben Java Basics - Anfänger-Themen 13
M kann man return in nur einer Methode einsetzen? Java Basics - Anfänger-Themen 7
V return String[] führt zu [Ljava.lang.String;@50675690 Java Basics - Anfänger-Themen 7
K Return in Schleife Java Basics - Anfänger-Themen 4
B Statische Methode return funktioniert nicht. Java Basics - Anfänger-Themen 19
S Missing return Java Basics - Anfänger-Themen 4
das_leon return message Java Basics - Anfänger-Themen 2
C return kann nicht auf variable zugreifen Java Basics - Anfänger-Themen 26
N Ausführung gibt keinen Fehler an, Return wird aber nicht ausgegeben Java Basics - Anfänger-Themen 22
R return: cannot find symbol Java Basics - Anfänger-Themen 2
R Ratespiel mit Return und einer Eingabe Java Basics - Anfänger-Themen 1
Z Return in While-Schleife Java Basics - Anfänger-Themen 7
N Frage zu this, super und return Java Basics - Anfänger-Themen 13
K ArrayList ausgeben mit return Java Basics - Anfänger-Themen 6
M Return statement Java Basics - Anfänger-Themen 4
J-Gallus Ein Getter bekommt eine anderen Type als er Return soll Java Basics - Anfänger-Themen 9
J Variablen Komsiche System.in.read() return-value? Java Basics - Anfänger-Themen 3
M Abbrechen Methode ohne return Java Basics - Anfänger-Themen 3
M Methoden Datei einlesen und als return übergeben. Java Basics - Anfänger-Themen 8
L OOP Return Java Basics - Anfänger-Themen 10
L Erste Schritte Frage zu 'return' Java Basics - Anfänger-Themen 4
J Methoden Rekursive Return Methode Java Basics - Anfänger-Themen 2
W Return statement in Methode nur bei if-clause Java Basics - Anfänger-Themen 3
D Methoden Return-Wert wird nicht ausgegeben Java Basics - Anfänger-Themen 3
F Return-Anweisung Java Basics - Anfänger-Themen 2
E Erste Schritte <? super Unterklasse> Return-Typ darf nicht vom Wildcard-Typ sein Java Basics - Anfänger-Themen 5
B OOP Methode mit Array mit return verlassen Java Basics - Anfänger-Themen 8
J Grundsätzliche Frage zu return Types in Methoden Java Basics - Anfänger-Themen 6
G return-wert für eine Methode Java Basics - Anfänger-Themen 1
B Methoden Probleme mit for Schleife und return Java Basics - Anfänger-Themen 5
Q Tastatureingabe direkt nach Eingabe (ohne zwischenzeitliches "Return" o.Ä ) weiterverwenden Java Basics - Anfänger-Themen 1
B Variablen Problem mit return String[] Java Basics - Anfänger-Themen 4
O Per return Run Methode beenden Java Basics - Anfänger-Themen 3
M Arrays als return Value? Java Basics - Anfänger-Themen 2
C Return statement Java Basics - Anfänger-Themen 10
T Boolean Missing return Statement?! Java Basics - Anfänger-Themen 2
Z Methoden return nullprüfung Java Basics - Anfänger-Themen 7
O Java return in Schleife Java Basics - Anfänger-Themen 4
K Was macht hier genau return? Java Basics - Anfänger-Themen 2
G Methoden Was bedeutet return in einer Methode Java Basics - Anfänger-Themen 5
Y Warum void statt Datentyp + return Java Basics - Anfänger-Themen 4
K Variablen RETURN in Case-Switch / This method must return a result of type Item Java Basics - Anfänger-Themen 4
K Erste Schritte "return" Problem bei Rekursion Java Basics - Anfänger-Themen 8
R If Verschachtelung und return; Java Basics - Anfänger-Themen 4
S try-catch - Variablen werden nicht an return übergeben Java Basics - Anfänger-Themen 3
C Einige Anfängerfragen (Return-Wert, Exception...) Java Basics - Anfänger-Themen 11
S Methoden Return Java Basics - Anfänger-Themen 8
T return-Wert verwenden? Java Basics - Anfänger-Themen 12
T Return eines Int-Werts? Java Basics - Anfänger-Themen 3
W return-Anweisung gibt nichts aus Java Basics - Anfänger-Themen 5
R Return in If Java Basics - Anfänger-Themen 10
S Methoden Return Anweisung beendet Methode nicht, stattdessen wird diese zweimal durchlaufen Java Basics - Anfänger-Themen 3
G array return methode Java Basics - Anfänger-Themen 10
L return wird nicht erkannt? Java Basics - Anfänger-Themen 3
J Regex mit Return Java Basics - Anfänger-Themen 3
M Variablen return-array klonen Java Basics - Anfänger-Themen 3
A Methode mit Array als Param --> return Array --> Fehler Java Basics - Anfänger-Themen 3
S Zeichen einlesen ohne Return? Java Basics - Anfänger-Themen 19
P Compiler-Fehler Boolean: Missing Return Statement Java Basics - Anfänger-Themen 4
S probleme mit der return anweisung Java Basics - Anfänger-Themen 20
V Erste Schritte Return ohne Argument Java Basics - Anfänger-Themen 6
I Methoden Missing return statement; Intervallschachtellung Java Basics - Anfänger-Themen 12
S Frage zu Vererbung und return. Java Basics - Anfänger-Themen 4
R return (mehrere floats) Java Basics - Anfänger-Themen 11
E Return String Java Basics - Anfänger-Themen 10
P Methoden Methode ohne return abbrechen? Java Basics - Anfänger-Themen 12
M Problem mit boolean. Return nicht erkannt Java Basics - Anfänger-Themen 10
P Return aus For-Schleife Java Basics - Anfänger-Themen 19
S return in GUI ? Java Basics - Anfänger-Themen 12
M This method must return a result of type int Java Basics - Anfänger-Themen 13
F Erste Schritte return (char)toUnsignedInt(value) Java Basics - Anfänger-Themen 2
A Falscher Return-Wert Java Basics - Anfänger-Themen 2
M missing return statement?! Java Basics - Anfänger-Themen 4
L Return Fragen Java Basics - Anfänger-Themen 4
R Nach return() der aufgerufenen Methode wird aufrufende Methode nicht weiter ausgeführt Java Basics - Anfänger-Themen 14
I Null als return obwohl datensatz existiert Java Basics - Anfänger-Themen 12
S this method must return a result of type double Java Basics - Anfänger-Themen 2
V Problem mit return Java Basics - Anfänger-Themen 7
K Return Problem Java Basics - Anfänger-Themen 3
M Fragen zu Methoden (void/return), Übergabe von Parametern Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben