文档库 最新最全的文档下载
当前位置:文档库 › java实验2(计算日期源代码)

java实验2(计算日期源代码)

java实验2(计算日期源代码)
java实验2(计算日期源代码)

实验二简单数据类型和流程控制

4:设int year,month,day分别表示一个日期中的年月日,试编程求

a)对于任意三个整数,判断其是否为一个合法的日期值。

b)给定一个日期值,计算若干天后的日期值

c)如果有两个日期值,计算他们相距的天数。

实验原理:

先了解日期,年份分为平年闰年,其中平年365天,这年的二月份为28天,闰年有366天,这年二月份有29天,月份除了二月之外,30天和31天之分,这主要用到数组来进行定义月份的天数,利用Scanner类从键盘中输入日期和相隔天数。输入日期不能超出那个日历相应的规定值

实验过程:

需引用的:Scanner 包名:date

类:Datetext属性:year,month,day;

方法:int Datetrue(int year,int month,int day)(这个方法功能是验证输入的日期是否正确,其中包括月份,每月的天数的验证,具体详细,看函数标注)

int CountDate(int year1,int month1,int day1,int count1)(给定一个日期,计算count天后的日期是什么时候,在这个函数里,还有调用Datetrue(int year,int month,int day)认证输入的日期是否正确)

int timeGap(int year_2,int month_2,int day_2,int year3,int month3,int day3)(输入两个日期,计算它们相隔时间多少天,先验证输入的日期是否正确,调用input()函数,具体详细过程看源代码)

void input(int y,int m,int d)(这个函数通过递归调用,因输入的日期不正确要求用户重新输入,调用了Dateture(int year,int month,int day))

package date;

import https://www.wendangku.net/doc/1b3761882.html,ng.String;

import java.util.Scanner;

public class Datetext {

public int year,month,day;

public int Datetrue(int year,int month,int day){ //验证输入的日期是否符合正常输入int y=year;

int d=day;

int mon=month;

int g=0;

//mon是月份

//int num=0;

/* num=year.length();

if(num!=4){

System.out.println( year+"年份输入不合法");

}*/

if(mon>12||mon<1){

System.out.println( month+"月份输入不合法");

g=-1;

}

else System.out.println("输入月份合法");

if(d>31||d<1)

System.out.println( "日期输入不合法");

if(mon!=2){

if(mon==1||mon==3||mon==5||mon==7||mon==8||mon==10||mon==12){

if((d>31||d<1)){

System.out.println( "日期输入不合法");

g=-1;

}

else System.out.println("输入日份合法");

}

else{

if((d>30||d<1)){

System.out.println("日期输入不合法");

g=-1;

}

else System.out.println("输入日份合法");

}

}

else {

if(y%4==0)

{

if((d>29||d<1)){

System.out.println( "日期输入不合法");

g=-1;

}

else System.out.println("输入日份合法");

}

if(y%4!=0)

{

if((d>28||d<1)){

System.out.println( "日期输入不合法");

g=-1;

}

else System.out.println("输入日份合法");

}

}

return g;

}

public int CountDate(int year1,int month1,int day1,int count1){ //给点一个日期值,计算若干天

后的日期

int year10=year1,month10=month1,day10=day1,count=count1;

System.out.println("输出"+year10+"年"+month10+"月"+day10+"号"+"到"+count+"天后的日期是多少?");//

System.out.println("下面来计算相隔"+count+"后的日期");

int ynumber,mnumber,month2;//month2是二月份的日数

if(year10%4==0){ //判断年份

ynumber=count/366;

mnumber=count%366+day10;

month2=29;

}

else {

ynumber=count/365;

mnumber=count%365+day10;

month2=28;

}

if(ynumber>=1){

year10=year10+ynumber;

}

/*if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){ day_count=31;

}else{if(month!=2)

day_count=30;

}*/

int month_day[]={0,31,month2,31,30,31,30,31,31,30,31,30,31};

for(;mnumber>month_day[month10];){

mnumber=mnumber-month_day[month10];

if(month10==12){

month10=0;

year10=year10+1;

}

month10++;

}

day10=mnumber;

System.out.println("加上"+count+"天是"+year10+"年"+month10+"月"+day10+"号");

return 0;

}

public int timeGap(int year_2,int month_2,int day_2,int year3,int month3,int day3){

System.out.println("下面来计算两个日期相隔多少天");

String date1=year_2+"-"+month_2+"-"+day_2;

String date2=year3+"-"+month3+"-"+day3;

int year1=year_2;

int month1=month_2;

int day2=day3;

int year2=year3;

int yearGap,dayGap=0;

int month2=month3;

int day1=day_2;

int yearday[]={0,0};

int

month_year_day[][]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,28,31,30,31,30,31,31,30,31, 30,31}};//分配月份的天数

