-3

実行すると、次のようになります。

Enter 2 Integers, Do note that you will Get a Quotient and a Remainder.
Enter the First Number: 3
Now enter the Second Number: 9
Your Quotient is: 0
Your Remainder is: 3

そのはず:

Enter 2 Integers, Do note that you will Get a Quotient and a Remainder.
Enter the First Number: 3
Now enter the Second Number: 9
Your Quotient is: 3
Your Remainder is: 0

コード:

import java.util.Scanner;
public class Remainder {
    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        int a = 0, b = 0, quotient, remainder;
        int smallerNumber = 0;
        int biggerNumber = 0;

        System.out.println("Enter 2 Integers, Do note that you will Get a Quotient and a Remainder.");
        System.out.print("Enter the First Number: ");
        a = reader.nextInt();
        System.out.print("Now enter the Second Number: ");
        b = reader.nextInt();

        remainder = (a % b);

        quotient = (a / b);
        remainder = (a % b);

        if(a > b){
            biggerNumber = a;
            a = b;
        }else{
            smallerNumber = a;
            biggerNumber = b;
        }
        System.out.print("Your Quotient is: ");
        System.out.println(quotient);
        if (remainder > 0){
            System.out.print("Your Remainder is: ");
            System.out.println(remainder);
        }
    }
}
4

2 に答える 2

3

番号を間違った順序で入力しています。あなたはやっていますa / b、そして3 / 9整数の数学ではゼロです。最初に 9 を入力し、次に 3 を入力すると、うまくいきます。

また、剰余と商を計算した後、大きい数値と小さい数値を探していることに注意してください (前者を 2 回計算します)。コードの順序を入れ替えて、より良い結果を得るために分割bigger/smallerします...

  System.out.println("Enter 2 Integers, Do note that you will Get a Quotient and a Remainder.");
  System.out.print("Enter the First Number: ");
  a = reader.nextInt();
  System.out.print("Now enter the Second Number: ");
  b = reader.nextInt();

  if(a > b){
      biggerNumber = a;
      smallerNumber = b;
  } 
  else {
      smallerNumber = a;
      biggerNumber = b;
  }
  remainder = biggerNumber % smallerNumber;
  quotient = biggerNumber / smallerNumber;
于 2013-11-07T02:10:28.847 に答える
0

a と b が逆になっています。その代わり、

quotient = b / a;
remainder = b % a; 

また、a と b はおそらく first と second に名前を変更する必要があります...

于 2013-11-07T02:10:12.093 に答える