

C言語でのプログラミングの問題が分かりません。
課題で出た問題なのですがわからないのでおしえてください。
問題は
値を入力します(nとします)
nが1でない間、以下の処理を繰り返します。
(1)nが偶数のとき、nを2で割り、その答えを新しいnとします。
(2)nが奇数のとき、nを3倍してから1を加え、その答えを新しいnとします。
というものです。
if文を使い計算はできたのですが、「繰り返し」と「新しいnとする」部分が分かりませんでした。作成したプログラムを載せるので手直しお願いいたします。
int n,x,y;
printf("整数を入力");
scanf("%d",&n);
while (n>1)
if (n%2)
printf("%d",x=n*3+1);
else
printf("%d",y=n/2);
putchar('\n');
return(0);
です。このままだと無限ループしてしまうので繰り返しの条件が悪いみたいです。
それと、答えをnに入れたいのにx、yを使ってしまっています。
回答お願いします。
No.2ベストアンサー
- 回答日時:
No.5
- 回答日時:
まずループの導入部の問題
nが1で無い間ループするのですね。貴方の表記ではnが1より大きければループするですよね。だから条件は本来n!=1で無ければならないはず。!=の意味わかります?
新しいnにするは他の方も書いているけど、代入のやり直しでしょ?Cの面白い表記知ってます?
(1)のときの表記 n /= 2;
(2)は普通に書くしかないか n = n*3 + 1;
No.4
- 回答日時:
>答えをnに入れたいのにx、yを使ってしまっています。
ならば、計算結果をnに代入すればよいだけのことです。
C言語における
i = i + 2;
という式の意味を日本語で説明できますか?
No.1
- 回答日時:
まず、while()、for()等のリファレンスを調べて下さい。
http://www9.plala.or.jp/sgwr-t/c/sec06-3.html
http://www9.plala.or.jp/sgwr-t/c/sec06-2.html
中括弧{}で、囲んだ部分が繰り返されるのです。
後、代入文は、
n = n*3 + 1;
と、ちゃんと書けば代入出来ます。
print文の引数で代入するとか、変な癖は付けない方が身の為です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# C言語階乗の総和を求める 2 2023/03/04 23:31
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分 1 2022/07/19 17:03
- C言語・C++・C# 至急お願いします。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分母 3 2022/07/19 17:09
- C言語・C++・C# C言語でif文が予想と違う動きをする件について7 4 2023/03/20 00:26
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでダブルコーテーション入り...
-
C言語
-
C言語 アロー演算子について質...
-
VBAでコピー後のペーストご相談...
-
C言語 初心者です。
-
R言語について
-
valueChanged の引数について
-
C言語でのプログラミングの問...
-
javascript の?について
-
変数宣言と初期値代入の場所に...
-
c言語の質問です
-
コマンド実行結果を変数に代入...
-
多次元配列について質問
-
i++ , ++1
-
画像のプログラムに関して質問...
-
一般のプログラム言語
-
VB初心者です。コードの書き方...
-
Char* に文字列代入
-
後置き++演算子の優先順位に関して
-
VB IF なぜ構文エラーにならな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでダブルコーテーション入り...
-
エラーの意味は? Lvalue req...
-
EXCEL/VBA 変数の値をクリップ...
-
jsp~jspにhiddenを使って変数...
-
整数xxxが大き過ぎますというエ...
-
C言語 アロー演算子について質...
-
[VBS]変数を定数に変換する方法...
-
Variant型で宣言してるのにEmpt...
-
テキストボックスの値を変数に...
-
processing エラーで、 "cannot...
-
Accessコンボボックスにレコー...
-
DataTableの値を変数に代入したい
-
条件演算子 ? :
-
インクリメント演算子の前置(+...
-
プログラミングで変数と関数の...
-
gridViewの行選択解除
-
無名関数のメリットがよくわか...
-
stdpicture型の変数に、、
-
論理演算子について
-
COBOLの変数
おすすめ情報