回答編集履歴
6
ソース修正
answer
CHANGED
@@ -42,7 +42,7 @@
|
|
42
42
|
if (pass.equals("abc")) {
|
43
43
|
break;
|
44
44
|
} else {
|
45
|
-
|
45
|
+
while(!PassOK){
|
46
46
|
|
47
47
|
int i;
|
48
48
|
|
@@ -91,7 +91,7 @@
|
|
91
91
|
break;
|
92
92
|
}
|
93
93
|
PassOK = true;
|
94
|
-
}
|
94
|
+
}
|
95
95
|
}
|
96
96
|
}
|
97
97
|
}
|
5
ソース追記
answer
CHANGED
@@ -29,4 +29,70 @@
|
|
29
29
|
password:abc123ABC
|
30
30
|
|
31
31
|
Process finished with exit code 0
|
32
|
+
```
|
33
|
+
「現状」
|
34
|
+
```java
|
35
|
+
public static void main(String[] args) {
|
36
|
+
Scanner input = new Scanner(System.in);
|
37
|
+
boolean PassOK = false;
|
38
|
+
while (!PassOK) {
|
39
|
+
System.out.print("input password? ");
|
40
|
+
String pass = input.nextLine();
|
41
|
+
System.out.println("password:" + pass);
|
42
|
+
if (pass.equals("abc")) {
|
43
|
+
break;
|
44
|
+
} else {
|
45
|
+
do {//while(true){
|
46
|
+
|
47
|
+
int i;
|
48
|
+
|
49
|
+
if (pass.length() < 8) {
|
50
|
+
System.out.println(" Your password must be at least 8 characters.");
|
51
|
+
break;
|
52
|
+
}
|
53
|
+
|
54
|
+
for (i = 0; i < pass.length(); i++) {
|
55
|
+
if (Character.isUpperCase(pass.charAt(i))) {
|
56
|
+
break;
|
57
|
+
}
|
58
|
+
}
|
59
|
+
if (i == pass.length()) {
|
60
|
+
System.out.println(" Your password must contain at least one uppercase letter.");
|
61
|
+
break;
|
62
|
+
}
|
63
|
+
|
64
|
+
for (i = 0; i < pass.length(); i++) {
|
65
|
+
if (Character.isLowerCase(pass.charAt(i))) {
|
66
|
+
break;
|
67
|
+
}
|
68
|
+
}
|
69
|
+
if (i == pass.length()) {
|
70
|
+
System.out.println(" Your password must contain at least one lowercase letter.");
|
71
|
+
break;
|
72
|
+
}
|
73
|
+
|
74
|
+
for (i = 0; i < pass.length(); i++) {
|
75
|
+
if (Character.isDigit(pass.charAt(i))) {
|
76
|
+
break;
|
77
|
+
}
|
78
|
+
}
|
79
|
+
if (i == pass.length()) {
|
80
|
+
System.out.println(" Your password must contain a numeber.");
|
81
|
+
break;
|
82
|
+
}
|
83
|
+
|
84
|
+
if (pass.contains("password")) {
|
85
|
+
System.out.println(" Your password cannot contain word 'password.'");
|
86
|
+
break;
|
87
|
+
}
|
88
|
+
|
89
|
+
if (pass.contains(" ")) {
|
90
|
+
System.out.println(" You password can only contain aplha numeric characters.");
|
91
|
+
break;
|
92
|
+
}
|
93
|
+
PassOK = true;
|
94
|
+
} while (!PassOK);
|
95
|
+
}
|
96
|
+
}
|
97
|
+
}
|
32
98
|
```
|
4
ソース修正
answer
CHANGED
@@ -13,20 +13,20 @@
|
|
13
13
|
input password? 123
|
14
14
|
password:123
|
15
15
|
Your password must be at least 8 characters.
|
16
|
-
|
16
|
+
input password? abcd
|
17
|
-
password:
|
17
|
+
password:abcd
|
18
18
|
Your password must be at least 8 characters.
|
19
|
+
input password? ABCDEFGHI
|
19
|
-
|
20
|
+
password:ABCDEFGHI
|
21
|
+
Your password must contain at least one lowercase letter.
|
22
|
+
input password? abcdefg
|
20
|
-
password:
|
23
|
+
password:abcdefg
|
21
24
|
Your password must be at least 8 characters.
|
22
|
-
|
25
|
+
input password? 12345678
|
23
|
-
password:
|
26
|
+
password:12345678
|
24
27
|
Your password must contain at least one uppercase letter.
|
25
|
-
anc
|
26
|
-
password
|
28
|
+
input password? abc123ABC
|
27
|
-
Your password must be at least 8 characters.
|
28
|
-
abc
|
29
|
-
password:
|
29
|
+
password:abc123ABC
|
30
30
|
|
31
31
|
Process finished with exit code 0
|
32
32
|
```
|
3
ソース修正
answer
CHANGED
@@ -9,8 +9,23 @@
|
|
9
9
|
String pass = input.nextLine();
|
10
10
|
System.out.println("password:" + pass);
|
11
11
|
の処理は、一番外側のwhile()の内側にないとおかしいのでは?
|
12
|
-
```
|
12
|
+
```text
|
13
|
-
input password?
|
13
|
+
input password? 123
|
14
|
+
password:123
|
15
|
+
Your password must be at least 8 characters.
|
16
|
+
|
17
|
+
password:
|
18
|
+
Your password must be at least 8 characters.
|
19
|
+
www
|
20
|
+
password:www
|
21
|
+
Your password must be at least 8 characters.
|
22
|
+
wwwwwwwww
|
23
|
+
password:wwwwwwwww
|
24
|
+
Your password must contain at least one uppercase letter.
|
25
|
+
anc
|
26
|
+
password:anc
|
27
|
+
Your password must be at least 8 characters.
|
28
|
+
abc
|
14
29
|
password:abc
|
15
30
|
|
16
31
|
Process finished with exit code 0
|
2
加筆
answer
CHANGED
@@ -8,4 +8,10 @@
|
|
8
8
|
「追記」
|
9
9
|
String pass = input.nextLine();
|
10
10
|
System.out.println("password:" + pass);
|
11
|
-
の処理は、一番外側のwhile()の内側にないとおかしいのでは?
|
11
|
+
の処理は、一番外側のwhile()の内側にないとおかしいのでは?
|
12
|
+
```java
|
13
|
+
input password? abc
|
14
|
+
password:abc
|
15
|
+
|
16
|
+
Process finished with exit code 0
|
17
|
+
```
|
1
追記
answer
CHANGED
@@ -3,4 +3,9 @@
|
|
3
3
|
|
4
4
|
って合ってますか?
|
5
5
|
→[【Java入門】文字列(String)を比較する方法(「==」と「equals」)
|
6
|
-
](https://www.sejuku.net/blog/14621)
|
6
|
+
](https://www.sejuku.net/blog/14621)
|
7
|
+
|
8
|
+
「追記」
|
9
|
+
String pass = input.nextLine();
|
10
|
+
System.out.println("password:" + pass);
|
11
|
+
の処理は、一番外側のwhile()の内側にないとおかしいのでは?
|