【头歌-Python】数值类型自学引导

禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
参考教程:B站视频讲解——https://space.bilibili.com/3546616042621301

第1关:计算边长为整数的正方形面积

任务描述
本关任务:编写一个能计算正方形面积的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 字符串转整数
  3. 数值运算
  4. 输出函数

输入函数

input()函数用于输入一个字符串,无论输入什么都做为字符串
a = input()

字符串转整数
int(‘num’)可将整数形字符串’num’转为整数num。

示例如下:

print('2048')         # 输出字符串'2048'
print(int('2048'))    # 把字符串'2048'转为整数2048
width = int(input())  # 输入一个整数字符串转为整数类型

输出:

'2048'  # 字符串
2048  # 整数

数值运算

+-*/  除,结果为浮点数
//  整除,结果为整数(如:5)或值为整数的浮点数(5.0)
**%

输出函数
print()函数用于输出一个或多个对象

print(*objects, sep=' ', end='\n')

输入一个正整数,以其数值为正方形的边长,计算并输出正方形的面积。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出正方形面积。

测试说明
平台会对你编写的代码进行测试:

测试输入:

5

预期输出:

25

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 输入一个正整数,以其数值为正方形的边长,计算并输出正方形的面积
side = input()
square = int(side) ** 2
print(square)

第2关:计算边长为浮点数的正方形面积

任务描述
本关任务:编写一个能计算正方形面积的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 字符串转浮点数
  3. 数值运算
  4. 输出函数

输入函数
input()函数用于输入一个字符串,无论输入什么都做为字符串

a = input()

字符串转整数
float('num')可将数字字符串’num’转为浮点数num。

示例如下:

print('3.14')
print(float('3.14'))
width = float(input())  # 输入一个整数或浮点数字符串转为浮点数类型

输出:

'3.14'  # 字符串
3.14   # 浮点数

数值运算

+-*/  除,结果为浮点数
//  整除,结果为整数(如:5)或值为整数的浮点数(5.0)
**%

输出函数
print()函数用于输出一个或多个对象

print(*objects, sep=' ', end='\n')

输入一个正浮点数,以其数值为正方形的边长,计算并输出正方形的面积。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出正方形面积。

测试说明
平台会对你编写的代码进行测试:

测试输入:

1.25

预期输出:

1.5625

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 输入一个正浮点数,以其数值为正方形的边长,计算并输出正方形的面积
side = float(input(''))
square = (side) ** 2
print(square)

第3关:计算正方形面积,结果数据类型与输入保持一致

任务描述
本关任务:编写一个能计算正方形面积的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 字符串转可计算表达式
  3. 数值运算
  4. 输出函数

输入函数
input()函数用于输入一个字符串,无论输入什么都做为字符串

a = input()

字符串转可计算表达式
eval('num')可将数字字符串’num’转为数值类型num,且num为整数字符串时,结果为整数,num为浮点数字符串时结果为浮点数。

示例如下:

print('3')
print(eval('3'))
print('3.0')
print(eval('3.0'))
print('3 + 4')
print(eval('3 + 4'))
width = eval(input())  # 输入一个数字字符串转为数值类型,浮点数转浮点数,整数转整数

输出:

'3'  # 字符串
3    # 整数

'3.0'  # 字符串
3.0    # 浮点数

'3 + 4'  # 字符串
7        # 整数

数值运算

+-*/  除,结果为浮点数
//  整除,结果为整数(如:5)或值为整数的浮点数(5.0)
**%

输出函数
print()函数用于输出一个或多个对象

print(*objects, sep=' ', end='\n')

输入一个正数,以其数值为正方形的边长,计算并输出正方形的面积。输入为整数时,输出整数;输入浮点数时,输出为浮点数。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出正方形面积。

测试说明
平台会对你编写的代码进行测试:

测试输入:

1.25

预期输出:

1.5625

测试输入:

5

预期输出:

25

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 计算正方形面积,结果数据类型与输入保持一致
side = eval(input(''))
square = (side) ** 2
print(square)