if(year1>year2)

{

yearGap=year1-year2;

int temp1;

temp1=year1;

year1=year2;

year2=temp1;

int temp2;

temp2=month1;

month1=month2;

month2=temp2;

int temp3;

temp3=day1;

day1=day2;

day2=temp3;

}

else

{

yearGap=year2-year1;

}

int year[]={year1,year2};

int month[]={month1,month2};

for(int i=0;i<=1;i++){

if(year[i]%4==0){

month_year_day[i][2]=29;

yearday[i]=366;

}

else {month_year_day[i][2]=28;

yearday[i]=365;}

}

for(int i=1;i<(yearGap-1);i++)

{

if((year1+i)%4==0){

dayGap=dayGap+366;

}

else{

dayGap=dayGap+365;

}

}

if(yearGap>0){ //当两个日期之间有年份之差时

for(;month2>0;){

dayGap=dayGap+month_year_day[1][month2];

month2--;}

dayGap=dayGap+day2;

for(;month[0]<13;){

dayGap=dayGap+month_year_day[0][month[0]];

month[0]++;

}

dayGap=dayGap+month_year_day[0][month1]-day1;

}else //当两个年份之间没有年份之差时

{if(month1!=month2){//当有月份之差

if(month1>month2){

dayGap=dayGap+month_year_day[0][month2]-day2+day1;

for(;month2

month2++;

dayGap=dayGap+month_year_day[0][month2];

}

}

else if(month1

dayGap=dayGap+month_year_day[0][month1]-day1+day2;

for(;month1

month1++;

dayGap=dayGap+month_year_day[0][month1];

}

}

}else if(month1==month2){ //没有月份之差时

if(day1>day2){

dayGap=dayGap+day1-day2;

}

else dayGap=dayGap+day2-day1;

}

}

System.out.println("日期"+date1+"和日期"+date2+"之间相隔时间为:"+dayGap+"天");

return 0;

}

Datetext(int y,int m,int d){

year=y;

month=m;

day=d;

System.out.println(year+"年"+month+"月"+day+"号");

}

public void input(int y,int m,int d){

int out;

out=Datetrue(y,m,d);

if(out==-1){

System.out.println("请重新输入");

Scanner sc=new Scanner(System.in);

int y1=sc.nextInt();

int m1=sc.nextInt();

int d1=sc.nextInt();

y=y1;m=m1;d=d1;

input(y,m,d);

}

else{ year=y; month=m;day=d;}

}

public static void main(String[] args){

System.out.println("下面来进行日期计算过程");

Scanner sc=new Scanner(System.in);

System.out.println("请输入一个日期,请输入数字日期");

int y=sc.nextInt();

int m=sc.nextInt();

int d=sc.nextInt();

Datetext text=new Datetext(y,m,d);

System.out.println("来验证一下读取的日期是否正确");

text.Datetrue(y,m,d);

System.out.println("请输入一个日期");

int y1=sc.nextInt();

int m1=sc.nextInt();

int d1=sc.nextInt();

text.input(y1, m1, d1);

System.out.println("请输入一个相隔天数");

int n=sc.nextInt();

text.CountDate(text.year,text.month,text.day,n);

System.out.println("下面来计算两个时间段的相隔天数");

System.out.println("请输入日期:");

System.out.println("请输入第一个日期:");

int y2=sc.nextInt();

int m2=sc.nextInt();

int d2=sc.nextInt();

text.input(y2, m2, d2);

int y21=text.year;

int m21=text.month;

int d21=text.day;

System.out.println("请输入第二个日期:");

int y3=sc.nextInt();

int m3=sc.nextInt();

int d3=sc.nextInt();

text.input(y3, m3, d3);

int y31=text.year;

int m31=text.month;

int d31=text.day;

text.timeGap(y21, m21, d21, y31, m31, d31);

System.out.println("此程序就此结束");

sc.close();

}

}

实验一:

实验目的:用命令性窗口运行java程序,熟练Java程序在窗口中的运行。

实验过程:用记事本工具,编写Java源代码,保存,然后再另存为与类名相同的文件名,

后缀名是.Java

如下程序:public class Hello{

public static void main(String[] args){

System.out.println("欢迎Java!");

}

}

