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


HSPTV!掲示板


未解決 解決 停止 削除要請

2020
0227
えてるなほかの言語7未解決


えてるな

リンク

2020/2/27(Thu) 11:57:38|NO.89568

単純な計算、たとえば1から10までの合計みたいな・・・
そんな計算させるのに適した、ほかのおすすめの言語ありますか?



この記事に返信する


X

リンク

2020/2/27(Thu) 17:16:49|NO.89570

えくせるでいいのではないかと。



メルクーフ

リンク

2020/2/28(Fri) 19:24:42|NO.89579

 Vectorなんかで公開されているBASIC系のフリーソフトはどうでしょうか?
 HSPもBASICを基にしている部分もありますから、BASICなら楽に使える気がします。
 実行形式ファイルは作成できないようですが、単純な計算をするだけなら十分かと。
 例えば『十進BASIC』ならサンプルスクリプトも豊富です。



k

リンク

2020/2/28(Fri) 21:49:44|NO.89582

webでよければpaizaっていうのもありかと
https://paiza.io/ja

rubyが意外とシンプルかな
コードは残るのかな
https://paiza.io/projects/vajc8UuGgI4kfBoaegAMmA



GENKI

リンク

2020/2/29(Sat) 15:26:33|NO.89590

HSPでいいじゃないかと思いつついくつか上げてみました。
ExcelとMATLAB以外は無料で入手可能です。


・Excel / Google スプレッドシート

=sum(1,2,3,4,5,6,7,8,9,10)
または、A1〜A10セルに「=row()」を入力して、適当なセルに次のように書く。

=sum(A1:A10)
見た目での理解しやすさが一番。でもそもそも言語じゃない。


・HSP

repeat 10 a(cnt) = cnt+1 loop ; a = 1,2,3,4,5,6,7,8,9,10 sum = 0 foreach a sum += a(cnt) loop mes sum
プログラミング初心者には一番とっつきやすい書き方になる言語だと思います。


・JavaScript

const a = [...Array(10).keys()].map(i => ++i) // const a = [1,2,3,4,5,6,7,8,9,10]; let sum = 0; a.forEach(function(v){ // reduceっていうのもある sum += v; }) alert(sum)
ブラウザ上で動く手軽さ。困ったときに検索するとすぐに情報みつかるので助かります。
同じ動作でもいろんな表現方法が出来るので、プログラム入門者には向かないかも。


・MATLAB / GNU Octave

sum([1:10])
計算だけなら最強の書きやすさ。計算だけなら。


・コマンドプロンプト(バッチファイル)

@echo off setlocal enabledelayedexpansion set sum=0 for /l %%n in (1,1,10) do ( set /p X=計算中... !sum!+%%n = <NUL set /a sum=!sum!+%%n echo !sum! ) echo 合計=!sum! endlocal pause
計算が最も苦手な言語。うかつに手を出してはいけない。
でも計算をする実行ファイル呼び出しは得意。



計算だけならMATLABが書きやすさ最強じゃないでしょうか。
無料で入手できるGNU Octaveがいいかも。



GrapeColor

リンク

2020/2/29(Sat) 16:59:25|NO.89593

rubyなら
例えば1から10の範囲で全て足し合わせたいなら

puts (1..10).inject(:+)
範囲オブジェクトに対して、injectメソッドに計算させたい演算子のシンボルを渡してあげれば簡単に計算することができます



yuki

リンク

2020/2/29(Sat) 21:11:12|NO.89596

powershellならインストール不要だしコンソールから入力できるのでファイルに書く必要もないです。
演算子が独特で覚えにくいですが。


for($($i=1;$j=0);$i -le 10;$i++){$j+=$i}` Write-Output $j



沢渡

リンク

2020/3/1(Sun) 13:49:36|NO.89601

ちょっと議題から外れるかもしれませんが、
「StrCalc」というDLLをHSPで使うためのモジュールを作ってみました。
「文字列の形の計算式を計算して結果を返す」というもので、色々と関数も用意されています。
以下、モジュールです。

// "hspscalc.as"という名前で保存し、ソースコードと同じフォルダに入れること。 // // 数値計算DLL「StCalc 3.5」をHSPで使うためのモジュール。 // // 以下のDLLをダウンロードし、"stcalc35.dll"を実行ファイルもしくはソースコードと // 同じフォルダに入れた上で、ソースコードの冒頭に「#include "hspscalc.as"」と書き加えてください。 // https://www.vector.co.jp/soft/win95/prog/se348215.html // //・stcal(p1,p2,p3) // p1:計算式の書かれた文字列 // p2(0.0):計算式内の「x」をこの数値で置き換える。省略可。 // p3(0.0):計算式内の「y」をこの数値で置き換える。省略可。 //p1で表される式を計算し、計算結果を実数で返します。 //詳しい式の書き方は「StCalc 3.5」のマニュアルを参照してください。 //実行後、statにはエラーコードが入ります。(正常終了時は0) // //・stcal2(p1,p2,p3,p4) // p1:計算式の書かれた文字列 // p2:計算式内で使われる「メモリ」の内容が入った実数配列。 // p3(0.0):計算式内の「x」をこの数値で置き換える。省略可。 // p4(0.0):計算式内の「y」をこの数値で置き換える。省略可。 //p1で表される式を計算し、計算結果を実数で返します。 //その際、計算式内で「メモリ」を参照する場面がある場合、p2の内容が参照されます。 //詳しい式の書き方や「メモリ」については「StCalc 3.5」のマニュアルを参照してください。 //実行後、statにはエラーコードが入ります。(正常終了時は0) #ifdef __hsp30__ #ifndef __HSPSCALC__ #define global __HSPSCALC__ #module #uselib "stcalc35.dll" #func global StrCalc "StrCalc" int #func global bStrCalc "_bStrCalc@28" sptr,int,double,double,int #func global sc35_reset "_sc35_reset@0" #define global ctype stcal(%1,%2=0.0,%3=0.0) _stcal(%1,%2,%3) #defcfunc _stcal str _s,double x,double y,local s mref st,64 r=0.0 : s=_s bStrCalc varptr(s),0,x,y,varptr(r) _stat=stat if stat : sc35_reset st=_stat return r #define global ctype stcal2(%1,%2,%3=0.0,%4=0.0) _stcal2(%1,%2,%3,%4) #defcfunc _stcal2 str _s2,array a2,double x2,double y2,local s2 mref st,64 r=0.0 : s2=_s2 bStrCalc varptr(s2),varptr(a2),x2,y2,varptr(r) _stat=stat if stat : sc35_reset st=_stat return r #deffunc hoge x=1 return #global #endif #endif
以下はサンプルになります。

#include "hspscalc.as" ddim a,10 : repeat 10 : a(cnt)=double(cnt+1) : loop mes stcal2("sum(10)",a) //合計 mes stcal2("mean(10)",a) //平均 mes stcal2("sd(10)",a) //標準偏差



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