基础练习每课一小练

1、给出一个半径,求圆的周长和面积
#圆的周长 = 2 x 3.14 x r
#圆的面积 = 3.14 x r ** 2

r = 2
c = 2 * 3.14 * r
s = 3.14 * r ** 2

print('圆的周长为: ',c,'圆的面积是: ',s)
print('--------------------------------')

r1 = input('请输入圆的半径: ').strip().lstrip('0')
r2 = int(r1)

c1 = 2 * 3.14 * r2
s1 = 3.14 * r2 ** 2

print('圆的周长为: ',int(c1),'圆的面积是: ',int(s1))

 

2、输入两个数,比较大小后,从小到大升序打印

#降序
num1 = input('please input frist number: ')
num2 = input('please input second number: ')

if num1 > num2:
    print(num1,num2,sep='\n')
else:
    if num1 == num2:
        print(num1,num2,sep='\n')
    else:
        print(num2,num1,sep='\n')


#升序
num1 = input('please input frist number: ')
num2 = input('please input second number: ')

if num1 < num2:
    print(num1,num2,sep='\n')
else:
    if num1 == num2:
        print(num1,num2,sep='\n')
    else:
        print(num2,num1,sep='\n')

 

3、依次输入若干个整数,打印最大值,如果输入为空,则退出循环

a = int(input('please input first number: '))
while True:
    b = input('please input another number: ')
    if b:
        c = int(b)
        if c > a:
            d = c
            print(d)
    else:
        break
m = int(input('please input first number: '))
while True:
n = input('please input your number: ')
if not n:
     break
   else:
o = int(n)
if o > m:
m = o
print('max number is: ',m)

 


4、给出一个不超过5位数的正整数,判断该数的位数,依次打印万位、千位、百位、十位、个位的数字

a = '12345'
length = len(a)
print('the number {} length is {}'.format(a,length))
print('数字 {}个位、十位、百位、千位、万位分别是如下所示'.format(a),end='\n')
for i in range(length):
    print(a[-i-1])
print('------------------------------------------')
a = '12345'
length = len(a)
print('the number {} length is {}'.format(a,length))
print('数字 {} 万、千、百、十、个位分别是如下所示'.format(a),end='\n')
#
for i in range(length):
print(a[i])
print('------------------------------------------')

a = int('12345')
b = 10000
for i in range(5):
print(a // b)
a %= b
b //= 10

 

5、给出一个数不超过5位的正整数,判断该数是几位数,依次打印到个位数字。

b ='12345'
length = len(b)
print('the number {} length is {}'.format(b,length))
print('数字 {} 个、十、百、千、万位分别是如下所示'.format(b),end=':')
while length:
print(b[length-1],end=' ')
length -= 1
print()
print('------------------')

b ='12345'
length = len(b)
print('the number {} length is {}'.format(b,length))
print('数字 {} 万、千、百、十、个位分别是如下所示'.format(b),end=':')
while length:
print(b[-length],end=' ')
length -= 1

 

6、输入n个数,求每次输入后的算术平均数
示例:avg =(1 + 2 + 3)/ 3

count = 0
sum = 0
while True:
    a = input('please input your number:')
    if a == 'exit':
        break
    count += 1
    sum += int(a)
    avg = sum/count
    print(avg)

 

# count = 0
# sum = int(input('please input first number: '))
# while True:
#     m = int(input('please input your number: '))
#     if not m:
#         break
#     else:
#         x = int(m)
#     sum =+ m
#     count += 1
#     avg = sum/count
#     print('current avg is: ',avg)

 

7、打印一个边长为n的正方形

n = 6
print('*'*n)
for i in range(n-2):
    print('*'+' '*(n-2)+'*')
print('*'*n)

 

n = 5
for i in range(n):
    if i == 0 or i == n-1:
        print('*' * n)
    else:
        print('*' + ' ' * (n-2) + '*')
n = 5
for i in range(n):
    if i % (n-1) == 0:
        print('*' * n)
    else:
        print('*' + ' ' * (n-2) + '*')

 

8、求100以内所有奇数的和(2500)

count = 0
for i in range(1,101,2):
    count += i
print(count)

count = 0
for i in range(1,100):
    if i % 2 == 0:
        continue
    count += i
print(count)
# 
count = 0
for i in range(1,100):
    if i % 2 != 1:
        continue
    count += i
print(count)

 

count = 0

for i in range(1, 100):
    if i % 2 == 0:
        continue
    count += i
print(count)

 

sum1 = sum(range(1,100,2))
print(sum1)

 

9、成绩问题:判断学生成绩,成绩等级为A到E,其中90分以上的为A 80~90分的为B 70~79为C 60~69为D 60分一下的为E

score > 90         A
80 <= score < =90  B
70 <= score <=79   C
60 <= score <=69   D
score < 60         E

score = 100
if score > 90:
    print('A')
elif 80 <= score <= 90:
    print('B')
elif 70 <= score <= 79:
    print('C')
elif 60 <= score <= 69:
    print('D')
elif 0 <= score < 60:
    print('E')
else:
    print('input error')

 

10、求1到5阶乘之和

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

num = 0
for i in range(1,6):
    sum = 1
    for j in range(1,i+1):
        sum = sum * j
    num += sum
print(num)


11、给出一个数,判断它是否是素数

number = 1777
flag = False
for i in range(2,number):
    if number % i == 0:
        print(number, '不是素数')
        break
else:
    print(number, '是素数')

print('-------------------------')

for i in range(2,number):
    if number % i == 0:
        flag = True
        break
if flag:
    print(number,'不是素数')
else:
    print(number,'是素数')

 

posted @ 2020-03-20 17:00  Alrenn  阅读(238)  评论(0)    收藏  举报