
配列の中で入れ換えをして逆順にする方法
大学の課題で出たもので、10個以下の数を読み込んで逆順に書くプログラムなんですけど
別の配列を宣言せずに配列の中身を入れ替えて逆順にする方法を教えてください
ここに処理を入力 のところの配列の中身を逆転するプログラムはどうしたらいいんでしょうか?
class Reverse {
public static void main(String [] args){
int data[] = new int[10];
int i,x,kosuu;
i=0;
x=IO.in.readInt();
while(x >= 0){
if(i>=10) System.out.println("10個を越えたので無視する。");
else { data[i]=x; i++; }
System.out.print("> ");
x=IO.in.readInt();
}
kosuu=i;
ここに処理を入力
System.out.println("数列を逆順に書くと以下の通り。");
for(i=0;i<kosuu;i++){System.out.println(data[i]);}
}
}
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
入力された kosuu=10 の場合
tmp に data[0] の内容を入れて、
data[0] に data[9] の内容を入れて、
data[9] に tmp の内容を入れる。
で、data[0] と data[9] の中身が入れ替わる
kosuu = 10 の時
データは、 data[0] から data[9] 迄ある訳だから
入替は、↓になる
tmp = data[0]; data[0] = data[9]; data[9] = tmp;
tmp = data[1]; data[1] = data[8]; data[8] = tmp;
tmp = data[2]; data[2] = data[7]; data[7] = tmp;
tmp = data[3]; data[3] = data[6]; data[6] = tmp;
tmp = data[4]; data[4] = data[5]; data[5] = tmp;
kosuu = 9 の時
データは、 data[0] から data[8] 迄ある訳だから
入替は、↓になる
tmp = data[0]; data[0] = data[8]; data[8] = tmp;
tmp = data[1]; data[1] = data[7]; data[7] = tmp;
tmp = data[2]; data[2] = data[6]; data[6] = tmp;
tmp = data[3]; data[3] = data[5]; data[5] = tmp;
tmp = data[4]; data[4] = data[4]; data[4] = tmp;
最後の data[4] と data[4] の入替は意味が無い
つまり、0→1→2 となる変数と
つまり、9→8→7 となる変数があるとして
数値の大きさが、逆転する(又は=になる)迄
繰り返せば良い事がわかる
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
この警告はどうすれば?
-
java 乱数を並べて重複させない...
-
配列の中に複数存在する数がい...
-
セッションを使ったint型の値の...
-
エラーのStackTraceをString変...
-
JComboBoxの配列の作り方について
-
負の整数になるまで入力→その平...
-
[Ljava.lang.Stringってなんですか
-
配列で、値の入っている要素数...
-
配列をセッションに割り当てた後で
-
C++で、Excelの内容を取得する...
-
C#で動的配列Listの中身をListB...
-
多次元配列のソートがうまくい...
-
【C#】ハッシュテーブル(連想...
-
配列について
-
JavaのCalendarのMONTHはなぜ0...
-
sqlparamaterでIN句を使いたい。
-
同じ配列またはクラスを、2回...
-
n番目に大きな値を探索する
-
int配列をbyte配列に変換
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[Ljava.lang.Stringってなんですか
-
Javaで文字と数字が混ざったも...
-
配列について
-
C#で動的配列Listの中身をListB...
-
ArrayListからBean配列に値をセ...
-
この警告はどうすれば?
-
配列で、値の入っている要素数...
-
配列をセッションに割り当てた後で
-
同じ配列またはクラスを、2回...
-
配列の中に複数存在する数がい...
-
ページング
-
JavaBeansの配列の値取得方法に...
-
配列数を超えてアクセスしたと...
-
n番目に大きな値を探索する
-
C言語でunsigned char配列を連...
-
java
-
セッションを使ったint型の値の...
-
【C#】ハッシュテーブル(連想...
-
for文とStringBuffer
-
【Ajax通信&Java】配列の受け取...
おすすめ情報