最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

从零开始的Python学习

IT圈 admin 1浏览 0评论

从零开始的Python学习

从零开始的Python学习 – 简单的练习题

目录:

  • 从零开始的Python学习 -- 简单的练习题
  • 前言:
  • 顺序结构
      • A+B problem
      • 苹果采购
  • 分支结构
      • 数的性质
      • 闰年判断
      • Apple
  • 循环结构
      • 找到最小值
      • 分类平均
      • 阶乘之和

前言:

因为只看我的解释,很难明白这些那些的知识点是怎么运用的,所以中间插入本篇,供读者加深理解和学习

顺序结构

A+B problem

题目描述
输入两个整数 a,b,输出它们的和

任何一个伟大的思想,都有一个微不足道的开始。

输入格式
两个整数以空格分开。

输出格式
一个整数。

输入输出样例
输入

20 30

输出

50

a = input()
b = input()
print(a+b)
# 其实这样的写法是有问题的,但是我们暂时不考虑这个错误

苹果采购

题目描述
现在需要采购一些苹果,每名同学都可以分到固定数量的苹果,并且已经知道了同学的数量,请问需要采购多少个苹果?

输入格式
输入两个不超过 10^9 的正整数,分别表示每人分到的数量和同学的人数。

输出格式
一个整数,表示答案。保证输入和答案都在int范围内的非负整数。

输入输出样例
输入

5 3

输出

15

a = input()
b = input()
print(a*b)
# 同样,这样的写法是有问题的,但是我们暂时不考虑这个错误

在这里解释一下之前提到的错误:
input函数是读入一行,并且是字符串类型,也就是说真正读入进来的是:

"5 3"
# 而不是
5 3

应该这样修改:

s = input().split()
a = int(s[0])
b = int(s[1])
# 读者可以自行把s输出来看一下,结果是这样的
# ["5", "3"]
# 可以看到里面还是str类型,也就是字符串类型
# 我们需要转换成int类型,才能进行加减操作

分支结构

数的性质

题目描述
一些数字可能拥有以下的性质:

  • 性质 1:是偶数;
  • 性质 2:大于 4 且不大于 12。

小A 喜欢这两个性质同时成立的数字;
小B喜欢这至少符合其中一种性质的数字;
小C喜欢刚好有符合其中一个性质的数字;
小D喜欢不符合这两个性质的数字。

输入格式
输入一个数字 x

输出格式
输出这 4 个人是否喜欢这个数字,如果喜欢则输出1,否则输出0,用空格分隔。

输入输出样例
输入

12

输出

1 1 0 0

num = int(input())
# 输入一个整数,才有可能被2整除
flag1 = num % 2 == 0
# flag1 的真假
flag2 = num > 4 and num <= 12
#flag2 的真假# 判断 A
if flag1 and flag2:print(1,end=" ")
else:print(0,end=" ")
#判断 B
if flag1 or flag2:print(1,end=" ")
else:print(0,end=" ")
#判断 C
if (not flag1 and flag2) or (flag1 and not flag2):print(1,end=" ")
else:print(0,end=" ")
#判断 D
if not(flag1 or flag2):print(1,end=" ")
else:print(0,end=" ")

闰年判断

题目描述
输入一个年份(大于 1582 的整数 ),判断这一年是否是闰年,如果是输出 1,否则输出 0。

闰年是能被 4或400 整除的年份,但不能被 100 整除。

输入格式

输出格式

输入输出样例
输入 #1

1926

输出 #1

0

输入 #2

1900

输出 #2

0

输入 #3

2000

输出 #3

1

输入 #4

1996

输出 #4

1

num = int(input())
if (num % 4 == 0 and num % 100 != 0) or (num % 400 == 0):print(1)
else:print(0)

Apple

题目描述
八尾勇喜欢吃苹果。她今天吃掉了 x(0≤x≤100) 个苹果。英语课上学到了 apple 这个词语,想用它来造句。如果她吃了 1 个苹果,就输出 Today, I ate 1 apple.;如果她没有吃,那么就把 1 换成 0;如果她吃了不止一个苹果,别忘了 apple 这个单词后面要加上代表复数的 s。你能帮她完成这个句子吗?

输入格式
一个整数表示今天吃的苹果数量

