Python育兒系列-python生成豎式運算

豎式運算包括 100以內加減法 1000以內加減法(借位的、不借位的、進位的、不進位的),直接複製打印結果到word裏面,調整好格式,小孩子就可以盡情的答題了。
建議使用橫版打印,比較省紙

100 以內加法

#100 以內加法
# 不進位
import random
for i in range(0,100):
    #xa+b
    a=random.randint(0,8)
    b=random.randint(1,9-a)
    x=random.randint(0,9)
    va = x*10 +a
    print(va ,' + ',b,' = (    ) ')
    if x==0 :
        x=' '
    print('    ',x,' ', a)
    print('  +     ', b)
    print('-------------')
    print()



100 以內減法

#100 以內減法
# 不借位
import random
for i in range(0,100):
    #xb-a
    a=random.randint(1,8)
    b=random.randint(1+a,9)
    x=random.randint(0,9)
    vb = x*10 +b
    print(vb ,' - ',a,' = (    ) ')
    if x==0 :
        x=' '
    print('    ',x,' ', b)
    print('  -     ', a)
    print('-------------')
    print()



1000 以內加減混合運算(不進位、不借位)

#1000 以內加減混合運算
# 不進位
# 不借位

import random
def subbbb():
    ### abcd-a1b1c1d1
    a=random.randint(1,9)
    b=random.randint(1,9)
    c=random.randint(1,9)
    d=random.randint(1,9)
    a1=random.randint(1,a)
    b1=random.randint(0,b)
    c1=random.randint(0,c)
    d1=random.randint(0,d)

    abcd = a*1000+b*100+c*10+d
    a1b1c1d1 = a1*1000+b1*100+c1*10+d1 
    print(abcd ,'-',a1b1c1d1,' = (    )' )

    print('    ',a,' ',b,' ',c,' ',d)
    print('  - ',a1,' ',b1,' ',c1,' ',d1)
    print('-------------------')
    print()

def adddd():
    ### abcd+a1b1c1d1
    a=random.randint(1,8)
    b=random.randint(0,9)
    c=random.randint(0,9)
    d=random.randint(0,9)
    a1=random.randint(1,9-a)
    b1=random.randint(0,9-b)
    c1=random.randint(0,9-c)
    d1=random.randint(0,9-d)

    abcd = a*1000+b*100+c*10+d
    a1b1c1d1 = a1*1000+b1*100+c1*10+d1 
    print(abcd ,'+',a1b1c1d1,' = (           )' )

    print('    ',a,' ',b,' ',c,' ',d)
    print('  + ',a1,' ',b1,' ',c1,' ',d1)
    print('--------------------------')
    print()
    
for i in range(0,100):
    if random.randint(0,1) ==1:
        adddd()
    else:
        subbbb()

1000 以內加減混合運算(進1位、借1位、混合)

'''
2位加法進1位
2位減法借1位
混合'''

import random
def subbbb():
    ### ab -a1 >10
    # b<a1 
    
    a1=random.randint(1,9)
    a=random.randint(1,9)
    b=random.randint(0,a1-1)
    
    ab = a*10+b 
    print(ab ,'-',a1,' = (         )' )

    print()
    print('    ', a ,' ',b ,' ')
    print('  - ',' ',' ',a1,' ')
    print( '-------------')
    print()

def adddd():
    ### ab+a1
    # b+a1>10
    
    a1=random.randint(1,9)
    a=random.randint(1,8)
    b=random.randint(10-a1,9)
    
    ab = a*10+b 
    print(ab ,'+',a1,' = (         )' )
    print()
    print('    ', a ,' ',b ,' ')
    print('  + ',' ',' ',a1,' ')
    print( '-------------')
    print()
# adddd()  
# subbbb()
for i in range(0,70):
    #subbbb()
    if random.randint(0,1) ==1:
        adddd()
    else:
        subbbb()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章