※ ChatGPTを利用し、要約された質問です(原文:javaで入力した数字の順番を記憶させたい)
javaで入力した数字の順番を記憶させたい
このQ&Aのポイント
javaで入力した数字の順番を記憶させる方法について解説します。
入力した数字を小さい順に並べるプログラムを作成する方法を紹介します。
バブルソートを用いて数字を並び替えるプログラムを説明します。
javaで、バブルソートにより、入力した数字を小さい順に並べるプログラムを作りたいです。次のようなものです。
数をいくつ入力しますか? 5
1番目の数:4
2番目の数:3
3番目の数:2
4番目の数:1
5番目の数:5
1番目の数: 1 (元4番目の数)
2番目の数: 2 (元3番目の数)
3番目の数: 3 (元2番目の数)
4番目の数: 4 (元1番目の数)
5番目の数: 5 (元5番目の数)
その際に、もともとそれが何番目に入力された数だったかということも表示させたいのですが、その方法が分かりません。
元の数字の順番を記憶させればいいのだと思うのですが、どのようにプログラムを組めばいいのでしょうか?教えてくださると嬉しいです。
ちなみに数字を小さい順に並べるプログラムは次のようになりました。
import java.util.Scanner;
public class Test {
public static void main(String args[]){
int item[]=new int [100];
int a, b, t;
int count;
Scanner sc = new Scanner(System.in);
System.out.print("数をいくつ入力しますか?");
count=sc.nextInt();
for(a=0;a<count;a++){
System.out.print(a+1+"番目の数:");
item[a]=sc.nextInt();
}
System.out.println();
for(a=1;a<count;++a)
for(b=count-1;b>=a;--b){
if(item[b-1]>item[b]){
t=item[b-1];
item[b-1]=item[b];
item[b]=t;
}
}
for(t=0;t<count;t++)
System.out.println(t+1+"番目の数:"+item[t]);
}
}