-
判断101-200之间有多少个素数,并输出所有素数。
num = 0 for x in range(101, 201): for y in range(2, x): if x % y == 0: break else: num += 1 print('素数:', x) print('个数:', num)
-
求整数1~100的累加值,但要求跳过所有个位为3的数。
sum = 0 for x in range(1, 101): if x % 10 == 3: continue sum += x print('累加值:', sum)
-
有⼀分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的第20个分数
x = 2 n1 = 1 for y in range(1, 3): n2 = n1 n1,x = x, x + n1 print('第20个分数:', n1, '/', n2)
-
写程序计算 n 的阶乘 n! 的结果
n = 10 sum = 1 for x in range(1, n + 1): sum *= x print('n的阶乘为:',sum)
-
求1+2!+3!+…+20!的和
sum1 = 1 sum2 = 0 for n in range (1, 21): for x in range(1, n + 1): sum1 *= x sum2 += sum1 sum1 = 1 print('和为:',sum2)
-
写程序求表达式 a + aa + aaa + aaaa+ … 的结果,其中a是1~9的数字,求和的项数用n来控制。(a和n可以用变量来表示)
例如:a为3, n为5的时候: 3 + 33 + 333 + 3333 + 33333
num = 0 a = int(input('请输入a的值:')) n = int(input('请输入n的值:')) sum = 0 for x in range (n, 0 ,-1): num = num * 10 + a sum += num print('结果为:',sum)
-
控制台输出三角形
a.根据n的值的不同,输出相应的形状 n = 5时 n = 4 ***** **** **** *** *** ** ** * * b.根据n的值的不同,输出相应的形状(n为奇数) n = 5 n = 7 * * *** *** ***** ***** ******* c. 根据n的值的不同,输出相应的形状 n = 4 1 121 12321 1234321 n = 5 1 121 12321 1234321 123454321
a.
n = 5 for x in range(n, 0, -1): for y in range(x, 0, -1): print('*', end='') print()
b.
n = 7 for x in range(1, n + 1, 2): for y in range(n-x+1, 0, -2): print(' ', end='') if x == n: break for z in range(1, x + 1, 1): print('*', end='') print()
c.
n = 5 for x in range(1, n + 1, 1): for y in range(n-x+1, 0, -1): print(' ', end='') if x == n: break for z in range(1, x + 1, 1): print(z, end='') for i in range(x-1, 0, -1): print(i, end='') print()
-
小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。要把100元正好花掉,可有哪些购买结合?
for a in range(7): for c in range(21): b = (100 - a * 15 - c * 5) / 2 if b >= 0 and b % 1 == 0: print('洗发水:', a, '香皂:', b, '牙刷:', c)
-
一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?
n = 0 x = 0.08 * 0.001 while x < 8848.13: x *= 2 n += 1 print('次数:',n)
-
古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
rabbit = 2 n = 9 # n为设置的总月数 y = 1 for x in range(1, n+1): rabbit += 2 * (y-1) if x == (y * 3)-1: y += 1 print('第',x,'月兔子总数:',rabbit)
-
将一个正整数分解质因数。例如:输入90,打印出90=2x3x3x5。
num = int(input('请输入正整数:')) x = 2 n = num while x < num: if num % x == 0: i = 1 for y in range(2, x): if x % y == 0: break else: print(x) num /= x x -= 1 x += 1 if n % num == 0 and num < n: print(int(num))
-
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。求输入的四位整数加密后的值
num = int(input('请输入四位整数:')) ge = num % 10 shi = num % 100 // 10 bai = num // 100 % 10 qian = num // 1000 print(qian,bai,shi,ge) ge = (ge + 5) % 10 shi = (shi + 5) % 10 bai = (bai + 5) % 10 qian = (qian + 5) % 10 print(qian,bai,shi,ge) ge, qian = qian, ge shi, bai = bai, shi print('加密后的值:',qian,bai,shi,ge,sep='')
-
本金10000元存入银行,年利率是千分之三。每过1年,将本金和利息相加作为新的本金。计算5年后,获得的本金是多少。
sum = 10000 for x in range(5): sum *=(1 + 0.003) print('本金为:', sum)
-
输入一个整数,计算它各位上数字的和。(注意:输入的整数可以是任意位)
x = int(input('请输入一个整数:')) sum = 0 if x < 10: sum = x else: while True: if x // 10 > 0: sum += x % 10 x = x // 10 else: sum += x break print('和:',sum)
-
求两个数的最大公约数和最小公倍数。(提示:公约数一定小于等于两数中的小的那个数,且能同时被两个数整除;公倍数一定大于等于两数中的大数,且是大数的倍数又能被两数中的小数整除)
n1 = 40 n2 = 20 if n1 >= n2: min = n2 max = n1 else: min = n1 max = n2 y = max + 1 for x in range(min, 1, -1): if n1 % x == 0 and n2 % x == 0: print('最大公约数为:', x) break while True: if y % n1 == 0 and y % n2 == 0: print('最小公倍数为:', y) break y += 1