美文网首页
for循环作业

for循环作业

作者: 蘑菇plus | 来源:发表于2018-07-22 17:03 被阅读0次
  1. 求s=a+aa+aaa+aaaa+aa...a的值,其中a是⼀一个数字。例例如2+22+222+2222+22222(此时共有5个数相
    加),⼏几个数相加有键盘控制。
e=0
f=0
a=int(input('请输入a的值:'))
number=int(input('请输入相加的次数:'))
while number>=0:
    e=10**e+a
    f=f+e
    number-=1
print(f)

结果:请输入a的值:2
请输入相加的次数:3
2468
  1. 打印图形1
    n = 4
    @
    @@
    @@@
    @@@@
line=0
while line<5:
    tmp=line
    while tmp>0:
        print('*',end='')
        tmp-=1
    print()
    line+=1
结果:
*
**
***
****

n = 5
@
@@
@@@
@@@@
@@@@@

line=0
while line<6:
    tmp=line
    while tmp>0:
        print('*',end='')
        tmp-=1
    print()
    line+=1
结果:
*
**
***
****
*****
  1. 打印图形2
    n = 3
    @
    @@@
    @@@@@
f=int(input('请输入一个数字:'))
for i in range(f):
    s='*'*(1+2*i)
    print(s.center(1+2*f))
结果:
   请输入一个数字:3
   *   
  ***  
 ***** 
  1. 打印图形3
    n = 3
    @@@
    @@
    @
line=3
while line>0:
    tmp=line
    while tmp>0:
        print('*',end='')
        tmp-=1
    print()
    line-=1
结果:
***
**
*
  1. 输⼊入两个正整数m和n,求其最⼤大公约数和最⼩小公倍数。
m = input('输入 m:')
n = input('输入 n:')
count = 1
for i in range(0,int(m)):
    num1 = int(m) - i
    if (int(m) % num1 == 0) and (int(n) % num1 ==0):
        print(' of %s and %s 的最大公约数是 %d'%(m,n,num1))
        break
while True:
    num2 = count*int(m)
    if num2 % int(n) == 0:
        print(' %s and %s 的最小公倍数是 %d'%(m,n,num2))
        break
    count += 1
结果:
请输入一个数:7
请输入另一个数:8
 of 7 and 8 的最大公约数是 1
 7 and 8 的最小公倍数是 56
  1. ⼀一个数如果恰好等于它的因⼦子之和,这个数就称为 "完数 "。例例如6=1+2+3.编程 找出1000以内的所有完数
list=[]
for m in range(1,1001):
    sum = 0
    for i in range(1,m):
        if m%i==0:
            sum+=i
    if sum==m:
        list.append(m)
print('完数是:',list)
结果:[6, 28, 496]
  1. 输出9*9⼝口诀
for m in range(1,10):
    for n in range(1,10):
        if n>m:
            continue
        print('%d*%d=%d' % (m,n,m*n),end=' ')
    print()
结果:
1*1=1 
2*1=2 2*2=4 
3*1=3 3*2=6 3*3=9 
4*1=4 4*2=8 4*3=12 4*4=16 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 
  1. ⼀一个5位数,判断它是不不是回⽂文数。即12321是回⽂文数,个位与万位相同,十位与千位相同。
w=input('请输入一个5位数:')
if w[::-1]==w:
    print('这是一个回文数')
else:
    print('这不是一个回文数')
结果:请输入一个5位数:12321
这是一个回文数
  1. 打印图形(菱形)

for i in range(4):
    s='*'*(2*i+1)
    print(s.center(8))
    if s==7:
        continue
m=3
while m>0:
    s='*'*(2*m-1)
    m-=1
    print(s.center(8))
结果:
   *    
  ***   
 *****  
******* 
 *****  
  ***   
   *    
  1. 输⼊入⼀行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
number1=0
number2=0
number3=0
number4=0
str1=input('请输入一串字符:')
list1=list(str1)
for i in list1:
    if i==' ':
        number1+=1
    if 'A'<=i<='Z' and 'a'<=i<='z':
        number2+=1
    if '0'<=i<='9':
        number3+=1
    else:
        number4+=1
print('空格的数量为:%d,字母的数量为:%d,数字的数量为:%d,其他字符数量为:%d'%(number1,number2,number3,number4))
结果:空格的数量为:2,字母的数量为:0,数字的数量为:3,其他字符数量为:7

列表作业

1.已知⼀个列表,求列表中⼼元素。

list1=[8,7,5,3,8]
m=len(list1)
if m==0:
    print('列表里无元素!')
if m%2==0:
    print('列表里有二个中心元素,中心元素为:%d,%d'%(list1[int((m/2)-1)],list1[int(m/2)]))
else:
    print('列表有一个中心元素,中心元素为:%d'%(list1[int(m/2)]))
结果:5

2.已知⼀个列表,求所有元素和。

list1=[8,7,5,3,5]
sum=0
for i in list1:
    if not (isinstance(i, int) or isinstance(i, float)):
        break
    sum+=i
print('列表元素的和为:',sum)

结果:28

3.已知一个列表,输出所有奇数下标元素。

list1=[8,7,5,3,8]
for i in range(5):
    if not i%2==0:
       print(list1[i],end=" ")
结果:7 3

4.已知⼀个列表,输出所有元素中,值为奇数的。

list1=[8,7,5,3,8]
for i in list1:
    if not i%2==0:
       print(i,end=" ")
结果:7 5 3 

5.已知⼀个列表,将所有元素乘二。

