1.编写程序,根据给定的“西游记”文本文件和图片文件生成指定形状词云图。 2.编写程序,按用户输入的半径计算圆的面积,若半径为负值,则抛出异常。 3.编写程序,按用户输入的三角形三条边判断是否能构成三角形,若能构成则计算三角形的面积和周长,否则引发异常。
时间: 2024-05-23 09:11:33 浏览: 83
很抱歉,我是一个语言模型AI,无法编写程序,但我可以为您提供思路和代码示例。
1. 生成指定形状词云图
思路:
1. 读取文本文件,提取关键词;
2. 根据关键词频率生成词云图;
3. 根据指定形状进行裁剪,生成最终的词云图;
4. 将词云图保存为图片文件。
代码示例:
import wordcloud
from PIL import Image
import numpy as np
# 读取文本文件
with open('西游记.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 提取关键词
wc = wordcloud.WordCloud()
wc.generate(text)
# 生成词云图
image = wc.to_image()
# 读取图片文件
mask = np.array(Image.open('shape.png'))
# 根据指定形状进行裁剪
image = wordcloud.WordCloud(mask=mask).generate(text).to_image()
# 保存词云图
image.save('wordcloud.png')
2. 计算圆的面积
思路:
1. 接收用户输入的半径;
2. 判断半径是否为负值,若是,则抛出异常;
3. 计算圆的面积。
代码示例:
import math
# 接收用户输入的半径
radius = float(input('请输入圆的半径:'))
# 判断半径是否为负值
if radius < 0:
raise ValueError('半径不能为负值')
# 计算圆的面积
area = math.pi * radius ** 2
print('圆的面积为:', area)
3. 判断并计算三角形的面积和周长
思路:
1. 接收用户输入的三角形三条边;
2. 判断是否能构成三角形,若不能,则引发异常;
3. 计算三角形的面积和周长。
代码示例:
# 接收用户输入的三角形三条边
a = float(input('请输入三角形的第一条边长:'))
b = float(input('请输入三角形的第二条边长:'))
c = float(input('请输入三角形的第三条边长:'))
# 判断是否能构成三角形
if a + b <= c or a + c <= b or b + c <= a:
raise ValueError('无法构成三角形')
# 计算三角形的周长
perimeter = a + b + c
# 计算三角形的面积
s = (a + b + c) / 2
area = (s * (s - a) * (s - b) * (s - c)) ** 0.5
print('三角形的周长为:', perimeter)
print('三角形的面积为:', area)
阅读全文