输出格式
一行字符串

输入输出样例
输入 #1

1

输出 #1

Today, I ate 1 apple.

输入 #2

3

输出 #2

Today, I ate 3 apples.

n = int(input())
print("Today, I ate",n ,end=" ")
if n <= 1:print("apple.")
else:print("apples.")

循环结构

找到最小值

题目描述
给出 n 和 n 个整数 ai

(0 ≤ ai ≤ 1000),求这 n 个整数中最小值是什么。

输入格式

输出格式

输入输出样例
输入 #1

8
1 9 2 6 0 8 1 7

输出 #1

0

n = int(input())
a = input().split()	# 这里把输入的内容用split函数分开,默认用空格分割,返回对象是一个list,其中list的元素是字符型min = 999999999	# 这里设置最大值为minfor i in a: i = int(i)	# 因为字符和数字不能直接比较,所以把字符转换成对应的数字if i < min:min = iprint(min)

分类平均

题目描述
给定 n 和 k(k≤100),将从 1 到 n 之间的所有正整数可以分为两类:A 类数可以被 k 整除(也就是说是 k 的倍数),而 B 类数不能。请输出这两类数的平均数,精确到小数点后 1 位,用空格隔开。

输入格式

输出格式

输入输出样例
输入

100 16

输出

56.0 50.1

s = input().split()
n = int(s[0])
k = int(s[1])
sum1 = 0
cnt1 = 0
sum2 = 0
cnt2 = 0
for i in range(1,n+1):if i % k == 0:sum1 += icnt1 +=1else:sum2 += icnt2 +=1
print("%.1f" %(sum1/cnt1),end=" ")
print("%.1f" %(sum2/cnt2))

阶乘之和

题目描述
用高精度计算出 S=1!+2!+3!+…+n!(n≤50)

其中“!”表示阶乘,例如:5!=5×4×3×2×1。

输入格式
一个正整数N。

输出格式
一个正整数S,表示计算结果。

输入输出样例
输入 #1
3
输出 #1
9

N = int(input())
S = 0
for i in range(1,N+1):s = 1for j in range(1,i+1):s *= jS += s
print(S)

从零开始的Python学习

从零开始的Python学习 – 简单的练习题

目录:

  • 从零开始的Python学习 -- 简单的练习题
  • 前言:
  • 顺序结构
      • A+B problem
      • 苹果采购
  • 分支结构
      • 数的性质
      • 闰年判断
      • Apple
  • 循环结构
      • 找到最小值
      • 分类平均
      • 阶乘之和

前言:

因为只看我的解释,很难明白这些那些的知识点是怎么运用的,所以中间插入本篇,供读者加深理解和学习

顺序结构

A+B problem

题目描述
输入两个整数 a,b,输出它们的和

任何一个伟大的思想,都有一个微不足道的开始。

输入格式
两个整数以空格分开。

输出格式
一个整数。

输入输出样例
输入

20 30

输出

50

a = input()
b = input()
print(a+b)
# 其实这样的写法是有问题的,但是我们暂时不考虑这个错误

苹果采购

题目描述
现在需要采购一些苹果,每名同学都可以分到固定数量的苹果,并且已经知道了同学的数量,请问需要采购多少个苹果?

输入格式
输入两个不超过 10^9 的正整数,分别表示每人分到的数量和同学的人数。

输出格式
一个整数,表示答案。保证输入和答案都在int范围内的非负整数。

输入输出样例
输入

5 3

输出

15

a = input()
b = input()
print(a*b)
# 同样,这样的写法是有问题的,但是我们暂时不考虑这个错误

在这里解释一下之前提到的错误:
input函数是读入一行,并且是字符串类型,也就是说真正读入进来的是:

"5 3"
# 而不是
5 3

应该这样修改:

s = input().split()
a = int(s[0])
b = int(s[1])
# 读者可以自行把s输出来看一下,结果是这样的
# ["5", "3"]
# 可以看到里面还是str类型,也就是字符串类型
# 我们需要转换成int类型,才能进行加减操作

分支结构

数的性质

题目描述
一些数字可能拥有以下的性质:

  • 性质 1:是偶数;
  • 性质 2:大于 4 且不大于 12。

