Python基础练习:素数判断、最大公约数与最小公倍数及三角形打印
需积分: 0 194 浏览量
更新于2024-08-04
收藏 2KB MD 举报
在本文档中,提供了三个Python编程练习题及其解答,针对不同领域的基础概念进行实战训练。以下是每个练习题的详细解释和代码实现:
1. **练习1:判断素数** - 这个题目要求编写程序来检查一个给定的正整数是否为素数。素数是指除了1和其本身以外,没有其他正因数的自然数。参考答案使用了Python的`math`库来找到数字的平方根,然后遍历从2到这个平方根的所有整数,如果发现可以整除该数,则说明它不是素数。最后根据结果输出相应的判断信息。
```python
from math import sqrt
num = int(input('请输入一个正整数:'))
end = int(sqrt(num))
is_prime = True
for x in range(2, end + 1):
if num % x == 0:
is_prime = False
break
if is_prime and num != 1:
print('%d是素数' % num)
else:
print('%d不是素数' % num)
```
2. **练习2:计算最大公约数和最小公倍数** - 本题涉及两个正整数的最大公约数(GCD)和最小公倍数(LCM)。最大公约数是两个数共有的最大因数,而最小公倍数是能同时被这两个数整除的最小数。参考代码首先检查较大的数是否大于较小的数,然后通过迭代查找两个数的公共因子,最终确定GCD和计算LCM。
```python
x = int(input('x='))
y = int(input('y='))
# 交换较大和较小数
if x > y:
x, y = y, x
# 从较大数开始查找因子
for factor in range(x, 0, -1):
if x % factor == 0 and y % factor == 0:
print('%d和%d的最大公约数是%d' % (x, y, factor))
print('%d和%d的最小公倍数是%d' % (x, y, x * y // factor))
break
```
3. **练习3:打印三角形图案** - 最后一个练习是生成特定形状的三角形,如星号(*)排列。用户输入行数,程序会按照递增的行数顺序打印星号,并在每一行增加空格,以形成向下延伸的三角形。参考答案给出了从空格和星号组合来实现的简单代码。
```python
row = int(input('请输入行数:'))
for i in range(row):
for j in range(i + 1):
print('*', end='')
print()
# 或者更简洁地生成倒三角形
for i in range(row):
print(' ' * (row - i - 1) + '*' * (i + 1) * 2)
```
以上三个Python编程练习涵盖了基础的数据输入处理、循环控制和算法应用,有助于巩固对Python语言的理解和基本逻辑结构的掌握。通过实际操作这些代码,程序员可以提升编程技能,并更好地理解如何利用循环和条件语句来解决实际问题。
1337 浏览量
2023-07-30 上传
146 浏览量
146 浏览量
162 浏览量
点击了解资源详情
2024-01-03 上传
103 浏览量
180 浏览量

互联小助手
- 粉丝: 48
最新资源
- Android平台DoKV:小巧强大Key-Value管理框架介绍
- Java图书管理系统源码与MySQL的无缝结合
- C语言实现JSON与结构体间的互转功能
- 快速标签插件:将构建信息轻松嵌入Java应用
- kimsoft-jscalendar:多语言、兼容主流浏览器的日历控件
- RxJava实现Android多线程下载与断点续传工具
- 直观示例展示JQuery UI插件强大功能
- Visual Studio代码PPA在Ubuntu中的安装指南
- 电子通信毕业设计必备:元器件与芯片资料大全
- LCD1602显示模块编程入门教程
- MySQL5.5安装教程与界面展示软件下载
- React Redux SweetAlert集成指南:增强交互与API简化
- .NET 2.0实现JSON数据生成与解析教程
- 上海交通大学计算机体系结构精品课件
- VC++开发的屏幕键盘工具与源码解析
- Android高效多线程图片下载与缓存解决方案