PAGE232
Python实现两个整数的排序输出
任务要求
从键盘上读取两个整数,将两个整数由小到大在控制台打印输出。
任务分析
用户需要从键盘输入两个整数,程序需自动判断其大小关系并按升序输出。例如:
输入5和3,输出35
输入-2和10,输出-210
核心需求包括:
1.输入验证:确保用户输入为整数。
2.数值比较:判断两个整数的大小关系。
3.排序输出:按从小到大的顺序打印结果。
任务实现
方法一:条件判断法。读取两个整数num1和num2。使用if-else判断大小关系,若num1num2,交换两数。
#读取输入并转换为整数
num1=int(input(请输入第一个整数:))
num2=int(input(请输入第二个整数:))
#比较并交换数值
ifnum1num2:
num1,num2=num2,num1#数值交换技巧
#输出结果
print(从小到大为:,num1,num2)
方法二:内置函数法。读取两个整数并存入列表。使用sorted()函数对列表排序。解构排序后的列表并输出。
#读取输入并存入列表
nums=[
int(input(请输入第一个整数:)),
int(input(请输入第二个整数:))
]
#排序并解构
sorted_nums=sorted(nums)
#输出结果
print(从小到大为:,sorted_nums[0],sorted_nums[1])
运行结果
从键盘上输入字符串“63”和“23”。
请输入第一个整数:65
请输入第二个整数:36
从小到大为:3665
进程已结束,退出代码为0
代码说明
num1,num2=num2,num1:会交换num1和num2的值。
sorted(nums):sorted()函数用来对nums列表中的元素进行排序。它会返回一个新的列表,这个列表中的元素是按从小到大的顺序排列的nums的元素。
Python实现九九乘法表的打印
任务要求
九九乘法表的结构如下:
1×1=1
1×2=22×2=4
1×3=32×3=63×3=9
...
1×9=92×9=18...9×9=81
使用Python编写程序,按照上述格式打印出完整的九九乘法表。
任务分析
1.循环结构:使用嵌套循环生成乘法表的内容。
2.格式化输出:确保每一行的长度一致,并且右对齐。
3.效率优化:尽量减少不必要的计算和字符串拼接操作。
任务实现
方法一:双重循环实现。通过外层循环控制行数,内层循环控制列数,并动态生成每一行的内容。
#外层循环控制行数(i从1到9)
foriinrange(1,10):
row=[]#存储当前行的字符串
#内层循环控制列数(j从1到i)
forjinrange(1,i+1):
product=i*j
row.append(f{j}×{i}={product:2d}.ljust(5))#字符串化数字
#将当前行的字符串拼接成一行
line=.join(row)
print(line)
方法二:列表推导式实现。通过列表推导式生成每一行的内容,并使用join()方法拼接字符串。
#外层循环控制行数(i从1到9)
foriinrange(1,10):
#使用列表推导式生成当前行的内容
row=[f{j}×{i}={i*j}.ljust(5)forjinrange(1,i+1)]
#将当前行的字符串拼接成一行
line=.join(row)
print(line)
方法三:通过预先计算所有乘积并存储在二维列表中,减少重复计算的开销。
#预先计算所有乘积并存储在二维列表中
multiplication_table=[]
foriinrange(1,10):
row=[]
forjinrange(1,i+1):
row.append(f{j}×{i}={i*j}.ljust(5))
multiplication_table.append(row)
#输出结果
forrowinmultiplication_table:
line=.join(row)
print(line)
运行结果
1×1=1
1×2=22×2=4
1×3=32×3=63×3=9