No.3ベストアンサー
- 回答日時:
'分割の幅とかforの終了条件とかで必ずしも数学的に正しい答えは求まらないので注意
'---------------------------------------------------------------
dim a, b, c, x1, x2
dim x, y, max, min, dx
a=InputBox("係数aを入力","ax^2", 1)
b=InputBox("係数bを入力","bx", 0)
c=InputBox("係数cを入力","c", 1)
x1=InputBox("範囲の始まりx1を入力","x1", 0)
x2=InputBox("範囲の終わりx2を入力","x2", 1)
min=x1*(x1*a+b)+c
max=min
dx=abs(x2-x1)/1000 '区間を1000分割する
for x=x1 to x2 step dx
y=x*(x*a+b)+c
if y>max then max=y
if y<min then min=y
next
WScript.Echo "最大値:" & max
WScript.Echo "最小値:" & min
この回答へのお礼
お礼日時:2006/01/14 18:49
ありがとうございます!! だいたい分かるのですが僕の知識不足で最後の
WScript.Echo "最大値:" & max
WScript.Echo "最小値:" & min
のところの意味が分からないんですけどどういう意味でしょう?
No.4
- 回答日時:
初等の情報学習の「条件の分岐」を教えるプログラム課題でしょう。
2次の計数が、その正負によって、最小値、最大値が
http://www.kwansei.ac.jp/hs/z90010/sugaku1/2jima …にあるように
,2次関数 y=ax2+bx+c があるとき,そのグラフの頂点の座標を (p,q) とすると,
a>0 のとき,x=p で最小値 q をとり,最大値はない
a<0 のとき,x=p で最大値 q をとり,最小値はない
を場合分けするときにIF...THEN...ELSE...
を使うのでしょう。
あとは中学数学公式に値を代入するだけ。
値指定のInputBoxと表示のEcho以外は
四則演算(+-*/,2上はx*xで代用)で計算できる。
根を求めるのでないからSQR関数も必要ない。
ーb/(2*a)
のとき最大(小)値はc-b*b/(2*a*2*a)
No.1
- 回答日時:
VBScriptを使用したことはありませんので、考え方だけ。
元の関数が
ax^2+bx+c for x1 <= x <= x2
であれば微分は
2ax+bですので、最大もしくは最小のどちらかが
2ax+b=0 もしくは x = b/2a のところにあります。
あとはそのxがx1とx2の間にあるかどうかを判定して
間にない(x<x1 or x>x2)のであれば両端の値の判定を行って、大きいほうが最大値で小さいほうが最小値になります。
もしもxがx1とx2の間にあるのならば(x1<=x and x<=x2)、x1,x,x2 の値のどれかが最大値でどれかが最小値です。
この辺のロジックを作るのにIF...THEN...ELSE...END IFを使うということだと思いますけれど、プログラミングが分からないのか、二次関数が分からないのかはっきりしていないので、とりあえず二次関数の説明だけ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vba 最大値 条件分岐 4 2022/12/10 10:20
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- UNIX・Linux 次の要件を満たすにはどのように修正したらよろしいでしょうか 1 2022/11/24 20:57
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) vba GetAsyncKeyState関数について 1 2023/08/24 12:08
- Visual Basic(VBA) 数字が「0」の列を削除するため、下記のコードを実行しましたが、コンパイルエラーSubまたはFunct 3 2022/12/04 00:00
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c言語
-
五目並べ
-
繰り返し1行~28行までを順順に...
-
H8マイコン C言語でのプロ...
-
MATLABにおける行の挿入方法
-
アセンブラの間接アドレッシング
-
!(否定)演算子について
-
パイソンのプログラミングにつ...
-
MATLABのfor文の使い方について
-
Excel・Word リサーチ機能を無...
-
UserForm1.Showでエラーになり...
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
特定のPCだけ動作しないVBAマク...
-
合計3TBのデータのハッシュ値を...
-
String""から型'Double'への変...
-
メッセージボックスのOKボタ...
-
教えて下さい
-
EXCELのVBAでRange("A1:C4")を...
-
ExcelのVBA。public変数の値が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
繰り返し1行~28行までを順順に...
-
c言語
-
MATLABにおける行の挿入方法
-
H8マイコン C言語でのプロ...
-
C言語で余りがマイナスになる場合
-
!(否定)演算子について
-
フォートランで行列の計算
-
パイソンのプログラミングにつ...
-
cのプログラミングで虚数を含...
-
ダイナミックプログラミング
-
StandardMLで整数リストの奇数...
-
一般次元の逆行列を求めるプロ...
-
MATLABの参考書
-
Pythonの公式リファレンスガイド
-
MATLABからCへ
-
MATLABのfor文の使い方について
-
OPENCVを使ったエピポーラ幾何...
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
配列数式の解除
おすすめ情報