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


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
0205
初心者こんなことってできるんですか?14解決


初心者

リンク

2007/2/5(Mon) 18:03:15|NO.5438

今色々とやっているんですけど、
たとえば642という数があるとするじゃないですか、
その数の百の位、十の位、一の位を足していって、
6+4+2=12、1+2=3
このように一の位になるまで足していきたいんですけど、
やり方が分からないんです。
教えてください。



この記事に返信する


kz3

リンク

2007/2/5(Mon) 18:19:02|NO.5439

あ、ひとりごとでしたね。



初心者

リンク

2007/2/5(Mon) 18:20:42|NO.5440

スルーしないで知っているんでしたら教えてください。



radeon

リンク

2007/2/5(Mon) 18:41:02|NO.5441

数字を文字列に変換して1バイトずつ取り出して数値に戻したものを足していけばできます。
あと、訊きたいことがあるときはなるべく質問カテゴリを設定して下さい。

>>kz3さん
ホントにkz3さんなの?



初心者

リンク

2007/2/5(Mon) 18:47:51|NO.5442

なるほどありがとうございました。
質問にすると、毎回解決のために返事をしないといけないので、
独り言にしたんですけど・・・
やはり質問の方がいいですかね?



kz3

リンク

2007/2/5(Mon) 22:06:44|NO.5447

>>kz3さん
>ホントにkz3さんなの?

はい、私ですよ。
質問かな、と思って「初心者」ながらも真面目な回答(文字列に変換しなくてもいい方法ね)を書いていたのですが、画像がOFFになっていてカテゴリが見えなかったのでONにしてみると"ひとりごと"だったので、書いたものを消して、相応のレスを書いたまでです。ひとりごとを、ね。

>やはり質問の方がいいですかね?

そんなことに頭をまわすより、内容のほうに気を利かせたほうがいいんじゃないかしら。



kon

リンク

2007/2/5(Mon) 23:04:53|NO.5450

独り言で質問するバカはお前以外にいないよ。



GENKI

リンク

2007/2/6(Tue) 00:22:25|NO.5452

> スルーしないで知っているんでしたら教えてください。

ひとりごとなんでしょ?(^-^  (追い討ち)




冗談はさておき…

> 質問にすると、毎回解決のために返事をしないといけないので、

 カテゴリを質問にしてなくても、質問の書き込みをして回答が来たら返事をするのは礼儀ですよ。礼儀をあまり軽んじるとケガしますよ。(ネットでもリアルでも)
教えてほしいと思うのならなおのこと大事なことです。


> 教えてください。

642/100
いくつになりますか?
あとはifと足し算引き算などの組み合わせでできます。
効率悪そうですが、使う命令少ないんで初心者でもわかると思います。


> 書いたものを消して、相応のレスを書いたまでです。ひとりごとを、ね。

うお、結構時間かけて書いてそう…。



l

リンク

2007/2/6(Tue) 17:06:56|NO.5467

独り言を選択して質問するのもあれだが
わざわざ嫌味に書き直す方も大して変わらんな。



初心者

リンク

2007/2/6(Tue) 18:40:30|NO.5470

皆さんすみませんでした。
やはりネットでも礼儀は必要ですね、気をつけます。
ところで、質問の続きをしたいんですけど・・・いいですか?
たとえば3桁の場合だけならいいんですが、
この桁数が4桁や5桁など変わってしまうような場合はどうすればいいんでしょうか?
後、100と999では足す回数が違うじゃないですか、
100は1+0+0=1 で一回
999は9+9+9=27 2+7=9 で二回
この場合はどうすればいいんですか?

話は変わるんですけど、
私は余り掲示板を使ったことがないんです。(使い始めたのが最近)
なのでどのように使えばいいのか分からないんです。
今回も独り言で書き込む込むだけでこんなに対応が違うなんて思いませんでした。
・・・すいませんホントに独り言になってしまいました。



nasinasi

リンク

2007/2/6(Tue) 20:37:51|NO.5471

repeatつかってループにしてstrlenで数字の長さを調べて1になったらbreakで出るとか



GENKI

リンク

2007/2/6(Tue) 20:55:36|NO.5472

ifとgotoの組み合わせでなんとかできます。
それと、一度フローチャートを書いてみてはどうでしょう?


> なのでどのように使えばいいのか分からないんです。

他の人の書き込みをながめてれば雰囲気つかめると思いますよ。
それとHSPWikiにも投稿のための参考資料もあるのでよければどうぞ。



radeon

リンク

2007/2/6(Tue) 20:57:41|NO.5473

>kz3さん
>あ、ひとりごとでしたね。
>相応のレスを書いたまでです。

相応なレスではありません。
もう少し寛容なコメントをした方がいいと思います。



KIMU

リンク

2007/2/7(Wed) 00:30:35|NO.5485

例1:整数値として計算

桁上限=9 指定数=0 objmode 2,0 input 指定数,80,20,桁上限 button gosub "計算開始",*label stop *label objsel 0:color 255,255,255:boxf:color:pos 8,70 mes "指定数="+str(指定数) 計算用指定数 = 指定数 repeat 桁取用=10 計算結果=0 repeat 桁上限 余 = 計算用指定数\桁取用 一桁 = 余/(桁取用/10) 計算結果 + 一桁 mes str(計算用指定数)+"/"+str(桁取用)+" [余り="+str(余)+"] ["+str(cnt+1)+"桁="+str(一桁)+"]" 計算用指定数 - 余 if 桁取用>計算用指定数 {break} 桁取用*10 loop if 計算結果<10 {break} 計算用指定数 = 計算結果 mes "途中結果="+str(計算用指定数) loop pos 8,50:pos 8,50:color 255:mes " [結果="+str(計算結果)+"]" return
整数値の場合扱える桁数が限られる

例2:数字文字列にして計算

桁上限=20 sdim 指定数,桁上限 objmode 2,0 input 指定数,170,20,桁上限 button gosub "計算開始",*label stop *label objsel 0:color 255,255,255:boxf:color:pos 8,80 mes "指定数="+指定数 計算用指定数 = 指定数 repeat 計算結果=0 桁数 = strlen(計算用指定数) repeat 桁数 一桁 = int(strmid(計算用指定数,cnt,1)) ;数字文字を整数値に 計算結果 + 一桁 mes "["+str(桁数-cnt)+"桁="+str(一桁)+"]" loop if 計算結果<10 {break} 計算用指定数 = str(計算結果) ;結果の数値データを文字列に pos 8+(cnt+1)*100,80+(cnt+1)*20 :mes "途中結果="+計算用指定数 loop pos 8,50:color 255:mes " [結果="+str(計算結果)+"]" return
最初から文字列としての数字なら桁数を気にしなくてもいい
途中結果が整数値になるので、そこに限界は有る(まず限界を超える事はないだろうけど・・・)



初心者

リンク

2007/2/7(Wed) 06:08:01|NO.5491

ありがとうございました。
掲示板の使い方についても勉強になりました。



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