list1=[8,7,5,3,8]
list1=[i*2 for i in list1]
print(list1)
结果:[16, 14, 10, 6, 16]

6.已知⼀个列表,将所有元素加到第一个元素中。

list1=[8,7,5,3,8]
for i in list1:
    if i==list1[0]:
        continue
    m=list1[0]+i
    list1[0]=m
print(list1)
结果:[31, 7, 5, 3, 8]

7.已知⼀个列表A,将奇数位置元素存到B列表中,偶数元素存到C列表中。

list1=[8,7,5,3,8]
list2=[]
list3=[]
for i in range(len(list1)):
    if i%2==0:
        list3.append(list1[i])
    else:
        list2.append(list1[i])#在if--else语句中间不能加其他语句
print(list3)
print(list2)
结果:
[8, 5, 8]
[7, 3] 

8.把A列表的前5个元素复制到B列表中。

list1=[8,7,5,3,8,9,7]
list2=[]
list2=list2+list1[0:5]
print(list2)
结果:[8, 7, 5, 3, 8]

9.把1----36分别放入列表中,计算列表数组对角元素之和。6 * 6的列表

list9 = [1,  2,  3,  4,  5,  6,
         7,  8,  9, 10, 11, 12,
         13, 14, 15, 16, 17, 18,
         19, 20, 21, 22, 23, 24,
         25, 26, 27, 28, 29, 30,
         31, 32, 33, 34, 35, 36]
sum=0
for m in range(len(list9)):
    if m in range(0,len(list9),7):
        sum+=list9[m]
    elif m in range(5,len(list9),5):
        sum+=list9[m]
print(sum)
结果:222

10.有⼀个长度是10的列表,列表内有10个不重复的数字,要求按从⼤大到⼩小排序。

list1=[87,7,5,3,8,9,7,45,65,20]
list1.sort(reverse=True)
print(list1)
结果:
[87, 65, 45, 20, 9, 8, 7, 7, 5, 3]

11.有⼀个长度是10的列表,要求删除某⼀个位置的元素

list1=[87,7,5,3,8,9,7,45,65,20]
for n in range(10):
    list1.pop()
    print(list1)
结果:[87, 7, 5, 3, 8, 9, 7, 45, 65]
[87, 7, 5, 3, 8, 9, 7, 45]
[87, 7, 5, 3, 8, 9, 7]
[87, 7, 5, 3, 8, 9]
[87, 7, 5, 3, 8]
[87, 7, 5, 3]
[87, 7, 5]
[87, 7]
[87]
[]

12.有⼀个⻓度是10的列表,按递增排列,⽤户输⼊⼀个数,插⼊适当位置。

m=int(input('请输入一个数:'))
list1=[1,3,5,7,8,9,32,45,65,720]
for n in range(10):
    if m<=list1[n]:
        list1.insert(n+1,m)
        break
print(list1)
结果:[1, 3, 5, 7, 8, 9, 9, 32, 45, 65, 720]

13.有一个长度是10的列表,数
组内有10个人名,要求去掉重复的


list1=['dandan','aoli','aoli','dandan','gaoya','dandan','gaoya','dandan','gaoya','gaoya']
list2=[]
for n in list1[:]:
    if n not in list2:
        list2.append(n)
list1=list2
del list2
print(list1)
结果:['dandan', 'aoli', 'gaoya']

14.把A列表的第三到第六位之间的元素删除。

list1=['dandan','aoli','aoli','dandan','gaoya','dandan','gaoya','dandan','gaoya','gaoya']
del list1[2:6]
print(list1)
结果:
['dandan', 'aoli', 'gaoya', 'dandan', 'gaoya', 'gaoya']

15.已知A列列表,B列列表,定义⼀一个列列表C,要求C包含A,B数组中的数据(⽆无重复值)。

list1=['dandan','aoli','aoli','dandan','gaoya','dandan','gaoya']
list2=['ok','no','fun','fun']
list3=[]
list4=list1+list2
for i in list4:
    if i not in list3:
        list3.append(i)
del list4
print(list3)
结果:['dandan', 'aoli', 'gaoya', 'ok', 'no', 'fun']

相关文章

  • 循环作业

    求1到100之间所有数的和、平均值for循环 while循环 计算1-100之间能3整除的数的和for循环 whi...

  • for循环作业

    求s=a+aa+aaa+aaaa+aa...a的值,其中a是⼀一个数字。例例如2+22+222+2222+2222...

  • #作业2017.6.10实践作业走起2-3

    作业triangle,循环走起

  • Shell

    时间命令 循环作业

  • 循环练习--作业

    //1、风力预警系统有如下标准:普通风力小于5级,为蓝色;大于5小于8,为黄色;大于8小于10为橙色;大于10位红...

  • for循环语句作业

    作业: 1、找出1-99之间是7的倍数或者个位数字是7或者十位数字是7的数字, 并输出这些数字,统计有多少个。 2...

  • 备教《阿长与<山海经>》之困恼

    终日埋头在教学中:备课,批改作业,备课,批改作业……无限循环! 然而,如此无限循环,我依然无法在其...

  • kettle循环问题

    循环只能在做作业中实现,在转换中出现循环会报错

  • ex33 while循环

    ex33 作业代码 for循环和while循环有什么区别?for循环只能对某种事物的集合做循环,而while可以进...

  • 作业集・入门篇| 003 多多益善

    一、作业内容 1、找出至少一个在生活中循环的案例,并明确循环条件和循环体,比如: 循环:吃饭循环条件:没吃饱循环体...

网友评论

      本文标题:for循环作业

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