文件名为; Hello.java 存放路径E盘

实验结果:

java编写的简单计算器代码

import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.Vector; public class Tuo { String str1="0"; //运算数1 初值一定为0 为了程序的安全 String str2="0"; //运算数2 String fh="+"; //运算符 String jg="";//结果 //状态开关重要 int k1=1;//开关1 用于选择输入方向将要写入str2或 str2 int k2=1;//开关2 符号键次数 k2>1说明进行的是2+3-9+8 这样的多符号运算 int k3=1;//开关3 str1 是否可以被清0 ==1时可以 !=1时不能被清0 int k4=1;//开关4 str2 同上 int k5=1;//开关5 控制小数点可否被录入 ==1时可以 !=1 输入的小数点被丢掉 JButton jicunqi; //寄存器记录是否连续按下符号键 Vector vt=new Vector(20,10); JFrame frame=new JFrame("sunshine---计算器"); JTextField jg_TextField=new JTextField(jg,20);//20列 JButton clear_Button=new JButton("清除"); JButton button0=new JButton("0"); JButton button1=new JButton("1"); JButton button2=new JButton("2"); JButton button3=new JButton("3"); JButton button4=new JButton("4"); JButton button5=new JButton("5"); JButton button6=new JButton("6"); JButton button7=new JButton("7"); JButton button8=new JButton("8"); JButton button9=new JButton("9"); JButton button_Dian=new JButton("."); JButton button_jia=new JButton("+"); JButton button_jian=new JButton("-"); JButton button_cheng=new JButton("*"); JButton button_chu=new JButton("/"); JButton button_dy=new JButton("="); //////////////////////////////////////////////////////////////////////// public static void main(String[] args) {

java编写的简单的计算器程序

计算器 项目内容:编写一个Applet,模仿windows附件所带计算器的功能,可以帮助用户完成计算功能,具体如下图所示。 项目要求:使用图形的方式借助窗口、菜单、按钮等标准界面元素和鼠标操作,来帮助用户方便地向计算机系统发出命令,启动操作,并将系统运行的结果同样以图形的方式显示给用户,这样更加直观和生动; 1.Applet容器中组件的添加与设置,包括面板以及菜单的使用; 2.容器中组件的布局管理; 3.Java核心包中数组、数学计算类的使用; 4.异常的处理; 5.事件处理模型中的三类对象的使用: 1.Event-事件,用户对界面操作在java语言上的描述,以类的形式出现,例如键盘操作对应的事件类是KeyEvent。 2.Event Source-事件源,事件发生的场所,通常就是各个组件,例如按钮Button。 3.Event handler-事件处理者,接收事件对象并对其进行处理的对象。 6.程序中事件处理的流程:

1.计算流程的细化 参考代码: import .*;

import .*; import .*; import import import public class Calculator implements ActionListener { #############"); dd(panel); panel1 = new JPanel(); panel2 = new JPanel(); (new BorderLayout()); 键入计算的第一个数字。\n"); ("2. 单击“+”执行加、“-”执行减、“*”执行乘或“/”执行除。\n"); ("3. 键入计算的下一个数字。\n"); ("4. 输入所有剩余的运算符和数字。\n"); ("5. 单击“=”。\n"); aboutCal = new JMenuItem(" 关于计算器(A)"); (this);

java简单计算器源代码

简单计算器代码 package calcultorthree; import java.awt.BorderLayout;//导入边界布局管理器类 import java.awt.GridLayout;//导入网格布局管理器类 import java.awt.TextField;//导入文本区域类 import java.awt.event.ActionEvent;//导入事件类 import java.awt.event.ActionListener;//导入事件监听者类 import javax.swing.JButton;//导入按钮类 import javax.swing.JFrame;//导入窗体 import javax.swing.JPanel;//导入面板 /** *本例实现了简单计算器代码,具备加减乘除和正弦功能,旨在抱砖引玉。熟悉java的同学,可以在此基础上实现更复杂的功能。 * @author Fjsh */ public class CalcultorThree { //新建对象,在构造函数中进行初始化 JFrame frame;//新建窗体对象 JButton buttonzero,buttondot,buttonequal;//新建按钮“0”“.”“=” JButton buttonplus,buttonminus,buttonmultiple,buttondevision, buttonsin,buttontozero;//新建按钮“+”“-”“*”“/”“sin”和归零按钮JButton buttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix, buttonseven,buttoneight,buttonnine;//新建数字按钮“0”“1”“2”“3”“4”“5”“6”“7”“8”“9” JPanel panelwest,panelcenter,paneleast;//新建三个面板 TextField tf;//新建文本区域对象 public CalcultorThree(){ //初始化对象 tf=new TextField(30);//构造空文本字段,字符宽度为30 frame =new JFrame("CalculatorThree");//构造窗体对象,名称为“CalculatorThree”

科学计算器程序Java代码

科学计算器程序Java代码

MC:清除独立内存里的数字 MR:读出独立内存数字 MS:将显示数字保存到独立内存,并取代内存中原有数字 M+:将显示数字向独立内存累加 (独立内存是一个临时寄放数字的存储器,方便计算) CE:纠错键(CLEAR ERROR).输入数字有错,按它可以重新输入 C:表示清零,将计算器恢复到开机状态 功能举例: 源程序如下: import java.awt.BorderLayout;

import javax.swing.JRadioButtonMenuItem; import javax.swing.JTextField; public class Calucator extends JFrame { private JTextField tf; private JPanel panel1, panel2, panel3, panel4; private JMenuBar myBar; private JMenu menu1, menu2, menu3; private JMenuItem editItem1, editItem2, help1, help2, help3; private JRadioButtonMenuItem seeItem1, seeItem2;//单选框 private JCheckBoxMenuItem seeItem3;//复选框 private ButtonGroup bgb; private String back; private boolean IfResult = true, flag = false;

java编写简单计算器源代码

import javax.swing.*; import java.awt.event.*; import java.awt.*; import https://www.wendangku.net/doc/1b3761882.html,ng.Math; class ring extends JFrame implements ActionListener { //定义成员变量: //JFrame frame;//定义一个窗口类; JTextField text;//定义一个文本框类; JLabel label;//定义一个标签类; JPanel p1,p2,p3,p4,p5,p6;//定义面板类; String s1,s,s2;//定义三个字符串变量; int count=0; JButton a1,a2,a3,a4,a5,a6,b1,b2,b3,b4,b5,b6,c1,c2,c3,c4,c5,c6,d1,d2,d3,d4 ,d5,d6; //ring的构造函数; ring() { this.setTitle("计算器"); // super("计算器"); JMenuBar menubar1=new JMenuBar();//新建菜单条; this.setJMenuBar(menubar1); JMenu menu1=new JMenu("编辑(E)"); JMenu menu2=new JMenu("查看(V)"); JMenu menu3=new JMenu("帮助(H)"); menubar1.add(menu1); menubar1.add(menu2); menubar1.add(menu3); JMenuItem item1=new JMenuItem("复制(c) ctrl+c"); JMenuItem item2=new JMenuItem("粘贴(p) ctrl+v"); JMenuItem item3=new JMenuItem("标准型(T)"); JMenuItem item4=new JMenuItem("科学型(s)"); JMenuItem item5=new JMenuItem("数字分组(I)"); JMenuItem item6=new JMenuItem("帮助主题(H)"); JMenuItem item7=new JMenuItem("关于计算机(A)"); menu1.add(item1); menu1.add(item2); menu2.add(item3); menu2.add(item4); menu2.add(item5); menu3.add(item6);

计算器设计的java课程设计报告

计算器设计的java 课程设计报告

华东交通大学课程设计课程设计题目:计算器设计 课程: Java程序设计 题目:计算器设计 年级:级 专业:信息一班 学号: 姓名: 组员: 指导教师:

课程设计(论文)任务书 基础学院信息与计算科学专业—1班 一、课程设计(论文)题目计算器的设计 二、课程设计(论文)工作自年 6 月23日起至年6月27日止。 三、课程设计(论文) 地点: 计算机中心 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)使学生掌握系统各功能模块的基本工作原理; (2)掌握Java的基本编程原理和基本的编程方法; (3)使学生学会系统调试; (4)培养学生分析、解决问题的能力; (5)提高学生的软件文档写作能力和团队合作精神。 2.课程设计的任务及要求 1)基本要求: (1)分析系统各功能模块的工作原理; (2)提出系统的设计方案; (3)对所进行编程、调试、修改。 2)创新要求: 在基本要求达到后,可进行创新设计,如:用虚函数,文件流,重载流插入运算符等。

