美文网首页
2018-09-29 day5-作业

2018-09-29 day5-作业

作者: 高宇的简书昵称 | 来源:发表于2018-09-30 14:05 被阅读0次

    编程实现(for和while各写 遍):

    1. 求1到100之间所有数的和、平均值 2. 计算1-100之间能3整除的数的和
    sum1=0
    for i in range(1,101):
        sum1+=i
    print(sum1)      #5050
    print(sum1/100)  #50.5
    
    sum2=0
    sum1=1
    while sum1<=100:
        sum2+=sum1
        sum1+=1
    print(sum2)     #5050
    print(sum2/100) #50.5
    
    1. 计算1-100之间 能被3整除的数的和
    sum1=0
    for sum2 in range(100):
        if sum2 % 3==0:
            sum1+=sum2
    print(sum1)       #1683  
    
    sum1=0
    sum2=1
    while sum2<=100:
        if sum2%3==0:
            sum1+=sum2
        sum2+=1
    print(sum1)   #1683
    

    稍微困难

    1. 求斐波那契数 中第n个数的值:1,1,2,3,5,8,13,21,34....
    i=3
    n_2=1
    n_1=1
    current=1     #当前值
    if n <=2:
        print(1)
    while   3<=i <=6:
        current=n_2+n_1
        n_2=n_1
        n_1=current
        i+=1
    print(current)
    
    
    
    
    1. 判断101-200之间有多少个素数,并输出所有素数。判断素数的 法: 个数分别除2到sqrt(这个
      数),如果能被整除,则表明此数 是素数,反之是素数
    b=0
    for num in range(101,201):
        s=num**0.5
        s=int(s)+1
    
        for a in range(2,s) :
            if num%a==0:
                break
        else:
            b +=1
    print(b)       #21
    
    
    b=0
    for num in range(101,201):
        for x in range(2,num):
            if num %x==0:
                break
        else:
            b+=1
            print('%d是素数'%(num))
    print('有',b,'个素数',sep='')
    101是素数
    103是素数
    107是素数
    109是素数
    113是素数
    127是素数
    131是素数
    137是素数
    139是素数
    149是素数
    151是素数
    157是素数
    163是素数
    167是素数
    173是素数
    179是素数
    181是素数
    191是素数
    193是素数
    197是素数
    199是素数
    有21个素数
    
    1. 打印出所有的 仙花数,所谓 仙花数是指 个三位数,其各位数字 和等于该数本身。 如:153是
      个 仙花数,因为153 = 1^3 + 5^3 + 3^3
    d=0
    for i in range(100,1000):
            a=i%10
            b=i//10%10
            c=i//100
           if  i==a**3+b**3+c**3:
                  d+=1
           print(i)
           print(d)
    
    1. 有 分数序 :2/1,3/2,5/3,8/5,13/8,21/13...求出这个数 的第20个分数
      分 :上 个分数的分 加分 分 : 上 个分数的分 fz = 2 fm = 1 fz+fm / fz
    
    fz=2
    fm=1
    for _ in range(19):        #整体循环完成19次,第一次前面条件已经拥有
        print('%d/%d'%(fz,fm))
        fz,fm=fz+fm,fz         #赋值fz=fz+fm    fm=fz
    print('%d/%d'%(fz,fm))    
    a=1
    b=1
    c=1
    c=int(c)
    d=0
    e=1
    f=0
    f=int(f)
    i=1
    while  i<=20:
    c=a+b
    a=b
    b=c
    f=d+e
    d=e
    e=f
    i=+=1
    print(c"/"f)
    
    1. 给 个正整数,要求:1、求它是 位数 2.逆序打印出各位数字
    num=16723
    num2=0
    while num !=0:
        num2+=1
        num //= 10
    print(num2,'位数')        #5位数
    
    num=16723
    num=str(num)
    print('位数:',len(num))   #位数: 5
    

    相关文章

      网友评论

          本文标题:2018-09-29 day5-作业

          本文链接:https://www.haomeiwen.com/subject/uoyboftx.html