過去の桐井戸端BBS (桐ver.9) |
29969 | 60進数から10進数に変換したい | はつじい | 2005/05/18-08:23 |
関数電卓ではDEGですが、60進数から10進数の変換する関数は有りませんね、 項目 [あ]は60進数 #整数( [あ])+(#整数(([あ]-#整数( [あ]))×100)÷100)×100÷60+([小数部]-(#整数(( [あ]-#整数( [あ]))×100)÷100))×10000÷3600 もう少しスマートな方法は有りませんか。 | |||
29971 | Re:60進数から10進数の変換 | 今村 誠 | 2005/05/18-09:23 |
記事番号29969へのコメント はつじいさんこんにちは #mod(#時間数値(#時間値(#S(#str([あ],-2),".",":")),1),24) ではだめでしょうか? | |||
29976 | Re:60進数から10進数の変換 | うにん | 2005/05/18-09:48 |
記事番号29969へのコメント >項目 [あ]は60進数 60進数って、A〜Zまで小文字まで使うのかと思いましたが。 2桁使って101だったら10進で61ということなんでしょうかね。 >#整数( [あ])+(#整数(([あ]-#整数( [あ]))×100)÷100)×100÷60+「÷100)×100」が全く無駄ですが。 | |||
29979 | Re:60進数から10進数の変換 | はつじい | 2005/05/18-13:32 |
記事番号29976へのコメント 今村様、うにん様 有り難う御座います 今、帰って見せて貰っています、関数はゆっくり検討させていただきます。 60進数は、時間と同じで60秒で1分、60分で1度、円の一週は360度、360度は0度です。 0度30分(0°30′)は1度の1/2で0.50度(10進数)です。 | |||
29980 | Re:60進数から10進数の変換 | 今村 | 2005/05/18-16:09 |
記事番号29979へのコメント はつじいさんこんにちは >60進数は、時間と同じで60秒で1分、60分で1度、円の一週は360度、360度は0 >度です。 > >0度30分(0°30′)は1度の1/2で0.50度(10進数)です。 どうも間違ったようですね 項目[あ]のデータ型と 期待する答えをお書きになってみては 例えば あ数値 い数値 60 1 360 0 180 0.5 90 0.75 720 2 1.3 1.5 あ文字列 い文字列 0度30分 0.5度 60秒 1分 60分 1度 360度 0度 540度30分 180.5度 | |||
29981 | Re:60進数から10進数の変換 | はつじい | 2005/05/18-16:38 |
記事番号29980へのコメント 今村さん,有り難う御座います、 一応結果は出ています、しかし、関数電卓ではDEGのボタン1個で結果が出るのですが DEG D.MS(10進角から60進角に変換)関数がないので長い計算式になります。 又、小数部を取り出す関数もないようです。 >あ数値 い数値 > 60 60 >360 0 >180 180 > 90 90 >720 0 >1.3 1.5 です 123°30′30″は 123.5083333度となります。 この数値を使ってSIN、COS、TANを計算します。 以下の文字ではダメです。 | |||
29982 | Re:60進数から10進数の変換 | はつじい | 2005/05/18-17:16 |
記事番号29971へのコメント 今村 誠さん有り難う御座います 時間では24迄の表示となり、秒で誤差が出ています。 計算式を検討しています。 | |||
29983 | Re:60進数から10進数の変換 | うにん | 2005/05/18-17:21 |
記事番号29981へのコメント >又、小数部を取り出す関数もないようです。 小数部は#MOD(数値,1)でOKです。 > 123°30′30″は 123.5083333度となります。 入力が文字列で「123°30′30″」になってれば簡単ですね。 #MOD(#時間数値(#時間値([60進]) , 1 ),360) 後は小数部を2桁ずつに区切って文字列に変換すればいいわけですが。 (ところが、区切りは何でもいいはずが「°」とか「度」がなぜかエラーになる) | |||
29984 | Re:60進数から10進数の変換 | はつじい | 2005/05/18-17:49 |
記事番号29983へのコメント うにんさん有り難う御座います >小数部は#MOD(数値,1)でOKです。 取り敢えず小数部解決しました。 計算式が少し短くなります。 | |||
29985 | Re:60進数から10進数の変換 | はつじい | 2005/05/18-19:46 |
記事番号29984へのコメント [い]は60進数 [う]の項目計算式以下の通り #整数( [い])+(#整数(#MOD([い],1)×100)÷100)×100÷60+(#MOD([い],1)-(#整数(( #MOD([い],1))×100)÷100))×10000÷3600 こんなところでしょうか、 皆さん有り難うございました。 | |||
29989 | Re:60進数から10進数の変換 | 今村 誠 | 2005/05/19-08:42 |
記事番号29985へのコメント はつじいさんこんにちは、計算式によって答えが違うようです。 60)#mod(#時間数値(#時間値(#str(#int([い]))+":"+#str(#int(#mod([い],1) *100))+":"+#str(#int(#mod([い],0.01)*10^4))),1),360) う)#int(#mod([い],360))+#int(#MOD([い],1)*100)/60+(#int(#MOD ([い],0.01)*10000)/60)/60 え)#整数([い])+(#整数(#MOD([い],1)*100)/100)*100/60+(#MOD([い],1)-(# 整数((#MOD([い],1))*100)/100))*10000/3600 60)と う)え)では1分12秒や1分30秒等では答えが微妙に違うようです。 え)は360度以上では間違うようです。 2度59分60秒等の誤った情報を入力するときも微妙に違うようです。 以下の項目を定義 [度]整数[分]整数[秒]整数 [い]数値 項目計算式 [度]+[分]/100+[秒]/10000 [60]数値 [う]数値 [え]数値 [うが違う]整数 項目計算式 #cond([60]<>[う],1) テスト用の一括処理 表 表 "tesu.tbl" 変数宣言 固有,数値{&度=0,&各分=0.&各秒=0} 繰り返し &度=0,361 繰り返し &各分=0,59 繰り返し &各秒=0,59 行追加 [度]=&度,[分]=&各分,[秒]=&各秒 繰り返し終了 繰り返し終了 繰り返し終了 | |||
29990 | Re:60進数から10進数の変換 | はつじい | 2005/05/19-11:53 |
記事番号29989へのコメント 今村 誠さん有り難う御座います。 ゆっくり検討させていただきます。 | |||
29992 | Re:60進数から10進数の変換 | はつじい | 2005/05/19-20:26 |
記事番号29989へのコメント 今村 誠さん、有り難う御座います >はつじいさんこんにちは、計算式によって答えが違うようです。 >60)#mod(#時間数値(#時間値(#str(#int([い]))+":"+#str(#int(#mod([い],1) >*100))+":"+#str(#int(#mod([い],0.01)*10^4))),1),360) >う)#int(#mod([い],360))+#int(#MOD([い],1)*100)/60+(#int(#MOD >([い],0.01)*10000)/60)/60 >え)#整数([い])+(#整数(#MOD([い],1)*100)/100)*100/60+(#MOD([い],1)-(# >整数((#MOD([い],1))*100)/100))*10000/3600 >60)と う)え)では1分12秒や1分30秒等では答えが微妙に違うようです。 >え)は360度以上では間違うようです。 >2度59分60秒等の誤った情報を入力するときも微妙に違うようです。 角度ですから60進数より60進角の方がよいと思いますので進角とします 1分12秒と 1分30秒は 10進角では 0.02度 0.025度です 桐では0.01999999999999999 002499999999999999と表示されます。 必要な桁数で四捨五入が必要かと思います 又、360度以上は #条件選択([あ] <0 ,[あ]+360,1,[あ]-#整数([あ]÷360)×360)で計算しておくと 良いと思います。 |