3)课程设计论文编写要求 (1)要按照书稿的规格打印誊写设计论文; (2)论文包括目录、摘要、正文、总结等; (3)毕业论文装订按学校的统一要求完成。 4)答辩与评分标准: (1)达到课程设计的目的与要求,程序的可读性较好,并调试正确,60分; (2)能正确回答老师所提问题,可增加10分; (3)课程设计报告书写规范整齐,可增加10分; (4)心得体会认真总结,可增加10分; (5)程序有创新性,可增加10分; 成绩评定实行优秀、良好、中等、及格和不及格五个等级。不及格者需重做。 5)参考文献: (1)丁振凡.《J ava语言程序设计》清华大学出版社 (2)丁振凡.《J ava语言程序设计实验指导与习题解析》清华大学出版社 (3)http:/ /https://www.wendangku.net/doc/1b3761882.html, 6)课程设计进度安排 内容天数地点

JAVA编写的计算器源代码

package jsq; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.UIManager; public class Test implements ActionListener { /** * */ JFrame f = new JFrame(); JTextField tf = new JTextField("0."); JMenuBar bar=new JMenuBar(); JMenu menuEdit=new JMenu("编辑(E)"); JMenu menuView=new JMenu("查看(V)"); JMenu menuHelp=new JMenu("帮助(H)"); JMenuItem menuEditCopy=new JMenuItem("复制(C)"); JMenuItem menuEditPaste=new JMenuItem("粘贴(V)"); JMenuItem menuHelpAbout = new JMenuItem("关于计算器(A)"); JPanel panel0 = new JPanel(); JPanel panel2 = new JPanel(); JPanel panel = new JPanel(); JPanel panel3 = new JPanel(); JPanel panel4 = new JPanel(); JPanel panel5 = new JPanel();

java简单计算器源代码

package calcultorthree; /** *本例实现了简单计算器代码,具备加减乘除和正弦功能,旨在抱砖引玉。熟悉java的同学,可以在此基础上实现更复杂的功能。 * @author Fjsh */ public class CalcultorThree { “=” JButton buttonplus,buttonminus,buttonmultiple,buttondevision, buttonsin,buttontozero;“=”,注册事件监听器,设置1行3列的布局,添加到到西边的面板buttonzero=new JButton("0"); buttondot=new JButton("."); buttonequal=new JButton("="); (h); (h); (h); (new GridLayout(3,1)); (buttonzero); (buttondot); (buttonequal); ; }

if()==buttontozero){//归零操作 (""); } if()==buttonzero){//按键0操作 ()+"0"); flag1=());//将文本区域转换成Double类型,赋给flag1 } } else if()==buttontwo){//按键2操作 ()+"2"); flag1=()); } else if()==buttonthree){//按键3操作 ()+"3"); flag1=()); } else if()==buttonfour){//按键4操作 ()+"4"); flag1=()); } else if()==buttonfive){//按键5操作

Java科学计算器程序代码

计算器布局显示: 功能举例: ①13+20=33 ②-7*14=-98:先输入7,再单击-/+将其变成负数,然后依次单击×号、14与= ③7!=5040 ④sin30°=0.5:先输入30,然后按下′″按钮转换成角度值,再按下sin即可显示结果 ⑤sqrt(4)=2:利用鼠标点击4后再点击sqrt按键即可显示结果 ⑥2*π=6.2832 …… 源程序如下: import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.DecimalFormat; import javax.swing.BorderFactory; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JCheckBoxMenuItem; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JPanel; import javax.swing.JRadioButtonMenuItem; import javax.swing.JTextField;

java计算器源代码(仿win7)

java计算器源代码(仿win7) import java.awt.*; import javax.swing.*; import java.awt.event.*; class Cal extends JFrame implements ActionListener,MouseListener{ JMenuBar menubar; JMenu menu_check,menu_edit,menu_help; JMenuItem menuitem_science,menuitem_check,menuitem_exit,menuitem_copy, menuitem_paste,menuitem1_copy,menuitem1_paste,menuitem_chelp,menuitem_about; JCheckBoxMenuItem menuitem_standard; JTextField ta1; int x,result2; double op1,op2,opall; private boolean end=false,flag=false,add=false,sub=false,cheng=false,chu=false,flagop2=false; JButton b_mc,b_mr,b_ms,b_mjia,b_mjian,b_tui,b_ce,b_c,b_jj, b_dui,b_7,b_8,b_9,b_chu,b_baifenhao,b_4,b_5,b_6,b_cheng, b_daoshu,b_1,b_2,b_3,b_jian,b_0,b_dian,b_jia,b_dengyu; JPanel p_all,p_button1,p_button2,p_txt,p1,p2,p3,p4,p5; private String str,resultstr;

简易计算器Java实训报告

实训名称: Java程序设计实训 系(部):信息工程系 专业班级:计算机科学与技术学生姓名: 学号: 指导教师:张民 完成日期:

山东科技大学泰山科技学院

目录 1 实训目的 (2) 2 简易计算机的分析与设计 (2) 系统功能描述 (2) 系统模块设计 (2) 数据库结构设计 (3) 3 主要代码清单 (4)

4 程序运行与测试 (8) 5 实训总结 (10)

简易计算机的设计与实现 1 实训目的 通过本课程设计能够较全面的掌握面向对象程序设计的有关概念和开发方法,以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力。利用Java Applet图形界面首先开始设计一个计算器的界面,定义计算器所需要的按钮并赋给其按钮名称,使得使用计算器时简单明了,清晰可见,操作轻松。 给各个按钮进行算法,利用鼠标点击事件,当鼠标点击某个按钮时就开始执行那个按钮所定义的算法,生成数据并显示。 除数字的输入为直接进行输入外,其他运算例如+、-、*、/、开平方等算法要求计算时通过内部较为复杂的运算将结果显示在显示屏上。 至于其中的进制转换功能的实现则是直接调用Java中进制转换的函数,例如要将十进制转换成二进制则可直接调用函数(int i)来实现,充分显示了Java语言的简洁性和Java语言功能的强大性。 当然了在输入数据时还要进行异常捕捉,防止越界的现象的发生,这也是Java语言健壮性的体现! 2 简易计算机的分析与设计 系统功能描述 1)可进行“+”、“-”、“*”、“/”以及混合运算。 2)支持()改变运算的优先级 3)可进行二、十六和十进制数的相互转换 4)支持复制和粘贴操作

