私は現在プログラムに取り組んでいますが、本来の動作をさせることができません。スキャナーを使用して 3 つの整数を入力し、数値を昇順に出力する必要があります。私は技術的にこれを機能させましたが、従わなければならない構造には従いませんでした。メイン メソッドには、宣言と入力があります。次に、並べ替えを行う 2 番目の方法を使用する必要があります。この新しいメソッド内に並べ替えを入れると、実際には数字をまったく並べ替えることができません。コンパイルして実行し、数値を入力するとプログラムが終了します。2 番目の方法がなければ、ほとんどの場合、正しく実行されます。2番目の方法の外で実行したときに、数字を並べ替えるのが論理的だと思った方法でいくつかのエラーもありました。
とにかく、これは私が思いついたコードです。
import java.util.Scanner;
public class Ch5PA1
{
public static void main(String[] args) {
// Declarations
Scanner input = new Scanner(System.in);
System.out.print("Enter three values: ");
int num1 = input.nextInt();
int num2 = input.nextInt();
int num3 = input.nextInt();
}
/** Sort Numbers */
public static void displaySortedNumbers(double num1, double num2, double num3){
if ((num1 < num2) && (num2 < num3)){
System.out.println("The sorted numbers are " + num1 + " " + num2 + " " + num3);
}
if ((num1 < num2) && (num2 > num3)){
System.out.println("The sorted numbers are " + num1 + " " + num3 + " " + num2);
}
if ((num1 > num2) && (num2 > num3)){
System.out.println("The sorted numbers are " + num3 + " " + num2 + " " + num1);
}
if ((num1 > num2) && (num2 < num3)){
System.out.println("The sorted numbers are " + num2 + " " + num1 + " " + num3);
}
}
}
もう1つ、周りを見回すと、これで私が抱えているのと同じ(または同様の)問題について人々が尋ねた質問がいくつか見られましたが、回答は配列の使用を主張しています。これには配列をまったく使用できません。
ありがとうございます。