第4关:计算正方形面积,输出结果最多保留4位小数

任务描述
本关任务:编写一个能计算正方形面积的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 浮点数保留n位小数
  3. 数值运算
  4. 输出函数

输入函数
input()函数用于输入一个字符串,无论输入什么都做为字符串

a = input()

浮点数保留n位小数
round(number, n)可将浮点数number小数部分取舍,最多保留n位小数,结果保留浮点数的最短表示。

示例如下:

p

rint(round(3.1415926, 2))
print(round(3.1415926, 3))
print(round(3.14001001, 5))
print(round(3.14000001, 5))
print(round(3.00000001, 5))

输出:

3.14
3.142
3.14001
3.14  # 舍弃结果末尾无意义的0
3.0  # 舍弃结果末尾无意义的0,小数点后保留一个0表示这是浮点数

数值运算

+-*/  除,结果为浮点数
//  整除,结果为整数(如:5)或值为整数的浮点数(5.0)
**%

输出函数
print()函数用于输出一个或多个对象

print(*objects, sep=' ', end='\n')

输入一个正浮点数,以其数值为正方形的边长,计算并输出正方形的面积,结果最多保留4位小数。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出正方形面积。

测试说明
平台会对你编写的代码进行测试:

测试输入:

6.259

预期输出:

39.1751

测试输入:

6.2000008

预期输出:

38.44

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 计算正方形面积,输出结果最多保留4位小数
a = float(input(''))
s = a ** 2
print(round(s,4))

第5关:计算正方形面积,输出结果精确保留2位小数

任务描述
本关任务:编写一个能计算正方形面积的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 浮点数时精确保留n位小数
  3. 数值运算
  4. 输出函数

输入函数
input()函数用于输入一个字符串,无论输入什么都做为字符串

a = input()

浮点数时精确保留n位小数
'{:.nf}'.format(number)f'{number:.nf}'可将浮点数number小数部分取舍,转为一个字符串,精确保留n位小数,保留浮点数末尾的0。
引号中大括号外的任何字符都会被原样输出

示例如下:

print(f'{
      
      3.1415926:.3f}')
print('{:.3f}'.format(3.1415926))

输出:

3.142
3.142
print(f'{
      
      3.00000001:.5f}')
print('{:.5f}'.format(3.00000001))

输出:

3.00000  # 保留结果末尾无意义的0
3.00000  # 保留结果末尾无意义的0
print(f'面积为{
      
      3.0000001:.2f}平方米')
print('面积为{:.2f}平方米'.format(3.0000001))

输出:

面积为3.00平方米
面积为3.00平方米

数值运算

+-*/  除,结果为浮点数
//  整除,结果为整数(如:5)或值为整数的浮点数(5.0)
**%

输出函数
print()函数用于输出一个或多个对象

print(*objects, sep=' ', end='\n')

输入一个正浮点数,以其数值为正方形的边长,计算并输出正方形的面积,结果精确保留2位小数,输出时加上说明性文字。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出正方形面积。

测试说明
平台会对你编写的代码进行测试:

测试输入:

5.268

预期输出:

area = 27.75平方米

测试输入:

5.00006

预期输出:

area = 25.00平方米

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 计算正方形面积,输出结果精确保留2位小数
a = float(input(''))
area = a ** 2
print(f'area = {
      
      area:.2f}平方米')

第6关:计算正方体体积,当输入为负值时取其绝对值做棱长

任务描述
本关任务:编写一个能计算正方体体积的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 绝对值
  3. 数值运算
  4. 输出函数

输入函数
input()函数用于输入一个字符串,无论输入什么都做为字符串处理

a = input()

绝对值
abs(x)可返回x的绝对值,x可为整数或浮点数

示例如下:

print(abs(-5))
print(abs(-10.8))
print(abs(99))

输出:

5
10.8
99

数值运算

+-*/  除,结果为浮点数
//  整除,结果为整数(如:5)或值为整数的浮点数(5.0)
**%

输出函数
print()函数用于输出一个或多个对象

