python作业3(2018.12.2)

题目:

15.x=360,780,36,150,56,12  y=128,1620,72,500,36,28试计算所有记录中字段变量x和y的最小公倍数。

16.编程:根据键盘输入变量x的值,计算y的值。

                      |x|    (x<0)

y=

                      √x    (x>=0)

17.编程:根据键盘输入变量x的值,计算y的值。

                    |x|   (x<0)

              y=    X^2   (0<=x<100)

                   √x   (x>=100)

18.编程:计算100以内奇数之和。

19.编程:计算100以内所有5和7的倍数之和。

20.编程:计算1+(1+3)+(1+3+5)+……+(1+3+5+……+99)

 

21.编程:计算1*2+2*3+3*4+……+19*20

22.编程:计算1*2+3*4+5*6+……+19*20

23.编程:计算100以内2的倍数和,不是2的倍数但是3的倍数和,不是2的倍数也不是3的倍数之和。

 

答案

15.

x=[360,780,36,150,56,12]
y=[128,1620,72,500,36,28]
for i in x:
    for j in y:
        if i>j:
             max=i
        else:
             max=j
        for n in range(max,i*j+1,1):
             if n%i==0 and n%j==0:
                 print(i,"和",j,"的最小公倍数:",n,end="")
                 break   #一定要有break
        print("\n")

16.

import math    #在最顶端写
def f(x):
    if x<0:
        return abs(x)  #用print不行
    else:
        return math.sqrt(x)
    

17.

import math    #在最顶端写
def f(x):
    if x<0:
        return abs(x)
    elif 0<=x<100:  #else if 不行
        return  x**2
    else:
        return math.sqrt(x)
    

18.

def f():
    sum=0
    for i in range(1,100,2):
        sum+=i
    return sum

结果:2500

 

19.

def f():
    s=1
    for i in range(1,100,1):
        if i%5==0 and i%7==0:
            s*=i
    return s

结果:2450

20.

sum=0
for i in range(1,100,2):
    for j in range(1,i+1,2):
        sum=sum+j
print(sum)

结果:42925

21.

sum=0
for i in range(1,20,1):
    sum=sum+i*(i+1)
print(sum)

结果:2660

 

22.

sum=0
for i in range(1,20,2):
    sum=sum+i*(i+1)
print(sum)

结果:1430

23.

sum1=0
sum2=0
sum3=0
for i in range(101):
    if i%2==0:
        sum1+=i
    if i%2!=0 and i%3==0:
        sum2+=i
    if i%2!=0 and i%3!=0:
        sum3+=i
print("100以内2的倍数和:",sum1,end="")
print("\n")
print("不是2的倍数但是3的倍数和:",sum2,end="")
print("\n")
print("不是2的倍数也不是3的倍数之和:",sum3,end="")

 

结果:

100以内2的倍数和: 2550

不是2的倍数但是3的倍数和: 867

不是2的倍数也不是3的倍数之和: 1633 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值