"a","b","c",という文字列があったとして、
Random()を使用しランダムに文字列を表示し、"a","c","b","c"の並び順になったら処理を終了させる関数を作りたいのですが、どのような処理を書けば良いかわかりません。
回答の方宜しくお願いいたします。
//まだ関数に直していません。動くかチェックしてます。 import java.util.Random; class Moziretu{ public static void main(String[] args) { String[] mozi = {"a","b","c"}; Random r = new Random(); for(int i=0 ; i<1000; i++) { if(mozi[r.nextInt(3)]=="a"+"c"+"b"+"c"){ String mozis = mozi[r.nextInt(3)]; System.out.println(mozis); break; } } } }
わかりませんと丸投げされても回答しようがないです。
まずはあなたなりにコードを書いてみてそれを提示しましょう
すみません。直しましたので宜しくお願いいたします。
> Random()を使用しランダムに文字列を表示
というのは、今回の場合かならず4文字の文字列を作成するのですか?
それとも特定文字列が出るまで連結(1000文字?)して、末尾の4文字を利用する感じですか?
配列の中の文字を出力し続けて、回数は問いません(仮で1000としていました。)、出力し続け、文字が"a","c","b","c"の順番に出力され処理がストップすれば完了です。文字の連結はしません。
お手数おかけします。
”順番に出力され”が、よくわからないのですが。
仮に、”a","a","c","b"と出力されたあとに"c"と出力した場合は、末尾が"a","c","b","c"なので終了条件を満たすという理解でよい?
”a","a","c","b"と出力されたあと、前の文字関係なく、”c","c","d","c"みたいな連続した4文字を出力しますか?
という意味の質問です。
認識違いでした、すいません。
>a","a","c","b"と出力されたあとに"c"と出力した場合は、末尾が"a","c","b","c"なので終了条件を満たすという理解でよい?
↑こちらの理解でよろしいです。
回答2件
あなたの回答
tips
プレビュー