
/*
1から50まで順に数を表示する。
但し、その数が3の倍数か3の付く数字の場合、数字の後に!を表示する。
5 の倍数の場合は、数字の後に?と表示する。
両方の条件に合致した場合、数字の後に!?と表示する。
*/
class Show{
public static void main(String[] args){
int i = 1;
while(i <= 50){
if(i % 3 == 0 && i % 5 ==0){
System.out.println(i + "!?");
}else if(i % 5 == 0){
System.out.println(i + "?");
}else if(i % 3 == 0){
System.out.println(i + "!");
}else{
System.out.println(i);
}
i++;
}
}
このような問題で、3を含む数字、とあるので、文字列の部分一致を検索する時に使用するStringクラスのindexOfを使用するのでは?と考えています。しかし、こちらはequalsで判定しますが、3の倍数は上記のコードにもある通り、==で判定しています。文字列判定と ==演算子は同じif(条件)の中には入れる事が出来ないので、じゃあどうする?という具合になってしまっています。どなたか「数が3の倍数か3の付く数字の場合」の処理を教えて頂けないでしょう?よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
そうですねぇ……よく考えてください。
「数が3の倍数か3の付く数字の場合」という言葉は「数が『数が3の倍数か3の付く数字か』に対して true の場合」という意味ですよね?つまり、上記の『』の中を判定できるメソッドがあったら、それを使って main() を書き直せますよね?
ならば、そう書き直した後はそういう判定をできるメソッドを書いてしまえば完成ですよね?
どうやら宿題っぽいので、後はがんばれ。
No.2
- 回答日時:
> 文字列判定と ==演算子は同じif(条件)の中には入れる事が出来ない
どうしてそんな結論に?
i % 3 == 0 というのは「 i %3 と 0 が等しければtrue、そうでなければfalse」という計算式です。
String.Equalsも、文字列を比較して、trueかfalseを返すメソッドです。
&& とか || も、前後がtrueかfalseかの組合せで、trueかfalseを返す計算式です。
if で判断するのは、最終的な true かfalseか、です。途中の式は直接関係はありません。
組合せても、まったく問題ありません。
もっとも、indexOfを使っているのに、なぜEqualsが出てくるかがわかりませんが
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
隣の枝がはみ出してきたら切ってもいい?最もやってはいけないことは?
「隣の木が越境してきて困るが、勝手に切ってはいけないと聞くし…」そう思っている方も多いだろう。実は、2023年4月1日に民法が改正され、この「越境枝」のルールが大きく変わった。 教えて!gooでも「境界から出て...
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「タイプ初期化子が例外をスロ...
-
SQLException getNextException()
-
連続する「\\」をひとつの「\\...
-
0除算の例外処理ができない!!...
-
タトゥーや墨を入れる人の共通点
-
C# UriFormatExceptionの回避
-
C#の捕捉されない例外処理の対...
-
0歳児の指しゃぶりに関して
-
中学のクラス数
-
サーブレットコンテキストの意...
-
javascriptからjavaを呼び出したい
-
Application.Wait の参照設定
-
JavaScriptからJAVAクラスを呼...
-
インスタンス参照でアクセスで...
-
オブジェクト参照がオブジェク...
-
String.containsの反対機能はあ...
-
そんなにお金がなくても年に1度...
-
SDカードについて
-
共通で使う関数を集めたクラス...
-
JAVAでMath.powを使用せずに、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「タイプ初期化子が例外をスロ...
-
Timestamp型への変換について(J...
-
C#の捕捉されない例外処理の対...
-
VB.Net Object型 空かどうか
-
0除算の例外処理ができない!!...
-
VBA Evaluate関数 型が一致しま...
-
VB.NETで16進数が正しいかどう...
-
数字か文字列かを判定する関数
-
【JAVA】与えられた金額を貨幣...
-
時間の取得
-
文字列からダブルクオートの削除
-
VC++におけるCStringの変換
-
String型の日付(2005/11/25)の...
-
C# マルチスレッドにおける例外...
-
nullで、return出来るのはどん...
-
javaのコンパイルエラーが解決...
-
アロー関数のIE対応にpolyfill...
-
Excelでのエラー
-
サーブレットからJSPの呼び出し...
-
連続する「\\」をひとつの「\\...
おすすめ情報