質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
while

Whileは多くの言語で使われるコントロール構造であり、特定の条件が満たされる限り一連の命令を繰り返し実行します。

Q&A

解決済

3回答

1409閲覧

パスワード生成に関して

M_L_R_DsoM_1989

総合スコア4

while

Whileは多くの言語で使われるコントロール構造であり、特定の条件が満たされる限り一連の命令を繰り返し実行します。

0グッド

1クリップ

投稿2020/03/31 12:34

javaに関する問題です。
while文に関わる問題で、パスワードを生成したいのですが上手くできません。
手順としては

  1. パスワード文字列 "ABCDEFGH" を宣言する。

この文字列を加工して、パスワードを生成する。
2. 以下のコードを実行すると、変数rndに、0~9までのランダムな数値(乱数)がセットされる。
int rnd = (int) (Math.random() *10); 2.1. 変数rndが、9の場合、下記3.の処理に進む。(break文を使用して、3.の処理に行くこと。)
2.2.変数rndが、8の場合、上記2.に戻り、再度、乱数を取得して、2.1.から処理を行う。(continue文を使用して戻ること。) 2.3. パスワードから、変数rnd番目の文字を取得して、String変数targetにセットする。 2.4. 変数targetを小文字に変換して、変数lowerStringにセットする。 2.5. パスワード内の、変数targetと一致する文字を、変数lowerStringの値に置換する。 2.6. 上記2.に戻り、再度、乱数を取得して、2.1.から処理を行う。
3. パスワードが、文字列"AbCdEfGh"と完全に一致する場合、パスワードを、"pass"という文字列にする。
4. パスワードの一部に、文字列"def"が含まれる場合、パスワードを、"define"という文字列にする。
5. パスワードの値を出力する。
6. パスワードの文字列の長さを出力する。

といった感じです。できればソースコードもお願いいたします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2020/03/31 12:43

自分でどこまでソースコードを作ってみましたか?
M_L_R_DsoM_1989

2020/04/14 09:08

丸投げになってしまい申し訳ないです。 一応この後自力で解決できました。
guest

回答3

0

手順はまとまっていますのでどこで詰まったのかソースを提示頂ければアドバイス可能ですよ。

投稿2020/04/01 08:07

petmen029

総合スコア86

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

手順通りにプログラムを書けばいいです。

投稿2020/04/01 02:26

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

M_L_R_DsoM_1989

2020/04/14 09:07

手順通り打ち込んだらうまくできました。
guest

0

自己解決

public

1 public static void main(String[] args) { 2 String pass = "ABCDEFGH"; 3 while (true) { 4 int rnd = (int) (Math.random() * 10); 5 6 if (rnd == 9) 7 break; 8 9 if (rnd == 8) 10 continue; 11 12 if (rnd != 9 && rnd != 8) { 13 14 String target = pass.substring(rnd, rnd + 1); 15 String lowerString = target.toLowerCase(); 16 17 pass = pass.replace(target, lowerString); 18 } 19 } 20 if(pass.equals("AbCdEfGh")){ 21 System.out.println("pass"); 22 } 23 if(pass.contains("def")){ 24 System.out.println("define"); 25 } 26 System.out.println("パスワードは" + pass); 27 System.out.println("パスワードの文字数は" + pass.length()); 28 } 29} 30コード

投稿2020/04/14 09:10

M_L_R_DsoM_1989

総合スコア4

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問