简单练习

1. 根据百分制成绩打印及格和不及格,60分一下不及格

source = float(input('请输入您的成绩:'))
if 0 <= source < 60:
print('不及格')
elif 60 <= source <= 100:
print('及格了')
else:
print('你确定你输入的成绩正常?')

2. 根据输入的年龄打印成年或者未成年,18岁以下未成年,如果年龄不在正常范围内(0~150岁),打印这不是人!。

age = int(input('请输入您的年龄:'))
if 0 <= age < 18:
print('未成年')
elif 18 <= age <= 150:
print('成年')
else:
print('这好像不是人')

3. 输入两个整数,如果相减的结果为奇数,则输入该结果,否则输出提示信息,结果不是奇数。

num1 = int(input('第一个整数:'))
num2 = int(input('第二个整数:'))
number = num1 - num2
if number % 2 != 0:
print(number,'是个奇数')
else:
print("结果不是奇数")

4. 使用 for 循环输出0到100内的所有奇数

for i in range(0,101):
if i % 2 != 0:
print(i)

5. 使用 while 循环输出0到100内的偶数。

i = 0
while i < 100:
if i % 2 == 0: # 这里注意的是先判断,因为 0 也是要判断是不是偶数的
print(i)
i += 1

进阶题目

1. 使用循环计算出1到100求和的结果

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

2. 统计100以内个位数是2并且能够被3整除的个数。

for i in range(0,101):
if i % 10 == 2 and i % 3 == 0:
print(i)

3. 输入一个正整数,求它是几位数字

num = int(input('请输入一个正整数:'))
n = 0
while True:
num = num // 10 # 这里用到了一点,很特别,因为是整除,所以除以结果为小数的话,整除的结果就是 0
n += 1
if num == 0:
break
print(n)

4. 打印所有水仙花数

说明 : 水仙花数是一个三位数,其各位数字立方和等于该数本身

例如 : 153是一个水仙花数,153 = 1的三次方 + 5的三次方 + 3的三次方

for i in range(100,1000):
bai = i // 100
shi = i % 100 // 10
ge = i % 10
if bai ** 3 + shi **3 + ge ** 3 == i:
print(i)

5. 写一个程序可以不断输入数字,如果数字为0,打印程序结束并结束该程序

while True:
test = input('你可以不断输入数字:')
if test == '0':
break

6.统计101~200中素数的个数,并输出所有的素数。(素数又称质数,就是只能被1和他整除的数)

for i in range(101,201):
for j in range(2,i):
if i % j == 0:
break
else:
print(i,'是个质数')

有一个语义化更好的方法,比如:假设成立发,计数法,方法都类似。

假设成立法

使用 flag 变量来判断 i 是否是质数

for i in range(101,201):
flag = True
for j in range(2,i):
if i % j == 0:
flag = False
if flag:
print(i,'是个质数')

计数法

使用 count 变量来判断 i 是否是质数

for i in range(101,201):
count = 0
for j in range(2,i):
if i % j == 0:
count += 1
if count == 0:
print(i,'是个质数')

7.求斐波那楔数的第n个值,n是正整数。

说明 : 斐波那楔数列是这样的的一个数列 : 1、1、2、3、5、8、13、21、34、...

第一数和第二个数是1,从第三个开始每个元素是前两个元素相加的和

n = int(input('你知道第几位斐波那楔数:'))
num1 = 1
num2 = 1
i = 0
while i < n - 2:
a = num1
num1 = num2
num2 = a + num1
i += 1
print(num2)

输出九九乘法表

while

i = 0
while i < 9:
i += 1
j = 0
while j < i:
j += 1
print(j,'x',i,'=',j*i,end='\t')
print()

for

for i in range(1,10):
for j in range(1,i + 1):
print(j,'x',i,'=',j*i,end='\t')
print()

"百马百担"问题

一匹大马能驼3担货,一匹中马能驼2担货,两匹小马能驼1担货,问大、中、小马各有多少条

设大马为 x 匹 ,中马为 y 匹,则小马为 100 - x - y 匹

for x in range(0,100 // 3 + 1):
for y in range(0,100 // 2 + 1):
if x * 3 + y * 2 + (100 - x - y) * 0.5 == 100:
print('大马',x,'中马',y,'小马',100 - x - y)

一张纸的厚度为0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?

height = 0.08 / 1000
n = 0
while True:
height *= 2
n += 1
if height > 8848.13:
break
print('对折',n,'次后,可以超越珠穆朗玛峰,超越了',height - 8848.13,'米')

最新文章

  1. ACM/ICPC 之 中国剩余定理+容斥原理(HDU5768)
  2. cocos2d-x的CCAffineTransform相关变换实现原理
  3. vmware下的linux的host only上网配置
  4. java创建Date日期时间笔记
  5. NSS_05 数据访问选型
  6. Linux江湖01:玩转Linux系统的方法论 (转载)
  7. poj3709
  8. 【ecos学习5】redboot 加载运行hello world
  9. Sencha Touch 2 结合HTML5的本地存储创建数据库实现增、删、改、查
  10. CCNA网络工程师学习进程(9)GNS3的安装与配置
  11. Linux下crontab命令添加Kettle作业定时任务
  12. Spring Boot 2.0(六):使用 Docker 部署 Spring Boot 开源软件云收藏
  13. 【ORM框架】Spring Data JPA(一)-- 入门
  14. invalid mode &#39;kCFRunLoopCommonModes&#39; provided to CFRunLoopRunSpecific
  15. C语言 &#183; 求先序遍历
  16. 对于已经添加引用,还找不到类型或名字空间的错误及svn客户端清除用户帐号密码
  17. 2017-2018-4 20155203《网络对抗技术》Exp3 免杀原理与实践
  18. HBase什么时候作minor major compact
  19. Python源码分析(二) - List对象
  20. Linux中常用头文件的作用--转

热门文章

  1. linux用户账户与组账户,文件权限及归属管理
  2. Redis基础命令和持久化
  3. holiday06-英语语法-语序和五种基本句式
  4. Docker学习——多阶段构建(六)
  5. 法拉第未来任命新CFO!贾跃亭激动发声
  6. WebStore 破解
  7. react封装图片上传组件
  8. Java下 BigDecimal类型数值的计算(转)
  9. Abp Abp.AspNetZeroCore 2.0.0 2.1.1 Path
  10. to_csv()导入数据乱码问题