![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.4ベストアンサー
- 回答日時:
やってたのが10年近く前なので少々自信がありません。
#include <stdio.h>
int main(void)
{
int i,x;
printf("for文の実験\n自然数を入力してください");
scanf("%d",&x);
for( i=1; i<=x; i++ )
{
printf("%d",i); //とりあえず現在の値を表示
if( (i/2) == 0 ) //iの値が2の倍数のとき*をつける
{
printf("*");
}
if( (i/3) == 0 ) //iの値が3の倍数のとき#をつける
{
printf("#");
}
printf(" "); //数値が分かりやすいようにスペースを空ける。改行にしたい場合は\nに変更。
}
return 0;
}
多分こんな感じで良いのではないでしょうか?
複数の関数や条件式が重なっている場合は、1つずつ機能を追加していく感じで考えれば上手く行くのではないかと思います。
この文では*や#を別でつけた方が分かりやすいと判断しましたが、同時につけることも一応できます。
その場合は6などの2の倍数でもあり、3の倍数でもある場合を考慮しないといけません。
少々分かりにくくなってしまいますが、色んな形を試行錯誤するのもプログラミングでは重要ですので、考えてみてはいかがでしょうか?
この回答へのお礼
お礼日時:2013/05/15 22:44
こんなに詳しくありがとうございます。
このプログラムだと*#が数字の右に表示されなかったので、今は*#を右に表示させることに試行錯誤しています笑
これからがんばります。
No.5
- 回答日時:
慣れないうちは、問題を一度に解こうとせず、
小さい問題に分割するとうまくいくかもしれません。
今回の場合は、
1)まずは、1~nを出力するだけのコードを書く。
2)当該の数値が2の倍数だったら、数値の右側に'*'を出力するコードを書く。
3)当該の数値が3の倍数だったら、数値の右側に'#'を出力するコードを書く。
の3つに分割してみましょう。
1)が完成してから2)へ、1)2)が完成してから3)へ進んでみましょう。
出力例はこんな感じでいいんでしょうか(nが10の場合)。
1
2*
3#
4*
5
6*#
7
8*
9#
10*
No.3
- 回答日時:
6時間乙です(笑)
Cか… 懐かし過ぎて記憶にないんで、条件式についてのみ。
要はループ構造で出力の際に、各倍数の剰余を真偽条件に入れるだけです。
理屈は ↑ だけです。
使う制御はfor, if (elseif と else も使いますね)
真偽条件には剰余(%)を利用すればOKです。
どーしても判らない場合は下記にヒントを超えた何かを遺しておくので、どうぞ~
for(i = 1; i >= n; i++){
if:iが2の剰余かどうか?
i+"*\n";
elseif:iが3の剰余かどうか?
i+"#\n";
else
i+"\n";
}
No.1
- 回答日時:
javaで書けば、
int i;
int t2;
int t3;
int n = 10;
for (i = 1; i <= n; i++) {
t2 = i / 2;
t3 = i / 3;
System.out.print(i);
if(i == t2 * 2) System.out.print("*");
if(i == t3 * 3) System.out.print("#");
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# 至急お願いします。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分母 3 2022/07/19 17:09
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分 1 2022/07/19 17:03
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- Java Java 配列<選挙> 4 2023/07/31 15:07
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
getcの改行判定
-
for文の中にswitch文はいれられ...
-
配列を使って魔方陣
-
#if 1 #elseの意味について
-
c言語プログラミングで1から100...
-
c言語のwhile文を使った計算で...
-
C言語初心者です。次の問題で質...
-
VHDLで、case文とwhen文のどち...
-
構文エラー";"が型の前にあり...
-
C言語 プログラム
-
全角文字の判定
-
計算結果がlong型以上になる場...
-
配列を関数に渡す方法
-
File Edit Options Buffers Too...
-
行列をべき乗させるプログラム
-
C言語で分からないことがあり...
-
十進BASICのプログラムについて
-
for文
-
C言語
-
プログラミング関係で
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
構文エラー";"が型の前にあり...
-
for文の中にswitch文はいれられ...
-
#if 1 #elseの意味について
-
プログラミングで二番目に大き...
-
getcの改行判定
-
C言語プログラムが理解できなくて…
-
C言語 数字以外を入力させない...
-
配列を関数に渡す方法
-
配列を使って魔方陣
-
初心者です。for文、if文を使っ...
-
c言語for文
-
c言語で平均をだす
-
while文について、c言語...
-
scanf関数を用いての加減乗除%...
-
行列をべき乗させるプログラム
-
c言語プログラミングで1から100...
-
C言語階乗の総和を求める
-
scanfが実行されません
-
階乗のプログラム!!
-
C言語の二分法のプログラムにつ...
おすすめ情報