クイズ大陸



履歴 検索 最新 出題

No. 7≫ No.8 ≫No. 9
?マキチャン 2008/05/31 13:15
>電卓では計算できないのですが
パソコンの電卓でできませんか?

EXCEL VBAで次のようにして計算させました。


Sub aaaaaaaaaaa()
K = 10
For I = 1 To 10000000000#
A = I * I
Select Case I
Case 0 To 9
B = 1
Case 10 To 99
B = 2
Case 100 To 999
B = 3
Case 1000 To 9999
B = 4
Case 10000 To 99999
B = 5
Case 100000 To 999999
B = 6
Case 1000000 To 9999999
B = 7
Case 10000000 To 99999999
B = 8
Case 100000000 To 999999999
B = 9
Case 1000000000 To 9999999999#
B = 10

End Select

C = A - (Int(A / (10 ^ B))) * 10 ^ B

If C = I Then
Sheets("sheet1").Cells(K, 1) = I

K = K + 1
End If

Sheets("sheet1").Cells(1, 1) = I

Next

End Sub

結果は以下の通り

1
5
6
25
76
376
625
9376
90625
109376
890625
2890625
7109376
12890625

8けたになるまで4時間ぐらいかかりました。
なので、途中でやめましたが、続ければ10桁ぐらいまでは出せそうですね。
もっと、賢いVBAの組み方があるはず。誰か教えて。
返信 編集