Python×インド式算数⑤2桁×11、4桁×11について





 ということで本日は11とのかけ算ですね。

 34×11であれば、
 ①3と4を左右に引っ張ります。間には2桁‐1で1個スペースを空けます。
 ②ふたつの数を足して3+4=7とします
 なので答えは374となります。

 では8649×11はどうなるかということですが、
 ①8と9を左右に引っ張ります。間のスペースは4桁-1で3個ありますね。
 ②先頭から8+6、6+4、4+9をそれぞれ計算します。
 それぞれ14、10、13ですね。これをスペースに入れます。
 筆算風に書くとこうなりますね。
 8
 14
   10
   13
     9
 --------
 95139
 となり答えは95139ですね。



 以下はコードですね。
 2桁×11
 
import random
num1 = random.randint(1,9)
num2 = random.randint(1,9)
num3 = 1
print(num1,num2,num3)
hoge = 10*num1 + 1*num2
hage = 10*num3 + 1*num3
print(hoge)
print(hage)
print(hoge, "*", hage)
print('①数を左右に引っ張る②分けた数を足した数が間に入る')
hege = hoge * hage
print(hege)
print('答えは?')
while True:
  e =int(input('>>'))
  if e == hege:
    print('正解!天才!!素晴らしい!')
    break
  else:
    print('やり直し')
    continue

 4桁×11の計算
import random
num1 = random.randint(1,9)
num2 = random.randint(1,9)
num3 = random.randint(1,9)
num4 = random.randint(1,9)
num5 = 1
print(num1,num2,num3)
hoge = 1000*num1 + 100*num2 +10*num3 +1*num4
hage = 10*num5 + 1*num5
print(hoge)
print(hage)
print(hoge, "*", hage)
print('①左右の数を左右に引っ張る②桁数―1が間のスペース数=計算数③左から2個ずつ足して間を埋めていく')
hege = hoge * hage
print(hege)
print('答えは?')
while True:
  e =int(input('>>'))
  if e == hege:
    print('正解!天才!!素晴らしい!')
    break
  else:
    print('やり直し')
    continue

 となりますね。
 ちなみに3桁×11は本に載ってなかったのでここでやってみようと思います(笑)
 123×11であれば
 ①1と3を左右に開いて、間のスペースは3桁ー1で2個ですね。
 ②先頭から、1+2=3、2+3=5となりますのでスペースに入れます。
 すると1353となりますね。
 電卓で計算すると合ってました(笑)
 ということで3桁×11のコードも貼っておきますので、またご活用ください。
 (使わないか(笑))


 3桁×11
import random
num1 = random.randint(1,9)
num2 = random.randint(1,9)
num3 = random.randint(1,9)
num4 = 1
print(num1,num2,num3)
hoge = 100*num1 + 10*num2 +1*num3
hage = 10*num4 + 1*num4
print(hoge)
print(hage)
print(hoge, "*", hage)
print('①左右の数を左右に引っ張る②桁数―1が間のスペース数=計算数③左から2個ずつ足して間を埋めていく')
hege = hoge * hage
print(hege)
print('答えは?')
while True:
  e =int(input('>>'))
  if e == hege:
    print('正解!天才!!素晴らしい!')
    break
  else:
  print('やり直し')
  continue







この記事へのコメント

にほんブログ村 ゲームブログ ゲーム評論・レビューへ
にほんブログ村