• ベストアンサー

簡単なプログラミングだと思うのですが・・・

 自然数m,nの掛け算を足し算の繰り返しで計算するプログラムを作成したいのですが、プログラミングの本を見ても全く分かりません。 悩みの種です・・・

質問者が選んだベストアンサー

  • ベストアンサー
noname#9414
noname#9414
回答No.1

m*nですよね。 mをn回足せばいいのではないでしょうか? for分か何かを使って、 for i = 1 to n かな?VBは最近さわってないから、 おかしいかもしれませんが、 sum = 0 for 1~nを数える  sum = sum + m 繰り返し これでいいと思いますが・・・ ではでは☆

sonicgear
質問者

お礼

長い間お礼をせずマコトに申し訳ありません!     これからは即・お礼&締め切りします!!       最も分かり易く非常に参考になりました。       アリ・ガトー・ショコラ♪    

その他の回答 (2)

回答No.3

いきなり、答えを書いてしまうのもなんかな?と思ったのですが、 関数を作ってみました。 こいつを Kotae = Hoge(3,4) という風に呼ぶと、3が4回足されて12。 すなわち、3*4になります。 ただし、MやNの値が、マイナスの場合は、どうかな? たぶん、これでいいと思うけど。 M=-3 N=4の場合は、-12になるよね。 M=3 N=-4の場合は、-12ですね。 M=-3 N=-4の場合は、12で、OKですね。 よって、以下の関数でOKだと思います。 まあ、もっと「エレガント」な方法もあると思いますが、べたで書くと、 このようになりますね。 Function Hoge(lngM As Long,lngN As Long) As Long Dim lngLoopCnt As Long 'ループカウンタ '戻り値の初期化 Hoge = 0 'N回ループする。 For lngLoopCnt = 1 To Abs(lngN) IF lngN > 0 THEN '引数Mを加算する。 Hoge = Hoge + lngM Else Hoge = Hoge - lngM End If Next End Function

sonicgear
質問者

お礼

長らくお待たせしまして誠にすみませんでした。 一番長く丁寧に書かれてあったのですが、初心者も初心者の僕にはサッパリ意味が分かりませんでした。 知識が足り無い様なんで、これから勉強して分かる様なりたいです。 

  • coolguys
  • ベストアンサー率18% (351/1917)
回答No.2

mをn回足していくと 掛け算になるので、 for文で1からnまでループする。 で、合計にmを毎回足していく という、プログラムでOKだと思います。

sonicgear
質問者

お礼

長い間お待たせさせてしまって非常に申し訳が無いです。簡潔に無駄無く御説明して戴き、有り難かったです。

関連するQ&A