print(*objects, sep=' ', end='\n')

输入一个浮点数,以其绝对值为正方体的棱长,计算并输出正方体的体积,结果精确保留2位小数,输出时参考示例加上说明性文字。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出正方体体积。

测试说明
平台会对你编写的代码进行测试:

测试输入:

-6.83

预期输出:

volume = 318.61立方米

测试输入:

-5.00006

预期输出:

volume = 125.00立方米

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 计算正方体的体积,当输入为负值时取其绝对值做棱长
a = eval(input(''))
b = abs(a)
v = b ** 3
print('volume = {:.2f}立方米'.format(v))

第7关:从输入中选择最大数的绝对值做为棱长计算正方体的体积

任务描述
本关任务:编写一个能从输入中选择最大数的绝对值做为棱长计算正方体的体积的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 绝对值
  3. 最大值
  4. 数值运算
  5. 输出函数

输入函数
input()函数用于输入一个字符串,无论输入什么都做为字符串

a = input()

最大值
max(x1,x2,x3...xn)可返回参数中的最大值
max(iterable)可返回可迭代参数中的最大值
可迭代数据包括:列表、元组、字符串等

示例如下:

print(max(-5, -20, -8, 100, 58))    # 多个参数
print(max([-5, -20, -8, 100, 58]))  # 参数为一个可迭代的列表
print(max((-5, -20, -8, 100, 58)))  # 参数为一个可迭代的元组

输出:

100
100
100

max()参数还可以是map等生成器对象

print(max(map(int, ['-5', '-20', '-8', '100', '58'])))

输出:

100

绝对值
abs(x)可返回x的绝对值,x可为整数或浮点数

示例如下:

print(abs(-5))
print(abs(-10.8))
print(abs(99))
print(abs(max([-5, -20, -8, -100, 58])))  # 先取最大值再取绝对值,输出58

输出:

5
10.8
99
58

数值运算

+-*/  除,结果为浮点数
//  整除,结果为整数(如:5)或值为整数的浮点数(5.0)
**%

输出函数
print()函数用于输出一个或多个对象

print(*objects, sep=' ', end='\n')

输入一系列用空格分开的浮点数,以其最大的一个数的绝对值为正方体的棱长,计算并输出正方体的体积,结果精确保留2位小数,输出时参考示例加上说明性文字。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出正方体的体积。

测试说明
平台会对你编写的代码进行测试:

测试输入:

2.6 50.286 26.524 -88.011 40.25

预期输出:

volume = 127157.29立方米

注意:要求是用最大数的绝对值做棱长,不是用绝对值最大的数做棱长
测试输入:

-2 -50 -26 -88 -40

预期输出:

volume = 8.00立方米

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 从输入中选择最大数的绝对值做为棱长计算正方体的体积
# 下面语句用于接收用空格分隔的多个输入,请不要修改
width_ls = list(map(float, input().split()))

# print(width_ls)  # 取消注释可查看输入的数据
# 当输入为:2 50 26 88 40时,width_ls的值是[2.0, 50.0, 26.0, 88.0, 40.0]
# 不要直接从以上数据中人工选择,测试数据与示例不同,用函数获取
# 不能保证输入的最大值为正值,当最大值仍为负数时,取其绝对值做为棱长

# 在下面补充你的代码,使之能用输入的最大值做棱长计算正方体的体
a = max(width_ls)
b=abs(a)
volume=b ** 3
print(f'volume = {
      
      volume:.2f}立方米')

第8关:用输入数字的正数平方根为半径计算圆的面积

任务描述
本关任务:编写一个能计算圆的面积的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. math库的导入
  2. 平方根函数
  3. 圆周率常数

math库的导入
import关键字用于输入一个库

import math  
# 引用库中函数时函数名前需加math.:
from math import *  # 一个或多个逗号分隔的函数或用*导入全部函数  
# 引用库中函数时不需要加math.

平方根函数
math.sqrt(x)可返回x的正数平方根,x可为整数或浮点数

示例如下:

