第24講 10進数をn進数に翻訳する
第6話 文字型に変換なしで翻訳するソフト

コード例
Private Sub CommandButton1_Click()
  Dim x As Long, n As Integer
  x = Cells(8, 3)
  n = Cells(8, 5)
  Cells(10, 3) = f(x, n)
End Sub
Function f(x As Long, n As Integer)
  Dim a As Integer
  a = x Mod n
  x = Int(x / n)
  cn = cn + 1
  If x > 0 Then
    f = 10 * f(x, n) + a
  Else
    f = a
  End If

  
End Function
Private Sub CommandButton2_Click()
  Cells(10, 3).Select
  Selection.ClearContents
End Sub
実行例
入門
実現に成功しています。
ただし、
vb
はすでに限界を超えています。
上の答えは明らかに正しくありません。
奇数ですから一の位は1でなければなりませんから。
文字型へ変換する版より限界が小さいわけです。
Longの限界ですから仕方がありません。

さて、第25講では反対にn進数を10進数に変換することを考えましょう。

第5話へ 第25講第1話

004
  


VBA講義第1部へ
vc++講義へ
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ

数学研究室に戻る