HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0704
M−yこれはアルゴリズムですか???4解決


M−y

リンク

2014/7/4(Fri) 23:04:13|NO.62751

これはアルゴリズムですか???
3x+3=15という方程式の解を出すものです
C++でもいいのですが、変数の定義がめんどくさいのでHSPにしました。


screen 0,300,50 cls 4 color 225,0.0 mes "3x+3=15" V1=3 x=0 V2=3 V3=15 cn=0 button "解く" , *ss stop *ss screen 0,300,480 cls 4 *main color 0,225,0 cn=cn+1 V4=V1*x V5=V4+V2 if V5=V3 : goto *owari x=x+1 mes "TAKE"+cn+":"+x+"" wait 100 goto *main *owari color 225,0,0 mes "解は X="+x+" <〜ここまで> です。 まあ、重要な部分はここですね V1=3 x=0 V2=3 V3=15 *main V4=V1:x V5=V4+V2 if V5=V3 : goto *owari X=x+1 goto *main *owari mes "X=""+x+"" <pre/> あとコピペしただけなんですけどスペースのところがquotになってます。すみません



この記事に返信する


Tetr@pod

リンク

2014/7/4(Fri) 23:47:22|NO.62752

>アルゴリズム(英: algorithm)とは、数学、コンピューティング、言語学、あるいは
>関連する分野において、問題を解くための手順を定式化した形で表現したものを言う。
>「算法(さんぽう)」と訳されることもある。
(Wikipediaより)

とのことなので、アルゴリズムだと思います。


移項して計算した方が良いとは思いますが。



3ルキー

リンク

2014/7/5(Sat) 00:48:44|NO.62753

x=(V3-V2)/V1
の方が効率が良いと思います。
あと、この計算では大丈夫ですが、方程式の解はいつも整数になるとは限らないので、V3の値を実数(今回は15.0)にすれば小数まで計算してくれます。



M-y

リンク

2014/7/5(Sat) 10:05:56|NO.62758

ありがとうございます。各Vをinput
で代入して、方程式をとくアプリケーションを作ろうと思います



cats

リンク

2014/7/5(Sat) 16:08:34|NO.62761

プログラムに方程式を解かせるなら線形代数が簡単です。
http://yonex1.cis.ibaraki.ac.jp/~yonekura/math/page4.html
HSPでの記事は見たところありませんが、
計算もあまり難しくないし、三元一次方程式などになっても解けますし。
例えば 3x + 3 = 15 なら'+'などで分解してから
3x = 12 に直し、
[x] = [3]^(-1)[12]
より 12 * (1/3) = 4
と解がでます。
逆行列(行列を-1乗するとき)の公式は以下を参考に。
http://www.cg.info.hiroshima-cu.ac.jp/~miyazaki/knowledge/tech23.html



ONION software Copyright 1997-2021(c) All rights reserved.