ページ 11

C言語の宿題で質問です。初心者です

Posted: 2009年1月07日(水) 13:05
by ハルキヨ
はじめまして。 いきなり質問すいません。

問.父親の年齢はm才で、自分の年齢はn才だったとします。父親の年齢が自分の年齢の2倍になるのは何年後ですか?
・・・というプログラムを作る問題です。

実行例
父親の年齢は:<数値の入力>
自分の年齢は:<数値の入力>
<計算結果>年後には父親の年齢は<計算結果>歳、自分は<計算結果>歳です。

お願いします。  

Re:C言語の宿題で質問です。初心者です

Posted: 2009年1月07日(水) 13:17
by 御津凪
何についての質問でしょうか?
(宿題の丸投げは原則禁止です)

Re:C言語の宿題で質問です。初心者です

Posted: 2009年1月07日(水) 13:19
by kazuoni
はじめまして。
まず利用規約を読まれました?
基本的に丸投げは禁止です。
問題は最小公倍数を使うやつですね。

まずはどこまでやりました?
環境を書き、ここまで自分はコードを書いたが、ここからどう書いていいか分からない
っというように道筋付きで書くとよい回答が得られると思いますよ。

やっつけならググればなんとなく色々ありますよ。
「C言語 最小公倍数」
http://www.google.co.jp/search?sourceid ... d%e6%95%b0

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 13:44
by ハルキヨ
すいません、これは丸投げでしたね。
正直プログラミングにまったく手も足もでない状況です。
それと、C言語です。
#include<stdio.h>

int main(void)
{
int m,n;

はじまりはこうしたらいいのかな?という状況です。
プログラムを完成させることが目的です。

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 13:52
by kazuoni
http://www9.plala.or.jp/sgwr-t/

いろいろありますが↑のページは丁寧に解説されています。
すべてを聞くより、まず自分で本当に初歩のところから進めてはどうでしょうか?
サンプルソースを自分の手で打つことが大切です。
コンパイラはありますか?
Visual C++ 2008 express edition
は無償でとても性能のよい開発環境です。

Re:C言語の宿題で質問です。初心者です

Posted: 2009年1月07日(水) 13:52
by 組木紙織
日本語で答を出すまでの手順を書いてみてください。
プログラムを書くためには解き方が分かってないといけませんよね。

Re:C言語の宿題で質問です。初心者です

Posted: 2009年1月07日(水) 13:53
by SCI
この問題の場合「2倍になるまでの年数」を求めればいいので方程式は中学生レベルですね。
そして、「2倍になる年」は双方の年齢が決まると一意に決まるはずです。m,nが決まると年の差|m-n|は常に一定値をとるので・・・
つまり、2倍になるまでの年数はmとnの関数f(m,n)として一意的に表すことができます。

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 13:55
by toyo
答えなら
方程式
(m + x) = 2 * (n + x)
を解けばいいです

数値の入力がわからないとか結果の出力がわからないとかならその旨を具体的に質問したほうがいいです

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 14:14
by ざこ
#include <stdio.h>

int main(void)
{
int fa,me,year;//faは父親の年齢をいれる変数。meは自分の、yearは何年後に条件を満たすかの年数を入れる変数。

printf("父親の年齢を入力せよ\n");
scanf("%d",&fa);
printf("自分の年齢を入力せよ\n");
scanf("%d",&me);

year=fa-2*me;
printf("%d後に条件を満たす",year);

return 0;
}

希望通りの出力とは若干異なりますが自分で直してください。
後父親の年齢が自分の年齢の2倍以上じゃなければyearが-の値になります。
後両者とも年齢は0ではないという条件もいれておいたほうがいいかもしれませんね。
後は工夫してください。

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 14:17
by バグ
>>ざこさん
父親も自分も同じように歳を重ねていかないと駄目なんじゃないですか?(^_^;)
そのソースだと、自分しか年を取らないですよね?

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 14:20
by ざこ
fa+year=2*(me+year);
と変形して
year=fa-2*meにしたんですが間違ってます?
faに24
meに9入れたら
yearが6になってたんで合ってると思うのですが。

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 14:29
by SCI
合っていますよ。
定義域・値域がともに整数値である二変数関数です。

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 14:33
by バグ
勘違いでした。失礼しましたm(__)m

Re:C言語の宿題で質問です。初心者です。

Posted: 2009年1月07日(水) 23:06
by ハルキヨ
みなさんありがとうございました。

これからプログラミングを初歩から須少しずつ学びたいと思います。

またお邪魔います。 失礼します。