アプリ版:「スタンプのみでお礼する」機能のリリースについて

y=x^3-9*x^2+15*x+10
の関数の最大値を求めるプログラム。
計算するxの範囲を0~6まで0.1間隔で計算しなさい。

このプログラムが分かりません。教えてください。

A 回答 (6件)

#1です。



どこまで判ってどこからが判らないのかを書かないといけません。
全く作れない訳じゃないでしょう?

while文を使いたいみたいなので、for文の例を載せておきます。

#include <stdio.h>

void main(void)
{
float x,y,max=0,may=0;

for(x=0;x<=6;x=x+0.1)
{
y=x*x*x-9*x*x+15*x+10;
if(max<y) max=y;
}
printf("最大値 = %f\n",max);
}

でも、このプログラムはひねりも何も無いし…。
    • good
    • 0

基礎的C言語文法のまとめ


http://wwwst.sc.musashi-tech.ac.jp/~bulletin/c_l …
C 標準関数逆引き辞典
http://always-pg.com/c/runtime_rd/
参考まで。関数(宣言文やポインタや配列など)色々ありますが、頑張って下さい。
    • good
    • 0

前回の値と今回の値を比較して大きい方の値を保持。


これを繰り返して最終的に残ったのが最大値。
あとは、その値を表示すればいいと思います。
    • good
    • 0

ただ単に、Xを0~6まで0.1づつ増やして解の内一番大きいのが解。


while文
http://ja.wikipedia.org/wiki/While%E6%96%87
配列とポインタ
http://www9.plala.or.jp/sgwr-t/c/sec10-2.html
以下は参考にして下さい。(関数の形は想像できますよね?)
FunctionView(関数グラフ作成ソフト)
http://www.forest.impress.co.jp/lib/stdy/study/m …
ニュートン法
http://www.akita-nct.ac.jp/yamamoto/lecture/2005 …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

while文を使い0.1づつ増やした数を表示できるのですが、実行時に「最大値=  」を表示させたいのですけどやり方がわかりません。

お礼日時:2008/06/01 12:01

xが有限ならy=x^3-9*x^2+15*x+10をwhile文でまわして最大値を更新していけばできるのでわ?

    • good
    • 0

どこが判らないのか補足してください。



このままでは、丸投げで削除されてしまいますよ。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
すみません。もっと詳しく書くべきでした。

while文やfor文を使い0~6まで0.1間隔で表示さすことはできるのですが、「最大値= 」を表示させたいのですけど、やり方がわかりません。

お礼日時:2008/06/01 11:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!