質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

2回答

1029閲覧

while文を用いてプログラムしたいです。

mimi33

総合スコア0

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

0グッド

0クリップ

投稿2020/06/19 16:24

問題

1から1ずつ増しながら、その二乗が200を超す値を探す。

作成したプログラム

c

1#include <stdio.h> 2int main(void){ 3 int i; 4 i = 1; 5 6 while(i* i >= 200){ 7 printf("%d\n", i*i); 8 i = i + 1; 9 } 10} 11

以上が自力でできる範囲です。
教えて頂けると助かります!

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

他の方の回答にもある通り、これでは一度もループしません。
whileはtrueの時のみ実行されます。
i=1と定義していて、whileの条件ではiが200以上の時となっているので
このままでは一生実行されません。

おそらく以下のようにすれば実行されるでしょう。

  • while(i* i >= 200){
  • while(i* i <= 200){

これで、iが200以下の時はwhileの条件がtrueになり、1回ループされるごとにiが1増えます。
このループを抜けた後のiが「1から1ずつ増しながら、その二乗が200を超えた瞬間」の値になります。

今回のコードは書き方的にビミョい感じがありますが。

投稿2020/06/20 00:27

takuya_atsugi

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

今のプログラムだと200回回転したら止まるプログラムなので下記のリンクより2乗の出し方を勉強して2乗と比較するようにプログラムを書き直してみてください。
2乗の出し方はココです

間違ってたので修正
指摘通り

while(i* i >= 200){

while(条件)は、条件が真の間、ループします。

C

1#include <stdio.h> 2int main(void){ 3 int i; 4 int data[100]; 5 i = 0; 6 do{ 7 printf("%d\n", i*i); 8 data[i]=i*i; 9 i = i + 1; 10 }while( data[i-1]<=200);

なので、配列を使って1つ前の値と比較するように変更しました。

投稿2020/06/19 23:49

編集2020/06/20 00:58
AMK

総合スコア765

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pepperleaf

2020/06/20 00:06

> 今のプログラムだと200回回転したら止まる いや、一回も回らずにそのまま、終わると思うけど。 > while(i* i >= 200){ while(条件)は、条件が真の間、ループします。
AMK

2020/06/20 00:13

間違ってましたね^^;
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問