realsmy
久城的学习室
BlogJava
首页
新随笔
联系
聚合
管理
随笔分类
EXT&Extjs(4)
(rss)
Flex&ActionScript(2)
(rss)
GOF设计模式(3)
(rss)
JavaTest(19)
(rss)
Java理解笔记(9)
(rss)
Java转载(5)
(rss)
Jsp学习(3)
(rss)
XML(3)
(rss)
其他技术学习(5)
(rss)
小知识点(3)
(rss)
数据库学习(9)
(rss)
日语学习(4)
(rss)
程序人生(25)
(rss)
翻译(1)
(rss)
软件工程(5)
(rss)
问题(2)
(rss)
文章分类
个人空间(12)
(rss)
转载收藏(8)
(rss)
收藏夹
我的收藏夹(6)
(rss)
随笔档案
2010年2月 (1)
2009年1月 (1)
2008年12月 (1)
2008年10月 (1)
2008年7月 (1)
2008年3月 (3)
2008年2月 (3)
2008年1月 (5)
2007年12月 (7)
2007年11月 (2)
2007年10月 (5)
2007年9月 (11)
2007年8月 (2)
2007年7月 (1)
2007年6月 (2)
2007年5月 (12)
2007年4月 (16)
2007年3月 (2)
2006年12月 (1)
2006年11月 (5)
2006年10月 (9)
2006年9月 (11)
文章档案
2008年1月 (1)
2007年9月 (1)
2007年8月 (1)
2007年5月 (1)
2007年4月 (6)
2006年9月 (1)
相册
Class Diagram
Friends
GIF
My Cai
Neusoft
最新随笔
1. [外包人(waibaoren.com)-中国外包资讯/论坛] 寻求有志者共同发展
2. 2009年 --- 开篇
3. 这次搭建oracle环境...
4. 最近的外包项目总结
5. 忙了半年多,终于回来了。
6. 三月雪
7. Extjs实战 --- 发布小纸条 (附下载)
8. 雨佛湖
9. 晕,Oracle XDB的端口是8080
10. 情人节不加班
11. 外来语的片假名表记
12. Flex项目技术架构前的假想
13. Flex学习笔记 --- ActionScript & mxml
14. Extjs学习笔记 --- 实战
15. 一道JS小考题
最新评论
1. re: 对高内聚,低耦合的理解
终于明白了
,别人讲的太深奥了,就不能粗浅的讲么真是蛋疼
--中二
2. re: 练习题---JS排序
retention
--让他
3. re: 对高内聚,低耦合的理解
瞬间明了!!!大谢!!!
--泡沫__opt
4. re: 全角波浪线的乱码情况[未登录]
oracle数据库字符编码问题,用utf-8编码应该可以解决
--Ray
5. re: 对高内聚,低耦合的理解[未登录]
受益啊,多谢多谢!
--匿名
练习题---三角运算
Posted on 2007-10-16 14:09
久城
阅读(812)
评论(0)
编辑
收藏
所属分类:
JavaTest
好久没有做练习题了。
编写一个小的计算程序,用来进行三角运算(
Sin
,
Cos
,
tan…
),该程序通过交互接收用户输入,例如:
系统刚启动的时候处于提示状态
:
Function>
这时用户可以输入函数名称,输入
sin
表示想进行
sin
运算,此时再提醒用户输入角度:
Angel>
用户可以输入角度,
计算完毕后,以
Result<
方式输出结果,并且重新回到
Function>
的状态下。
在任何时候用户输入非法,则显示
Error<
,在其后描述具体的错误原因。然后重新回到
错误输入前状态。
(
1
)语言不限
(
2
)支持很方便的扩展
(3)变量的命名和使用要符合学习的内容
代码如下:
/** */
/**
---------------------------------------------
* Class Name : YW2_Test01.java
* Purpose : 编写一个小的计算程序,用来进行三角运算(Sin, Cos,tan…),该程序通过交互接收用户输入
*
*
@author
realsmy
*
@since
2007/10/16
*
* Copyright realsmy. All rights reserved.
*---------------------------------------------
*/
package
com.neusoft.test;
import
java.io.BufferedReader;
import
java.io.IOException;
import
java.io.InputStreamReader;
//
三角函数名的枚举类型
enum
FuncName
{
SIN,
COS,
TAN
}
public
class
YW5_Test01
{
//
三角函数名
private
FuncName function;
//
表示角度
private
double
angel;
//
圆周率常量
private
static
double
PAI
=
3.14159265
;
/** */
/**
* ---------------------------------------------
* Method Name : YW5_Test01
* Exposition : 构造函数,执行运算过程
* ---------------------------------------------
*/
public
YW5_Test01()
{
//
是指三角函数名
setFunction();
//
设置角度
setAngel();
//
计算出结果
getResult();
}
/** */
/**
* ---------------------------------------------
* Method Name : setFuncName
* Exposition : 设置三角函数名字
* ---------------------------------------------
*/
private
void
setFuncName(FuncName func)
{
this
.function
=
func;
}
/** */
/**
* ---------------------------------------------
* Method Name : setFunction
* Exposition : 设置三角函数名字
* ---------------------------------------------
*/
private
void
setFunction()
{
System.out.print(
"
Function>
"
);
if
(
!
checkFunction(getFunction()))
{
System.out.println(
"
error: worng function name, please input again:
"
);
setFunction();
}
}
/** */
/**
* ---------------------------------------------
* Method Name : getFunction
* Exposition : 取得三角函数名字
* ---------------------------------------------
*/
private
String getFunction()
{
String func
=
null
;
try
{
BufferedReader in
=
new
BufferedReader(
new
InputStreamReader(System.in));
func
=
in.readLine().toUpperCase();
}
catch
(IOException e)
{
}
return
func;
}
/** */
/**
* ---------------------------------------------
* Method Name : checkFunction
* Exposition : 检查三角函数名字
* ---------------------------------------------
*/
private
Boolean checkFunction(String func)
{
for
( FuncName funcName : FuncName.values())
{
if
( funcName.toString().equals(func))
{
setFuncName(funcName);
return
true
;
}
}
return
false
;
}
/** */
/**
* ---------------------------------------------
* Method Name : setAngel
* Exposition : 设置角度
* ---------------------------------------------
*/
private
void
setAngel()
{
System.out.print(
"
Angel>
"
);
getAngel();
}
/** */
/**
* ---------------------------------------------
* Method Name : getAngel
* Exposition : 取得角度
* ---------------------------------------------
*/
private
double
getAngel()
{
try
{
BufferedReader in
=
new
BufferedReader(
new
InputStreamReader(System.in));
angel
=
Double.parseDouble(in.readLine());
}
catch
(NumberFormatException ne)
{
System.out.println(
"
The input is not a number, please input again:
"
);
setAngel();
}
catch
(IOException e)
{
}
return
angel;
}
/** */
/**
* ---------------------------------------------
* Method Name : getResult
* Exposition : 取得结果
* ---------------------------------------------
*/
private
void
getResult()
{
double
result
=
0
;
switch
(function)
{
case
SIN:
result
=
Math.sin(angel
*
PAI
/
180
);
break
;
case
COS:
result
=
Math.cos(angel
*
PAI
/
180
);
break
;
case
TAN:
result
=
Math.tan(angel
*
PAI
/
180
);
break
;
}
System.out.println(
"
Result<
"
+
function
+
"
"
+
angel
+
"
=
"
+
result);
}
/** */
/**
* ---------------------------------------------
* Method Name : main
* Exposition : 测试用主函数
* ---------------------------------------------
*/
public
static
void
main(String[] args)
{
new
YW5_Test01();
}
}
欢迎来访!^.^!
本BLOG仅用于个人学习交流!
目的在于记录个人成长.
所有文字均属于个人理解.
如有错误,望多多指教!不胜感激!
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
简单的batch调用
使用validate.xml时,让结果只返回一条
练习题--JAVA实现二维数组对列排序
练习题---JS排序
练习题---三角运算
基于TCP的多人聊天小程序
JAVA CLASS LOADING技术研究---整理后的代码
毕业设计-代码部分
自定义ClassLoader的实现
模拟银行存储实验---GUI实现
常用链接
我的随笔
我的文章
我的评论
我的参与
最新评论
BLOG
【爪哇咖啡馆】
ajaxbbs
BeanSoft
DUDU
java朋友
knowNothing
Rosicky
Spring Rain
小可爱
徒步穿越世界
我为J狂
良葛格
花半里
黑蝙蝠
JAVA学习网站
CSDN社区
IT PUB
JAVA RESEARCH
Java World@tw
JAVA2S
JAVAEYE
java学习室
java开源大全
J道论坛
matrix-与JAVA共舞
中国Eclipse社区
吉林IT信息网
太平洋网络学院
友情链接
中文爱百科
外包人
致力于外包事业的发展与交流,用心打造中国第一外包资讯论坛。
济南印刷报价
学习网站
helloajax
JStang
w3schools
中国RIA开发者论坛
网页特效
我的流水帐
2005.11-2005.12
2005.11-2006.8
2006.12
2006.12-2007.6
2006.7-2006.8
2006.8
2007.6
我的老师
Teacher Su
Teacher Yao
战友^-^
彭俊
糖糖的书房
静儿
积分与排名
积分 - 248102
排名 - 228
评论排行榜
1. 谈中国软件外包(21)
2. Extjs实战 --- 发布小纸条 (附下载)(19)
3. 对高内聚,低耦合的理解(14)
4. Extjs学习笔记 --- 实战(10)
5. 参与第一个外包项目总结(10)
阅读排行榜
1. 对高内聚,低耦合的理解(36958)
2. Extjs学习笔记 --- 实战(17264)
3. 从SQL语言的分类谈COMMIT和ROLLBACK的用法 (10210)
4. Extjs学习笔记 --- 初篇(8639)
5. Flex学习笔记 --- ActionScript & mxml(6889)
Copyright © 久城