[C#] Anfänger: Eigene Funktion mit int


#1
Hallo,
Also, ich habe ein Problem mit meiner Funktion, ich habe sie erstellt, passt alles. Aber wenn ich sie dann in der Main-Methode aufrufen will muss ich mein int einem Wert zuweisen, aber der wird in der Funktion eigentlich aufgerufen.
MAIN:
Code:
static void Main(string[] args)
        {
            int zahl;

            do
            {
                setNumber(zahl);
                rechner(zahl);
.               
.           
.
.
.
FUNKTION:
Code:
public static int setNumber(int zahl)
        {
        zahl = Convert.ToInt32(Console.ReadLine());
        
        return zahl;
        }

Danke schon Mal für eure Hilfe

LG
Gandohart
 

zerix

Hausmeister
Moderator
#2
Hi,

ich verstehe deine Methode nicht. Sie heißt setNumber, nutzt die Zahl die übergeben wird gar nicht und gibt stattdessen eine Zahl zurück, die zuvor eingelesen wurde. Warum übergibst du eine Zahl, wenn diese gar nicht verwendet wird?
Wo musstest du eine Variable anlegen?

Viele Grüße
Sascha
 
#3
Ich will hier die Zahl nur überprüfen ob sie auch wirklich ein int ist, habe den try-catch Block nicht mitgeschickt^^
Das ist nur die Überprüfung, in einer anderen Methode verwende ich dann die Zahl zum rechnen

Ich würde das alles ja gerne in einer Methode machen, aber die Aufgabe lautet eine eigene Methode für die Überprüfung der Zahl zu machen..

LG
 
Zuletzt bearbeitet:

zerix

Hausmeister
Moderator
#4
Aber wenn ich sie dann in der Main-Methode aufrufen will muss ich mein int einem Wert zuweisen, aber der wird in der Funktion eigentlich aufgerufen.
Diese Aussage verstehe nicht. Zumindest nicht wie dein Code aussieht.

Deine setNumber-Funktion tut auch nicht das, was der Name aussagt. Das Argument ist auch unnötig, da es nicht genutzt wird.

Viele Grüße
Sascha
 

Spyke

Capoeirista
Premium-User
#5
du hast zwar mit
Code:
int zahl;
theoretisch gesagt das du eine Variable Namens zahl benötigst/gerne hättest.
Du musst für diesen aber noch speicher reservieren.
Code:
int zahl=0;
 

zerix

Hausmeister
Moderator
#6
du hast zwar mit
Code:
int zahl;
theoretisch gesagt das du eine Variable Namens zahl benötigst/gerne hättest.
Du musst für diesen aber noch speicher reservieren.
Code:
int zahl=0;
Das ist nicht richtig, denn mit
Code:
int zahl;
wird der Speicher reserviert, dieser ist nur nicht initialisiert und da beschwert sich normal der Compiler.
Das bringt aber weiterhin nichts, da das Programm so nicht funktionieren wird. ;)
Nun fällt mir aber auf, dass ich den Satz
Aber wenn ich sie dann in der Main-Methode aufrufen will muss ich mein int einem Wert zuweisen, aber der wird in der Funktion eigentlich aufgerufen.
durch deinen Tippfehler falsch verstanden hatte. :D

Viele Grüße
Sascha
 

Neue Beiträge