スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[WP]no.003 無限桁の足し算

HSPで。
製作時間20分

桁の制限の無い、符号なし整数の足し算をします。
情報の保持は文字列。手抜き。hspだからね

integerで計算できるところを部分的に計算し、桁上がりを判定、保持。

空文字列からマイナス文字取り出せ、という状況が発生しますが、空文字が返ってくるだけなので無視。
c等に移植する場合は、このあたりを考えるべき。
もっとも、javaやC#ならbiginteger等を使うべきです。

#const INT_MAX 2147483647
#const INT_DIGIT10 9

d1 = "94623523452452453456"
d2 = "959451131471135165416"
// 1054074654923587618872
//d1 = "1"
//d2 = "999999999999999999999"
//d1 = "123456789123456789123"
//d2 = "876543210876543210876"
result=""

dig1 = strlen(d1)
dig2 = strlen(d2)

digr = 0
ri = 0
carry = 0
repeat
if (dig1<=INT_DIGIT10 && dig2<=INT_DIGIT10){
r = int(d1) + int(d2) + carry
result = str(r) + result
break
}
dig1 -=INT_DIGIT10
dig2 -=INT_DIGIT10
e1 = strmid(d1,dig1,INT_DIGIT10)
e2 = strmid(d2,dig2,INT_DIGIT10)
d1 = strmid(d1,0,dig1)
d2 = strmid(d2,0,dig2)
r = int(e1) + int(e2) + carry
carry = r>=powf(10,INT_DIGIT10)
rs=str(r)
result = strmid(rs,-1,INT_DIGIT10) + result
loop

mes result

stop
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

tag : HSP3 アルゴリズムとデータ構造

コメントの投稿

非公開コメント

ブログ移転のお知らせ
ブログをshonen.hateblo.jpに移転します. 新規の記事はこちらに投稿します.
プロフィール

舞葉(ぶよう)

Author:舞葉(ぶよう)
github.io
はてなブログ(競プロ)

古い記事のソースコードは色分けしていないので、高機能テキストエディタに貼り付けたほうが見やすいかも。

検索フォーム
このブログについて
自分がつまづいた話題、なんとなく書きたいと思ったこと、ググったけど殆ど資料なかったぞオイ な話等をアップする予定。通りすがりでも、参考になっていただければと。プログラムの例外入力、メモリリークは責任負いません。投稿された記事は修正・削除する場合があります。
カテゴリ
タグ

HSP3アルゴリズムとデータ構造c++RubyJavaUnity画像解析C機械学習C#LinuxcodeIQKinectMinecraftTonyuSystemraspberrypiPythonHTML5音声制御Simulinkruby俺ルール通信制御Javascriptシミュレーション

counter-shinobi
固定記事
最新記事
最新コメント
月別アーカイブ
ブロとも申請フォーム

この人とブロともになる

アクセスランキング
[ジャンルランキング]
コンピュータ
995位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
199位
アクセスランキングを見る>>
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。