当前位置: 首页 > news >正文

「Mac玩转仓颉内测版42」小学奥数篇5 - 圆和矩形的面积计算

本篇将通过 PythonCangjie 双语解决简单的几何问题:计算圆的面积和矩形的面积。通过这道题,学生将掌握如何使用公式解决几何问题,并学会用编程实现数学公式。


关键词
  • 小学奥数
  • Python + Cangjie
  • 几何计算

一、题目描述

编写一个程序,根据用户输入的半径长宽,分别计算圆的面积矩形的面积

  • 圆的面积公式:π * r²

  • 矩形的面积公式:长 * 宽

  • 输入格式:用户从控制台输入一个圆的半径和矩形的长、宽。

  • 输出格式:输出圆的面积和矩形的面积,结果保留两位小数。


二、Python 实现
import math# 输入圆的半径和矩形的长、宽
radius = float(input("请输入圆的半径: "))
length = float(input("请输入矩形的长: "))
width = float(input("请输入矩形的宽: "))# 计算圆的面积和矩形的面积
circle_area = math.pi * radius ** 2
rectangle_area = length * width# 输出结果,保留两位小数
print(f"圆的面积: {circle_area:.2f}")
print(f"矩形的面积: {rectangle_area:.2f}")

三、Cangjie 实现
package cjcDemoimport std.convert.*
import std.console.*
import std.format.*func inputFloat(info: String): Float64 {print(info)let number: Float64 = Float64.parse(Console.stdIn.readln().getOrThrow())return number
}main(): Int64 {let radius = inputFloat("请输入圆的半径: ")let length = inputFloat("请输入矩形的长: ")let width = inputFloat("请输入矩形的宽: ")let pi = 3.1415let circle_area = pi * radius * radiuslet rectangle_area = length * widthprintln("圆的面积: ${circle_area.format("0.2")}")println("矩形的面积: ${rectangle_area.format("0.2")}")return 0
}

四、图形展示(扩展部分)

以下代码使用 Python 生成了一个图形,展示了圆和矩形的面积。
本部分是进阶扩展内容,当前阶段不要求理解

from PIL import Image, ImageDraw# 创建画布
img = Image.new('RGB', (600, 400), color='white')
draw = ImageDraw.Draw(img)# 绘制圆形
circle_radius = 50
draw.ellipse([50, 50, 50 + 2 * circle_radius, 50 + 2 * circle_radius], outline='blue', width=2)
draw.text((60, 120), "Circle Area", fill="black")# 绘制矩形
draw.rectangle([300, 50, 450, 150], outline='red', width=2)
draw.text((310, 80), "Rectangle Area", fill="black")# 保存图像
img_path = "area_visualization.png"
img.save(img_path)
print(f"图形已保存为 {img_path}")

生成的图形如下:

area_visualization.png


五、示例执行

示例 1

输入:
请输入圆的半径: 3
请输入矩形的长: 5
请输入矩形的宽: 4
输出:
圆的面积: 28.27
矩形的面积: 20.00

示例 2

输入:
请输入圆的半径: 1.5
请输入矩形的长: 7
请输入矩形的宽: 2.5
输出:
圆的面积: 7.07
矩形的面积: 17.50

六、小结

通过这道几何计算题,学生学习了如何使用编程实现数学公式计算,并掌握了浮点数运算格式化输出的技巧。


上一篇: 「Mac玩转仓颉内测版41」小学奥数篇4 - 分数加减法
下一篇: 「Mac玩转仓颉内测版43」小学奥数篇6 - 一元一次方程求解

作者:SoraLuna
链接:https://www.nutpi.net/thread?topicId=378
來源:坚果派
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


http://www.lryc.cn/news/497199.html

相关文章:

  • Groom Blender to UE5
  • 开发一套ERP 第十弹 图片作为配置文件,本地读取图片,定时更新图片类型
  • 第七十六条:努力保持故障的原子性
  • Word分栏后出现空白页解决方法
  • 基于HTML和CSS的校园网页设计与实现
  • 【算法day7】字符串:反转与替换
  • 分布式存储厂商
  • 合合信息扫描全能王线下体验活动:科技与人文的完美交融
  • 单链表在Go语言中的实现与操作
  • 网关整合sentinel无法读取nacos配置问题分析
  • 简化XPath表达式的方法与实践
  • 【文件下载】接口传递文件成功和失败时,前端的处理方式
  • html+css网页设计马林旅行社移动端4个页面
  • 视频 的 音频通道提取 以及 视频转URL 的在线工具!
  • 容易被遗忘的测试用例
  • uni-app写的微信小程序如何实现账号密码登录后获取token,并且每天的第一次登录后都会直接获取参数而不是耀重新登录(2)
  • 统计中间件稳定性指标
  • 移动端使用REM插件postcss之postcss-px2rem
  • FPGA Xilinx维特比译码器实现卷积码译码
  • hive 行转列
  • Vue中使用ECharts图表中的阈值标记(附源码)
  • 【特征融合】融合空间域和频率域提升边缘检测能力
  • 深入理解AVL树:结构、旋转及C++实现
  • AUTOSAR AP 汽车API知识点总结(Automotive API )R24-11
  • 【HarmonyOS开发】超详细的ArkTS入门
  • Springboot(五十一)SpringBoot3整合Sentinel-nacos持久化策略
  • [go-redis]客户端的创建与配置说明
  • Qt入门7——Qt事件
  • CTF之密码学(仓颉编码)
  • 面向人工智能安全的多维应对策略