C言語初心者の質問失礼します。
学校で、
「つると亀が合わせてn 匹います。足の数は合わせてm です。n とm を入力して、つると亀がそれぞれ何匹いるかを求めるプログラムを作りなさい。もし解がない場合は、その旨を出力するようにプログラムしなさい」
という課題が出たのですが、どうプログラムすればいいかわからずに困っています。
どのようにプログラムすればいいか、どうか一言でもかまいませんのでご意見ください!><
こんな質問してごめんなさい。もしよければプログラミングをわかりやすく学べるHPのURLも教えていただければ嬉しいです…。
No.3ベストアンサー
- 回答日時:
考え方だけコメントしてみます。
つるがi匹いるものとします。
iが0のとき、亀はn匹なので、足の数はi*2+n*4となりますよね。
これがmと一致したら、つる0匹が答えです。
一致しなかった場合。
iが1のとき、亀はn-i匹なので、足の数はi*2+(n-i)*4となりますよね。
これがmと一致したら、つる1匹が答えです。
といったように、iを0~nまで一つづつ大きくしていって
比較を繰り返せばいいのです。
これにはforループを使います。
あとはご自身でできるでしょうか?
No.5
- 回答日時:
鶴亀算の解き方は知っていますか?
解き方を知らなければコンピュータに解き方を教えることができません。
もし解き方がわからなければ数学の連立方程式の解き方を思いだしてみてください。
・鶴をx、亀をyとしてn=5、m=16とした場合
x+y=5
2x+4y=16
2x+2y=10
2y=6
y=3
x+3=5
x=2
ちなみに解がない場合は頭数が少数になったりマイナスになったりします。
No.4
- 回答日時:
問題になる部分は次の三カ所です。
1. 鶴亀算そのもの。
これは、鶴と亀の数をmとnで表せるように、代数的な計算は紙の上でやってしまいます。
2. mとnをどのように入力し、結果をどのように出力するか?
環境不明なので、標準入力と標準出力を使うのが普通の考え方です。入力に関しては、コマンドライン引数を使うのもアリでしょう。
3. 数値の表現範囲をどうするか?
unsigned long long型で表現できる範囲でよいのか、そうでないならどこまで必要なのか?
これらについて解決することが先決かと思います。
No.2
- 回答日時:
fgets なら当然「指定したバイト数」しか読めませんが, scanf なら「int に入る限り」大丈夫だと思いますよ>#1. 少なくとも規格には「バイト数の上限」はないはずです.
手元では scanf で 3921桁の数値 (000.....0001, つまりただの 1 ですが) を読み込めてます. gcc の方が VC より速いんだけど.... なんでだろう.
No.1
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 3 2022/10/04 15:07
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- C言語・C++・C# 至急お願いします。C言語で.imgのファイルを読み込んで1バイトづつ出力するプログラムを作りたいので 3 2023/01/16 22:49
- その他(プログラミング・Web制作) プログラミングについて(Python) 添付した画像はC言語で簡単に作ったソースで、1つの配列に5つ 3 2022/09/10 19:15
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
- C言語・C++・C# C#の問題です。 文字列型の配列 s[100] にキーボードから入力された100文字以内の文字列(単 2 2022/06/22 15:18
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
*をユーザーが入力した数字の数...
-
数字以外が入力されたらエラー...
-
正負を反転させて出力するプロ...
-
プログラミング初心者です。 Py...
-
OpenCV webカメラ同時出力について
-
C言語 逆ピラミッドの作り方
-
java初心者です。入力されたの...
-
C言語
-
switch文 defaultについて
-
C言語scanf_sで何故か2回入力に...
-
C言語について
-
scanfが2回使えない・・・?;
-
"scanf"でエンターで改行させな...
-
C言語でgetchar();が上手く使え...
-
入力エラーの処理について。
-
batプログラム上で文字列を入力...
-
プログラミングの問題で、キー...
-
double型が正常に認識されてい...
-
C言語で、ioctlを使用し入力待...
-
VB カウントダウンタイマーの作...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
*をユーザーが入力した数字の数...
-
数字以外が入力されたらエラー...
-
正負を反転させて出力するプロ...
-
プログラミング初心者です。 Py...
-
java初心者です。入力されたの...
-
Eclipseコンソール表示を、リセ...
-
scanfが2回使えない・・・?;
-
C言語 逆ピラミッドの作り方
-
double型が正常に認識されてい...
-
ワードで文字を入力する時の変...
-
コマンドプロンプトからのEOFの...
-
Linuxで入力待ちなしkeyread関...
-
scanf が無視されます
-
if文の条件にscanf関数を使うと…?
-
C言語について
-
cout関数を使っているのですが...
-
enterでループ終了
-
"scanf"でエンターで改行させな...
-
C言語でgetchar();が上手く使え...
-
C言語scanf_sで何故か2回入力に...
おすすめ情報