小A 喜欢这两个性质同时成立的数字;
小B喜欢这至少符合其中一种性质的数字;
小C喜欢刚好有符合其中一个性质的数字;
小D喜欢不符合这两个性质的数字。

输入格式
输入一个数字 x

输出格式
输出这 4 个人是否喜欢这个数字,如果喜欢则输出1,否则输出0,用空格分隔。

输入输出样例
输入

12

输出

1 1 0 0

num = int(input())
# 输入一个整数,才有可能被2整除
flag1 = num % 2 == 0
# flag1 的真假
flag2 = num > 4 and num <= 12
#flag2 的真假# 判断 A
if flag1 and flag2:print(1,end=" ")
else:print(0,end=" ")
#判断 B
if flag1 or flag2:print(1,end=" ")
else:print(0,end=" ")
#判断 C
if (not flag1 and flag2) or (flag1 and not flag2):print(1,end=" ")
else:print(0,end=" ")
#判断 D
if not(flag1 or flag2):print(1,end=" ")
else:print(0,end=" ")

闰年判断

题目描述
输入一个年份(大于 1582 的整数 ),判断这一年是否是闰年,如果是输出 1,否则输出 0。

闰年是能被 4或400 整除的年份,但不能被 100 整除。

输入格式

输出格式

输入输出样例
输入 #1

1926

输出 #1

0

输入 #2

1900

输出 #2

0

输入 #3

2000

输出 #3

1

输入 #4

1996

输出 #4

1

num = int(input())
if (num % 4 == 0 and num % 100 != 0) or (num % 400 == 0):print(1)
else:print(0)

Apple

题目描述
八尾勇喜欢吃苹果。她今天吃掉了 x(0≤x≤100) 个苹果。英语课上学到了 apple 这个词语,想用它来造句。如果她吃了 1 个苹果,就输出 Today, I ate 1 apple.;如果她没有吃,那么就把 1 换成 0;如果她吃了不止一个苹果,别忘了 apple 这个单词后面要加上代表复数的 s。你能帮她完成这个句子吗?

输入格式
一个整数表示今天吃的苹果数量

输出格式
一行字符串

输入输出样例
输入 #1

1

输出 #1

Today, I ate 1 apple.

输入 #2

3

输出 #2

Today, I ate 3 apples.

n = int(input())
print("Today, I ate",n ,end=" ")
if n <= 1:print("apple.")
else:print("apples.")

循环结构

找到最小值

题目描述
给出 n 和 n 个整数 ai

(0 ≤ ai ≤ 1000),求这 n 个整数中最小值是什么。

输入格式

输出格式

输入输出样例
输入 #1

8
1 9 2 6 0 8 1 7

输出 #1

0

n = int(input())
a = input().split()	# 这里把输入的内容用split函数分开,默认用空格分割,返回对象是一个list,其中list的元素是字符型min = 999999999	# 这里设置最大值为minfor i in a: i = int(i)	# 因为字符和数字不能直接比较,所以把字符转换成对应的数字if i < min:min = iprint(min)

分类平均

题目描述
给定 n 和 k(k≤100),将从 1 到 n 之间的所有正整数可以分为两类:A 类数可以被 k 整除(也就是说是 k 的倍数),而 B 类数不能。请输出这两类数的平均数,精确到小数点后 1 位,用空格隔开。

输入格式

输出格式

输入输出样例
输入

100 16

输出

56.0 50.1

s = input().split()
n = int(s[0])
k = int(s[1])
sum1 = 0
cnt1 = 0
sum2 = 0
cnt2 = 0
for i in range(1,n+1):if i % k == 0:sum1 += icnt1 +=1else:sum2 += icnt2 +=1
print("%.1f" %(sum1/cnt1),end=" ")
print("%.1f" %(sum2/cnt2))

阶乘之和

题目描述
用高精度计算出 S=1!+2!+3!+…+n!(n≤50)

其中“!”表示阶乘,例如:5!=5×4×3×2×1。

输入格式
一个正整数N。

输出格式
一个正整数S,表示计算结果。

输入输出样例
输入 #1
3
输出 #1
9

N = int(input())
S = 0
for i in range(1,N+1):s = 1for j in range(1,i+1):s *= jS += s
print(S)

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论