2011-08-03 12 views
2

私はJavaのノブです&私は問題に立ち往生しています。 getMax、入力として2つの整数の変数をとり返す> 2の大きな1:getMaxより大きい数値を取得するメソッド

だから割り当てが必要な一つの方法があり、この

のようなものです。あなたの主な方法は、コメントを除いて(次のようになります

main(String[] args) 
{ 
    int num1, num2; 
    num1 = Integer.parseInt(args[0]); 
    num2 = Integer.parseInt(args[1]); 
    System.out.println(“the bigger value of the two is : “ + getMax(num1, num2)); 
} 

あなたのプログラムは次のように動作する可能性があります。2のより大きな値は67

である23 67

Assign5

のjava

私が書いた小さなプログラムはここにあります。

import java.util.Scanner; 

//use getMax to takes two numbers and returns bigger of the two 

public class assignment5 { 
     private static void getMax(int a, int b){ 
      Scanner kevin = new Scanner(System.in); 

     System.out.println("Enter First Number:"); 
     a = kevin.nextInt(); 
     System.out.println("Enter Second Number:"); 
     b = kevin.nextInt(); 

    getMax(a, b); if (a > b) { 
     System.out.println(a + " is bigger"); } 
    else { 
     System.out.println(b + " is bigger"); 
     } 

    } 

    } 

ですが、これは実際の割り当てとは多少異なります。私はちょっと馬鹿だと感じる。誰かがこれで私を助けることができますか?

答えて

2
public static int getMax(int a, int b) { 
    return (a>b?a:b); 
} 

数値が等しい場合はどうなりますか?

+4

あなたはそのような答えを出すべきではない、彼は彼の宿題で助けを求めました。我々は彼が答えを出さないことを学ぶのを助けることによって彼を助けなければならない。 –

+1

申し訳ありませんが、これについて完全に正しいですが、私はその男がスキャナーについて学ぶために多くのことをしたと思って、間違った木を吠えていました。 –

5

あなたは間違った方向に行きました。

この部分が与えられていたのに対し、2つのintの読み取りのメカニズムを変更しようとしました。

エクササイズソースを見ると、コードでは「getMax(num1、num2)」が呼び出されていますが、これは実装されていません。だから、あなたはこのシグネチャを持つメソッドを実装する必要があります。

public int getMax(int num1, int num2) { 
    // your code here 
} 
0
  • 必要に応じてそれを実行することができるようにあなたのassignment5クラスのごmainメソッドを含めることが唯一のaかを返すように、あなたのgetMaxを作りますb(大きいもの)は、メインメソッドから入力します。
0

よくあることはたくさんあります。あなたのメインメソッドを宣言する必要が

public static int getMax(a, b){ 
    if (a > b) { 
     return a; 
    } 
    return b; 
} 

次のこと:まず、あなたのgetMax方法はよく(あなたの主な方法は、あなたが数を返す必要があります書かれており、単なる文字列を印刷されていない方法)書かれていません

public static void main(String[] args){ 
    int num1, num2; 
    num1 = Integer.parseInt(args[0]); 
    num2 = Integer.parseInt(args[1]); 
    System.out.println(“the bigger value of the two is : “ + getMax(num1, num2)); 
} 

args[0]args[1]は、あなたがあなたのプログラムを起動し、ユーザーがそれらを入力するのを待つないときの番号を与えなければならないことを意味します。あなたは、コマンドラインから例えば、あなたのプログラムを起動しますと、それは次のようになります。

java -jar programname 23 54 

か、で

+0

また、main() –

+0

から静的でないgetMax()メソッドを呼び出すことはできません。 – talnicolas

2

ルックを日食使用する場合は、実行引数にあなたの番号を指定することができますがあなたが与えられた例。入力を読み取るコードは既にmain(String[] args)メソッドにあります。あなたのインストラクターは、あなたにソリューションのこの部分を与えるほど親切であったので、それを使用してください。プログラマーは常にホイールの再発明を避ける方法を模索しています。他の人の作業コードをコピーすることはそれを行うための良い方法です。

System.out.println("the bigger value of the two is : " + getMax(num1, num2)); 

このコードは、メソッド、getMax(num1, num2)を呼んでいる:

は今、実際の作業が行われている、あなたの講師のコードの行を見てください。

あなたのインストラクターはあなた自身の方法を書く方法を教えていたはずです。ここでそれをする必要があります。メソッドが返す型の値について考えてみましょう。 num1num2の2つのパラメータのどちらが大きいかを判断するために、内部で行う必要があることを考えてください。

あなたのAssignment5クラスに正しい方法で入力してテストします。常にコードをテストしてください。テストされていないコードは失敗し、下のマークが付きます。

あなたはそれをテストして、それが正常に動作している場合は、あなたがそれを手にすることができますに。

関連する問題