java简单计算器源代码

j a v a简单计算器源代码集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

简单计算器代码packagecalcultorthree; /** *本例实现了简单计算器代码,具备加减乘除和正弦功能,旨在抱砖引玉。熟悉java的同学,可以在此基础上实现更复杂的功能。 *@authorFjsh */ publicclassCalcultorThree{ //新建对象,在构造函数中进行初始化 JFrameframe;//新建窗体对象 JButtonbuttonzero,buttondot,buttonequal;//新建按钮“0”“.”“=”JButtonbuttonplus,buttonminus,buttonmultiple,buttondevision, buttonsin,buttontozero;//新建按钮“+”“-”“*”“/”“sin”和归零按钮JButtonbuttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix, buttonseven,buttoneight,buttonnine;//新建数字按钮 “0”“1”“2”“3”“4”“5”“6”“7”“8”“9” JPanelpanelwest,panelcenter,paneleast;//新建三个面板 TextFieldtf;//新建文本区域对象 publicCalcultorThree(){ //初始化对象 tf=newTextField(30);//构造空文本字段,字符宽度为30 frame=newJFrame("CalculatorThree");//构造窗体对象,名称为“CalculatorThree”

java课设计算器

java课设计算器 华东交通大学理工学院 课程设计报告书 所属课程名称Java语言程序设计题目简单计算器设计 分院电信分院 专业班级12通信工程1班学号212 学生姓名 指导教师 2014 年6 月20日

java课设计算器 目录 第1章计算器机要求及内 容 (3) 第2章计算器设计............................................................. 4 第3章计算器程序代码 (14) 第4章计算器测试............................................................. 49 第5章课程设计心 得 (53) 第6章参考文献.............................................................. ....54第1章计算器内容及要求 一设计内容: 1. 实现基本的加减乘除法的运算; 2 实现常用的函数计算功能;

3. 实现将系统时间在界面上显示; 4. 实现菜单对计算器的关闭、开启及设置运算法则的操作。 二设计要求 1.使用菜单控制计算器界面的显示,关闭; 2.使用菜单控制运算的法则; 3.使用菜单显示函数运算窗口及运算; 4.数据采用手工输入方式; 5.对异常的数据进行异常处理,比如1/0的情况。

第2章计算器设计 一.设计模式 采用MVC设计模式,将模型,视图,控制分别单独完成。在模型中将视图,控制添加到其中,再分别完成视图的,控制的程序。 二.结构设计 在界面中分为四个视图的组件,控制分为按钮事件,菜单选择事件,以及键盘输入控制事件。如图1 图1

JAVA编写的计算器源代码

import class Test implements ActionListener { /** * */ JFrame f = new JFrame(); JTextField tf = new JTextField("0."); JMenuBar bar=new JMenuBar(); JMenu menuEdit=new JMenu("编辑(E)"); JMenu menuView=new JMenu("查看(V)"); JMenu menuHelp=new JMenu("帮助(H)"); JMenuItem menuEditCopy=new JMenuItem("复制(C)"); JMenuItem menuEditPaste=new JMenuItem("粘贴(V)"); JMenuItem menuHelpAbout = new JMenuItem("关于计算器(A)"); JPanel panel0 = new JPanel(); JPanel panel2 = new JPanel(); JPanel panel = new JPanel(); JPanel panel3 = new JPanel(); JPanel panel4 = new JPanel(); JPanel panel5 = new JPanel(); JButton btBk = new JButton(" Backspace"); JButton btCe = new JButton("Ce"); JButton btCl = new JButton("C"); JButton bt7 = new JButton("7"); JButton bt8 = new JButton("8"); JButton bt9 = new JButton("9"); JButton btDiv = new JButton("/"); JButton btSqrt = new JButton("sqrt"); JButton bt4 = new JButton("4"); JButton bt5 = new JButton("5"); JButton bt6 = new JButton("6"); JButton btMult = new JButton("*"); JButton btMol = new JButton(" % "); JButton bt1 = new JButton("1"); JButton bt2 = new JButton("2"); JButton bt3 = new JButton("3"); JButton btMinu = new JButton("-"); JButton btCoun = new JButton(" 1/x");

计算器设计的java课程设计报告

】 · ( 华东交通大学课程设计 课 程: Java 程序设计 题 目: 计算器设计 年 级: 2010级 专 业: 信息一班 * 学 号: 姓 名: 组 员: 指导教师: 课程设计题目:计算器设计

课程设计(论文)任务书 基础学院信息与计算科学专业2010—1 班 一、课程设计(论文)题目计算器的设计 二、课程设计(论文)工作自2013 年 6 月23日起至2013 年6月27日止。 三、课程设计(论文) 地点: 计算机中心 · 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)使学生掌握系统各功能模块的基本工作原理; (2)掌握Java的基本编程原理和基本的编程方法; (3)使学生学会系统调试; (4)培养学生分析、解决问题的能力; (5)提高学生的软件文档写作能力和团队合作精神。 2.课程设计的任务及要求 ' 1)基本要求: (1)分析系统各功能模块的工作原理; (2)提出系统的设计方案; (3)对所进行编程、调试、修改。 2)创新要求: 在基本要求达到后,可进行创新设计,如:用虚函数,文件流,重载流插入运算符等。3)课程设计论文编写要求 (1)要按照书稿的规格打印誊写设计论文; > (2)论文包括目录、摘要、正文、总结等; (3)毕业论文装订按学校的统一要求完成。 4)答辩与评分标准: (1)达到课程设计的目的与要求,程序的可读性较好,并调试正确,60分; (2)能正确回答老师所提问题,可增加10分; (3)课程设计报告书写规范整齐,可增加10分; (4)心得体会认真总结,可增加10分; (5)程序有创新性,可增加10分; [ 成绩评定实行优秀、良好、中等、及格和不及格五个等级。不及格者需重做。 5)参考文献:

计算器JAVA源代码

计算器JAVA源代码 这是我在培训班时,学了一个月后编写的一个简易计算器的源代码。从设计、编码、实现该程序共用时一天(10个小时)。当时只是学完了JAVA的基础知识,各位也看得出,这里面没有用到高深的技术,全是基础的,所以我当时理解的就是:编程主要需要的是解决问题的思维、思想!现将其公布,希望能给初学者一点起示: [注:将考贝后,在JDK环境下可直接运行] [源代码] import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.*; class Jsqzj implements ActionListener { JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16; JFrame f; GridLayout c=new GridLayout(4,4); JTextField tf = new JTextField(); public void init() { f=new JFrame("CardLayout testing"); Container ct = f.getContentPane();

tf.setHorizontalAlignment(JTextField.RIGHT); ct.add(tf,"North"); JPanel p2=new JPanel(); ct.add(p2,"Center"); GridLayout c=new GridLayout(4,4); p2.setLayout(c); JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16; b1=new JButton("1"); b2=new JButton("2"); b3=new JButton("3"); b4=new JButton("4"); b5=new JButton("5"); b6=new JButton("6"); b7=new JButton("7"); b8=new JButton("8"); b9=new JButton("9"); b10=new JButton("0"); b11=new JButton("."); b12=new JButton("="); b13=new JButton("+"); b14=new JButton("-");

用JAVA编写计算器程序(模拟Windows计算器)

用JAVA编写计算器程序(模拟Windows计算器) import java.awt.*; import java.awt.event.*; public class Calculation extends WindowAdapter implements ActionListener { double dResult=0; double dNowInput=0; double dMemory; int n=0; //记载小数位数 int nOperation=1; // 记录运算符类型 int nBitsNum=0; //记录总共输入的位数 boolean alreadyHaveDot=false; //已经有小数点? boolean keyAvailable=true; boolean alreadyClickedEqueal=false; //是否按下过"="? boolean isTempNowInput=false; //是否在计算出结果后直接按运算符将结果赋给了当前输入值? Frame f; Panel p1,p2,p3,p4,p5,p6; TextField tf1,tf2; Button b1,b2,b3,b4,b5,b6,b7,b8,b9,b0; Button bDiv,bSqrt,bMulti,bMinus,bPercent,bPlus,bReciprocal,bEqual,bDot,bNegative; Button bBackspace,bCE,bC,bMR,bMS,bMC,bM; public void display() { f=new Frame("计算器"); f.setSize(280,213);

科学计算器程序Java代码

功能举例: 源程序如下: import import import import import import import import import import import import import import import import import import import public class Calucator extends JFrame { private JTextField tf; private JPanel panel1, panel2, panel3, panel4; private JMenuBar myBar; private JMenu menu1, menu2, menu3; private JMenuItem editItem1, editItem2, help1, help2, help3; private JRadioButtonMenuItem seeItem1, seeItem2;###");, new Dot(), ; addButton(panel2, "+", new Signs(), ; addButton(panel2, "tan", new Signs(), ; addButton(panel2, "%", new Signs(), ; addButton(panel2, "π", numActionListener, ; addButton(panel2, "e", numActionListener, ; addButton(panel2, "′″", new Signs(), ; addButton(panel2, "=", new Signs(), ; JButton btns = new JButton("计算器"); createLoweredBevelBorder()); false);rim()); (i)); }else if(str == "Backspace"){ if()) > 0){ if().length() > 1){ ().substring(0, ().length() - 1)); ength() > 2){ ().substring(0, ().length() - 1)); }else{

java编写的简单的计算器程序

j a v a编写的简单的计 算器程序 -CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN

计算器 项目内容:编写一个Applet,模仿windows附件所带计算器的功能,可以帮助用户完成计算功能,具体如下图所示。 项目要求:使用图形的方式借助窗口、菜单、按钮等标准界面元素和鼠标操作,来帮助用户方便地向计算机系统发出命令,启动操作,并将系统运行的结果同样以图形的方式显示给用户,这样更加直观和生动; 1.Applet容器中组件的添加与设置,包括面板以及菜单的使用; 2.容器中组件的布局管理; 3.Java核心包中数组、数学计算类的使用; 4.异常的处理; 5.事件处理模型中的三类对象的使用: 1.Event-事件,用户对界面操作在java语言上的描述,以类的形式出现,例如键盘操作对应的事件类是KeyEvent。 2.Event Source-事件源,事件发生的场所,通常就是各个组件,例如按钮Button。 3.Event handler-事件处理者,接收事件对象并对其进行处理的对象。 6.程序中事件处理的流程:

1.计算流程的细化

参考代码: import .*; import .*; import .*; import import import public class Calculator implements ActionListener { #############"); dd(panel); panel1 = new JPanel(); panel2 = new JPanel(); (new BorderLayout()); 键入计算的第一个数字。\n"); ("2. 单击“+”执行加、“-”执行减、“*”执行乘或“/”执行除。\n"); ("3. 键入计算的下一个数字。\n"); ("4. 输入所有剩余的运算符和数字。\n"); ("5. 单击“=”。\n"); aboutCal = new JMenuItem(" 关于计算器(A)"); (this);

用java编写简单计算器

用java写了一个简单计算器,能实现简单的数据计算。 一、先写界面代码: 在UI包里面新建一个Class文件,取名自己想,这里我写的是CalculatorFrame package ui; import java.awt.Color; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.border.TitledBorder; public class CalculatorFrame extends JFrame { private static final long serialV ersionUID = 1L; public String opt; public String str; private JTextArea show; private ClientContext clientContext;//引用控制器对象 /*因为调用了控制器里面的方法,所以要对控制器的对象进行赋值,否则运行会出现空指针异常*/ public void setClientContext(ClientContext clientContext) { this.clientContext = clientContext; } public CalculatorFrame() { init(); } private void init() { setTitle(" Simple Calculator"); setBounds(533, 184, 300, 400); setContentPane(creatContentPane()); }

相关文档
相关文档 最新文档