2017-05-28 4 views
-2

クラスでは、C#でモジュール式プログラムを開発する方法を学習しています。モジュール式C#エラー

// public static int promptForInput(文字列プロンプト)を実行する必要があります。ユーザー入力を促し、「プロンプト」を表示します。ユーザーからの応答は、呼び出し側プログラムに返されます。

私は次のコードを持っている:

using System; 
class RockPaperScissors 
{ 
    public static void Main(string[] args) 
    { 

    } 
    //public static int promptForInput(string prompt) 
    //Prompts for user input, displaying "<prompt>". User response will be passed back to calling program 
    public static int promptForInput(string prompt) 
    { 

    } 
} 

問題が、でもそれは私のVSに次のエラーを与えているされています

エラー1 'RockPaperScissors.promptForInput(文字列)' :すべてのコードパスではありません C:¥Users¥Maria¥Documents¥C#Files¥Mod 5 \ ConsoleApplication4 \ ConsoleApplication4 \ Program.cs 10 23 ConsoleApplication4

プロンプトメソッドに値を入力し、その値をMainメソッドに表示させるにはどうすればよいですか?どんな助けも高く評価されます。

+1

は、 'promptForInput'関数で値を返します。 – OmG

+0

ユーザー入力を取得する方法を理解するには、[Console.ReadLine](https://msdn.microsoft.com/en-us/library/system.console.readline(v = vs.110).aspx)を参照してください。次に、Main内からPromptForInput関数を呼び出す方法についても学習する必要があります。コンパイラエラーは、あなたがPromptForInputから値を返さなかったためです。 – Gururaj

+0

Console.Read();メインメソッドのpromptForInputとpromptForInput()には、何も転送されません。私は働くために以下を得ることができます: using System; クラスRockPaperScissors { public static void Main(string [] args) { Method2(); } public static void Method2() { Console.WriteLine( "test"); Console.Read(); } } ですが、何らかの理由でオリジナルは表示されません。 – DMellon

答えて

0

このエラーは、正確には - promptForInputとは何も返されません。メソッドシグネチャは、intを投げてしまい、そうしないとコンパイラに「約束します」。

public static int promptForInput(string prompt) 
{ 
    int ret = int.Parse(Console.Read()); 
    return ret; 
} 

免責事項:あなたが何かを返したい場合は

、あなたのような何かを行う必要があり、私はIDEの前に座っていませんよ。また、ユーザーが数字以外の何かを入力すると、例外がスローされます。

+0

助けてくれてありがとうございました。コードを変更しましたが、「引数1: 'int'から 'string'に変換できません」というエラーが表示されます。再び、このすべてと教師のための新しいことは恐ろしいので、コードをコピーするだけで何が起こっているのかを本当に理解しようとしています。これは "文字列プロンプト"を期待しているためですか?忍耐力に感謝します。 – DMellon

関連する問題