
”入力した値”番目の配列を削除するというプログラムを作成する課題で
static int[] remove_array(int[] x){
//何番目の値を消したいか聞く
Scanner stdIn = new Scanner(System.in);
System.out.println("何番目のデータを削除しますか?");
int y = stdIn.nextInt();
//消したい値が存在するか確認する
if(y<0||x.length<y) System.out.println("入力エラーです");
//消したい要素のみを取り除いて配列zに挿入する
int[]z=new int[x.length-1];
for(int i=0,j=0;i<x.length;i++){
if(i!=y) {
z[j]=x[i]; j++; //jは値を挿入した時にしか進まない
}
}
return z; //main関数に値を返却
}
public static void main(String[] args){
//配列aを作って表示する
int[]a=new int[]{37,19,87,-69,7,24,-56,0,-41,90};
for(int i=0;i<a.length;i++){
System.out.print(""+a[i]+"\t");
}
System.out.println(); //いったん改行しとく
//remove_arrayに配列aを値を送って,返り血を配列cに入れる
int[]c;
c=remove_array(a);
//remove_arrayの返り血を表示
for(int i=0;i<c.length;i++){
System.out.print(""+c[i]+"\t");
}
System.out.println(); //いったん改行しとく
}
}
以上のようにプログラムを考えたのですが,9行目で入力エラーが出た時点でプログラムを終了させる方法が思いつかず困っています.
わかる方,教えていただけると嬉しいです.
No.1ベストアンサー
- 回答日時:
if(y<0||x.length<y) {
System.out.println("入力エラーです");
System.exit(1);
}
No.2
- 回答日時:
案1. 例外を投げる
if (条件) throw new Excetion("原因");
...
try{ c = 呼び出し(a); 処理(c); }
catch(Excetion e){ 報告(e.messge); }
案2. 無効値を返す
if (条件) { 報告("原因"); return null; }
...
c = 呼び出し(a);
if (c == null) return;
余談ではありますが、
返り血を扱うのは問題なのでIME履歴は健全に保ちましょう
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- Java Java 配列<選挙> 4 2023/07/31 15:07
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jspでの二次元配列
-
【C#】ハッシュテーブル(連想...
-
同じ文字を探しカウントしたい
-
ArrayListからBean配列に値をセ...
-
forループの評価(条件)式につ...
-
csvファイルを2次元配列に格納
-
CSVファイルの、列だけ取得したい
-
[Ljava.lang.Stringってなんですか
-
cloneメソッドについて (java)
-
strutsで2次元配列をやりとりす...
-
Javaで文字と数字が混ざったも...
-
C#で動的配列Listの中身をListB...
-
javamailで複数人にメールを送...
-
配列の中に複数存在する数がい...
-
配列で、値の入っている要素数...
-
strutsでの配列の扱い方について。
-
Cryptix 3.2.0
-
この警告はどうすれば?
-
CSVファイルを多次元配列に格納...
-
配列のサイズをrealloc的に変更...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Javaで文字と数字が混ざったも...
-
C#で動的配列Listの中身をListB...
-
この警告はどうすれば?
-
[Ljava.lang.Stringってなんですか
-
javaで大容量テキストファイル...
-
ArrayListからBean配列に値をセ...
-
C言語でunsigned char配列を連...
-
main(String[] args) の args...
-
配列の中に複数存在する数がい...
-
javamailで複数人にメールを送...
-
【C#】ハッシュテーブル(連想...
-
同じ配列またはクラスを、2回...
-
Javaで文字を漢字であるか否か...
-
hit&blow
-
セッションを使ったint型の値の...
-
sqlparamaterでIN句を使いたい。
-
n番目に大きな値を探索する
-
配列で、値の入っている要素数...
-
データベースから取得したデー...
-
JavaのBase64デコードで正しく...
おすすめ情報