import math  
print(math.sqrt(5))

输出

2.23606797749979
from math import *  
print(sqrt(5))

输出

2.23606797749979

圆周率常数
math.pi 表示圆周率常数,值为3.141592653589793
程序中应用此常数可保证多人协作时圆周率精度保持一致

示例如下:

from math import *  
print(pi)

输出

3.141592653589793
import math  
print(math.pi)

输出

3.141592653589793

输入一个正整数,以其正数平方根为半径,以math库中的圆周率常数计算圆的面积,输出时精确保留小数点后3位数字。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出圆的面积,输出格式见测试说明。

测试说明
平台会对你编写的代码进行测试:

测试输入:

5

预期输出:

area = 15.708

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 补充一条语句,导入math库

import math
num = int(input())

# 补充一条语句,用输入的数字的正数平方根为半径,
r = num**0.5

# 补充一条语句,用math库中的圆周率常数计算圆的面积
area = math.pi*r*r

# 输出时精确保留小数点后3位数字
print(f'area = {
      
      area:.3f}')

第9关:计算两个数的最大公约数和最小公倍数的阶乘

任务描述
本关任务:编写一个能计算两个数的最大公约数和最小公倍数的阶乘的小程序。

相关知识
为了完成本关任务,你需要掌握:

  1. math库的导入
  2. 最大公约函数
  3. 最小公倍数函数
  4. 阶乘函数

math库的导入
import半键字用于输入一个库

import math  
# 引用库中函数时函数名前需加math.:
from math import 一个或多个逗号分隔的函数或用*导入全部函数  
# 引用库中函数时不需要加math.

最大公约函数

math.gcd(*integers)

返回给定的整数参数的最大公约数。 如果有一个参数非零,则返回值将是能同时整除所有参数的最大正整数。 如果所有参数为零,则返回值为 0。 不带参数的 gcd() 返回 0。

示例如下:

import math
print(math.gcd(4, 8, 20))

输出

4

最小公倍数函数

math.lcm(*integers)

返回给定的整数参数的最小公倍数。 如果所有参数均非零,则返回值将是为所有参数的整数倍的最小正整数。 如果参数之一为零,则返回值为 0。 不带参数的 lcm() 返回 1。

示例如下:

import math
print(math.lcm(4, 8, 20))

输出

40

阶乘函数

math.factorial(x)

以一个整数返回 x 的阶乘。 如果 x 不是整数或为负数时则将引发 ValueError。
3.9 版后已移除: 接受具有整数值的浮点数 (例如 5.0) 的行为已被弃用。

示例如下:

import math
print(math.factorial(6))

输出

720

输入两个用半角逗号分隔的正整数,分别计算其最大公约数的阶乘和最小公倍数的阶乘并输出。

编程要求
根据提示,在右侧编辑器补充代码,计算并输出正方形面积,输出格式见测试说明。

测试说明
平台会对你编写的代码进行测试:

测试输入:

3,6

预期输出:

6
720

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137461189
# 补充一条语句,导入math库
import math

# 将用半角逗号分隔的两个数字转数值型并分别赋值给num1, num2
# 例如输入'15, 20',则num1=15,num2=20
n1, n2 = eval(input())

# 计算最大公约数,在等号后面补充代码,将num1, num2的最大公约数赋值给greatest_common_divisor
# 若手机输入不方便,可将greatest_common_divisor改为短变量名g_c_d
greatest_common_divisor = math.gcd(n1, n2)
# 补充一行代码,输出最大公约数的阶乘
print(math.factorial(greatest_common_divisor))

# 计算最小公倍数,在等号后面补充代码,将num1, num2的最小公倍数赋值给lowest_common_multiple
# 若手机输入不方便,可将lowest_common_multiple改为短变量名l_c_m
lowest_common_multiple = math.lcm(n1, n2)
# 补充一行代码,输出最小公倍数的阶乘
print(math.factorial(lowest_common_multiple))

猜你喜欢

转载自blog.csdn.net/qq_45801887/article/details/137461189