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

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

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

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Q&A

解決済

3回答

531閲覧

条件を「100以下になったとき」にしたいのですがどうやればできますか

KamuzaLoli

総合スコア6

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

1グッド

0クリップ

投稿2020/02/13 14:08

編集2020/02/14 13:21

C#

1using System; 2 3namespace 試作品1 4{ 5 class Program 6 { 7 static void Main(string[] args) 8     { 9 float t = 10000; 10 while (t != 100) 11 { 12 t = t / 2.0f; 13 Console.WriteLine(t); 14 } 15 }   

初めて100以下になった時の数字を求めたいのですがどうすればいいですか
よろしくお願いします

TN8001👍を押しています

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

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

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

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

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

Zuishin

2020/02/13 14:31

このページを開き、サンプルの「実行」ボタンを押すと、実行結果を見ることができます。またソースコードを書き換えて実行すると、書き換えられた後のコードに従って実行されるので、ここでどのような動きをするのかを確かめてください。
退会済みユーザー

退会済みユーザー

2020/02/13 22:49

タイトルには「以下になったとき」とありますが、実は t == 100 が true になったらループを break したいのかな?
BluOxy

2020/02/14 04:18

> 求めた動きをしてくれません 欲しい結果が何か、結果を出すためにはどういう手順を行えば良いと考えているか、その辺りを可能な限り明確な日本語の文章にするだけでも情報の整理ができます。 それでも分からなければ、質問を修正して整理したことを記載してみるとより欲しい答えがもらえるかもしれません。
Zuishin

2020/02/14 13:28

10000 を 2 で割っていってなぜ 100 になると思ったんですか?
退会済みユーザー

退会済みユーザー

2020/02/15 00:32

質問を書き換えたようですが、それよりなにより、コメント/回答をもらっているのだからそれにフィードバックを返せませんか?
KamuzaLoli

2020/02/29 15:37

遅れてしまい申し訳ありませんでした また、回答などをしてくださりありがとうございました。
guest

回答3

0

ベストアンサー

100を含むかどうかでちょっと変わります。
t > 100t >= 100

cs

1using System; 2 3namespace 試作品1 4{ 5 class Program 6 { 7 static void Main(string[] args) 8 { 9 float t = 10000; 10 while(t > 100) 11 { 12 t = t / 2.0f; 13 } 14 Console.WriteLine("100以下になりました"); 15 Console.WriteLine(t); // 78.125 16 } 17 18 //static void Main() 19 //{ 20 // float t = 200; 21 // while(t > 100) t /= 2f; 22 // Console.WriteLine("100以下になりました"); 23 // Console.WriteLine(t); // 100 24 //} 25 //static void Main() 26 //{ 27 // float t = 200; 28 // while(t >= 100) t /= 2f; 29 // Console.WriteLine("100未満になりました"); 30 // Console.WriteLine(t); // 50 31 //} 32 } 33}

投稿2020/02/14 13:43

編集2023/07/20 14:18
TN8001

総合スコア9296

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

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

KamuzaLoli

2020/02/29 15:34

回答ありがとうございました。
x_x

2020/03/02 07:36

なぜ低評価がついているのやら
guest

0

100以下なら
t<=100
ってことだけど、そのコードに入れてもしようがないと思うけどねっ

投稿2020/02/13 14:22

y_waiwai

総合スコア87747

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

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

0

c#

1int t = 10000; 2while (t >= 100){ 3 t = t / 2; 4 Console.WriteLine(t); 5}

こうすると,tが100より大きいときに

t = t / 2;
console.WiriteLine(t);

が実行されます.つまり,tが100以下となったときこの処理は停止します.

これだと,

125/2 = 62

も出力されるから,もう少し変更しないといけないけどね...

投稿2020/02/13 14:34

編集2020/02/14 03:40
ike-0315

総合スコア30

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問