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


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
1109
fmfm大至急! 0で除算しましたとでる4解決


fmfm

リンク

2013/11/9(Sat) 21:47:53|NO.58058


A=10.0 B=20.0 X=1/A Y=1/B f=1/(X+Y) mes f
を実行すると0で除算しました
と出ます

何をしたいかというとレンズの式(1/a + 1/b = 1/f)
という式を初めの2行でAとBを指定してfをだしたいです。
どうすればいいですか?



この記事に返信する


ZAP

リンク

2013/11/9(Sat) 22:08:51|NO.58059


X=1/A Y=1/B

この段階で、X,Yがそれぞれ整数として初期化されてるので、
わり算をしても小数点以下が切り捨てられて、X,Yの値はどちらもゼロになってしまっている。


これを防ぐには

X=1.0/A Y=1.0/B

とすればX,Yがそれぞれ実数扱いになるのでいけるはず。



ZAP

リンク

2013/11/9(Sat) 22:10:58|NO.58060

あ、


f=1/(X+Y)

これも直しておかないと、fの値が整数になってしまう。


f=1.0/(X+Y)

これでいけるのではないかと。



fmfm

リンク

2013/11/9(Sat) 22:14:41|NO.58061

ありがとうございます!



KA

リンク

2013/11/10(Sun) 05:49:11|NO.58066

参考までに
f=1/(1/A+1/B)
f=1/(B/AB+A/AB)
f=1/{(B+A)/AB}
f=AB/(A+B)



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