アルゴリズムの勉強の件#1
「問題」
文字列の長さが4または6で、数字だけで構成されているかを確認してくれる関数、ソリューションを完成してください。例えば、sがa234なら、falseをリターンし、1234ならtrueをリターンします。
- 複雑かもしれませんが私が考えたソース
import java.util.Scanner;
public class test01 {
public static boolean wordCheck (char word) {
if(word >= 48 && word <= 57 ) { //char 数字範囲内にあるかチェックする
return true;
}
return false;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
boolean check = false;
System.out.print("文字列 sに入れる4または6の数字を入力してください。>");
//checkの最小値は falseで指定, 下にある条件を満足できないとそのままで false出力
String s = sc.nextLine();
if(s.length() == 4 || s.length() == 6 ) {
//まず、文字列の長さが4または6かチェック
for(int i = 0 ; i < s.length() ; i++ ) {
if(!(check = wordCheck(s.charAt(i)))){
//文字列を構成している文字の値が数字で構成しているかチェック
//checkに入れる値は最終の数字まで、チェックして、数字なら、trueの値が入れます。
//もし、falseの値がいれられた瞬間にはbreakで、for文とif文を全部出ます。
break;
}
}
}
System.out.println("入力したs文字列の値: " + s);
System.out.println(check);
}
}
私だけの考えで構成したソースです。 他の方式をクグルリンを通じて探すつもりです。