*4.7(顶点坐标)假设一个正五边形的中心位于(0,0),其中一个点位于0点位置。编写程序,提示用户输入正五边形外接圆的半径,显示p1到p5为5个坐标,保留两位小数

  • 题目
    • 题目概述
    • 运行示例
    • 破题
  • 代码

题目

题目概述

*4.7(顶点坐标)假设一个正五边形的中心位于(0,0),其中一个点位于0点位置。编写程序,提示用户输入正五边形外接圆的半径,显示p1到p5的5个坐标,保留两位小数

运行示例

Enter the radius of the bounding circle: 100.52
The coordinates of five points on the pentagon are
(95.60, 31.06)
(0.00, 100.52)
(-95.60, 31.06)
(-58.08, -81.32)
(59.08, -81.32)

破题

题目翻译槽点很多,没图根本理解不了
翻译一下题目:
有一个正五边形中心在原点,这个五边形有个外接圆,五边形的五个顶点在圆上(其中一个顶点p2在原点0点方向,p2左边是p3、右边是p1)
然后要通过console控制台输入的值(外接圆半径),求出5个点的坐标

代码

import java.util.Scanner;public class Test4_7 {public static void main(String[] args) {// 获取半径Scanner input = new Scanner(System.in);System.out.println("Enter the radius of the bounding circle: ");double r = input.nextDouble();// 求顶点到x轴夹角的几个特殊值double angle18 = Math.toRadians(90 - 360 / 5);double angle54 = Math.toRadians((2 * 360) / 5 - 90);// 求出5个顶点的x、y坐标System.out.println(r * Math.cos(angle54)+"   "+ r * Math.sin(angle54));double xp1 = r * Math.cos(angle18), yp1 = r * Math.sin(angle18);double xp2 = 0, yp2 = r;double xp3 = -r * Math.cos(angle18), yp3 = r * Math.sin(angle18);double xp4 = -r * Math.cos(angle54), yp4 = -r * Math.sin(angle54);double xp5 = r * Math.cos(angle54), yp5 = -r * Math.sin(angle54);// 输出数据System.out.println("The coordinates of five points on the pentagon are");System.out.printf("(%.2f, %.2f)", xp1, yp1);System.out.printf("\n(%.2f, %.2f)", xp2, yp2);System.out.printf("\n(%.2f, %.2f)", xp3, yp3);System.out.printf("\n(%.2f, %.2f)", xp4, yp4);System.out.printf("\n(%.2f, %.2f)", xp5, yp5);}
}

Java黑皮书课后题第4章:*4.7(顶点坐标)假设一个正五边形的中心位于(0,0),其中一个点位于0点位置。编写程序,提示用户输入正五边形外接圆的半径,显示p1到p5的5个坐标,保留两位小数相关推荐

  1. Java黑皮书课后题第5章:5.11(找出能被5或6整除的数,但不能同时整除)编写程序,显示从100到1000之间能被5或6整除但不能同时整除的数,每行显示10个。数字之间用一个空格字符隔开

    5.11(编写程序,显示从100到1000之间能被5或6整除但不能同时整除的数,每行显示10个.数字之间用一个空格字符隔开 题目 题目概述 破题 引申:continue break与return 代码 ...

  2. Java黑皮书课后题第8章:*8.23(游戏:找到翻转的单元格)假定给定一个填满0和1的6*6矩阵,所有的行和列都有偶数个1。让用户翻转一个单元,编写一个程序找到哪个单元格被翻转了

    *8.23(游戏:找到翻转的单元格)假定给定一个填满0和1的6*6矩阵,所有的行和列都有偶数个1.让用户翻转一个单元,编写一个程序找到哪个单元格被翻转了 题目 题目描述与运行示例 破题 代码 题目 题 ...

  3. Java黑皮书课后题第2章:*2.17(科学:风寒温度)外面有多冷?...twc=35.74+0.6215ta-35.75v0.16+0.4275tav0.16,输入度数、风速显示风寒温度

    *2.17(科学:风寒温度)外面有多冷?...twc=35.74+0.6215ta-35.75v0.16+0.4275tav0.16,输入度数.风速显示风寒温度 题目 题目描述 破题 运行示例 代码 ...

  4. Java黑皮书课后题第7章:**7.24(仿真:优惠券收集问题)优惠券收集问题是一个经典的统计问题。编写程序,模拟要得到四张不同花色的牌所需要的选取次数,然后显示选中的四张牌

    **7.24(仿真:优惠券收集问题)优惠券收集问题是一个经典的统计问题.编写程序,模拟要得到四张不同花色的牌所需要的选取次数,然后显示选中的四张牌 题目 题目描述与运行示例 破题:花色与数字 代码 题 ...

  5. Java黑皮书课后题第4章:*4.3(几何:估算面积)应用4.1节图中以下地点的GPS位置:Georgia州的Atlanta……计算被这四个城市所围起来的区域面积

    *4.3(几何:估算面积)应用4.1节图中以下地点的GPS位置:Georgia州的Atlanta.Florida州的Orlando.Georgia州的Savannah.North Carolina的C ...

  6. Java黑皮书课后题第9章:*9.4(使用Random类)编写一个程序,创建一个种子为1000的Random对象,然后使用nextInt(100)方法显示0到100之间的前50个随机整数

    Java黑皮书课后题第9章:*9.4(使用Random类)编写一个程序,创建一个种子为1000的Random对象,然后使用nextInt方法显示0到100之间的前50个随机整数 题目 赘述 代码 题目 ...

  7. Java黑皮书课后题第9章:*9.3(使用Date类)编写程序创建一个Date对象,设置它的流逝时间分别为...,然后使用toString()方法分别显示上述日期

    Java黑皮书课后题第9章:*9.3(使用Date类)编写程序创建一个Date对象,设置它的流逝时间分别为...,然后使用toString方法分别显示上述日期 题目 代码 思路 代码 题目 代码 思路 ...

  8. Java黑皮书课后题第1章:1.12(以千米计的平均速度)假设一个跑步者1小时40分35秒跑了24英里。编写一个程序显示以每小时为多少千米为单位的平均速度值(1英里等于1.6千米)

    Java黑皮书课后题第1章:1.12(以千米计的平均速度) 题目 题目描述 破题 代码块 修改日志 题目 题目描述 1.12(以千米计的平均速度)假设一个跑步者1小时40分35秒跑了24英里.编写一个 ...

  9. Java黑皮书课后题第1章:*1.11(人口估算)编写一个程序,显示未来5年的每年人口数。假设当前的人口是312 032 486,每年有365天

    Java黑皮书课后题第1章:*1.11(人口估算) 题目 题目描述 破题 代码块 方法评析 为什么print函数内的表达式不能分开 修改日志 题目 题目描述 *1.11(人口估算)编写一个程序,显示未 ...

  10. Java黑皮书课后题第1章:1.7(求π的近似值)编写程序,显示4*(1-1/3+1/5-1/7+1/9-1/11【+1/13】)

    Java黑皮书课后题第1章:1.7(求π的近似值) 题目描述 代码 代码块 评析 修改日志 题目描述 可以使用以下公式计算π: [手动空格]π=4*(1-1/3+1/5-1/7+1/9-1/11+-) ...

最新文章

  1. win32下进程间通信方式之管道、邮件槽、剪切板、共享内存、消息、套接字、RPC、DDE等
  2. CentOS7设置自定义开机启动,添加自定义系统服务
  3. 数据库及中间件术语解释
  4. Javascript模块化编程系列二: 模块化的标准化(CommonJS AMD)
  5. sort()、stable_sort()、partial_sort()、nth_element()、greater()、is_sorted()
  6. 白盒测试之基本路径测试法[3]
  7. 数据库得事务控制详解,什么是事务回滚详解,通俗易懂
  8. linux常用运行库,软件常用运行库-软件常用运行库scku下载 v3.1.0.0官方版--pc6下载站...
  9. Centos7 搭建 Socks 服务
  10. JS或jQuery获取当前屏幕宽度
  11. DNS NoteBook
  12. CAD导入图片怎么操作?简单几步就导入
  13. 数组和链表 Array and Linked-List
  14. 如何区分前端bug还是后端bug?
  15. Android课程表显示
  16. 变更控制委员会CCB
  17. Pygame中blit( )方法讲解(Surface对象)
  18. dos版电影 (telnet towel.blinkenlights.nl的奇迹!!)-STAR WARS in ARCII
  19. SpringCloud核心组件概述(五大神兽)
  20. 计算摄影:相机成像流程 —— ISP

热门文章

  1. python的解释提示符为_python学习笔记01--基础
  2. zcmu1734: 18岁
  3. 一文读懂人类信息存储进化史
  4. 智能技术可以帮助解决人口老龄化问题吗?
  5. python数据科学讲解_数据科学的概念-Python数据科学技术详解与商业项目实战精讲 - Python学习网...
  6. 为什么说Android才是游戏开发者的乐土?
  7. 萌新资源 | 3D基础——渲染基本原理介绍
  8. 白鹭引擎助力《迷你世界》研发团队开发3D小游戏版
  9. 【蓝桥杯Java_C组·从零开始卷】第二节、ifswitch(超级详细,适合入门强化学习,理论与实战双保险(2021年12月30日上午9点直播·视频发布B站)
  10. 错误代码大全【100(临时响应)】【200(成功)】【300(已重定向)】【400(请求错误)】【500(服务器错误)】(HTTP协议版本)