《JAVA语言的科学与艺术》学习笔记04

来源:互联网 发布:网络覆盖公司 编辑:程序博客网 时间:2024/06/11 04:31

5.2 TemperatureConversionTable.java

import acm.program.*;public class TemperatureConversionTable extends ConsoleProgram {public void run() {println("Celsius to Fahrenheit table.") ;for (int c = LOWER_LIMIT ;c <UPPER_LIMIT ;c+=STEP_SIZE){int f = (int) celsiusToFahrenheit(c) ;println(c+"C="+f+"F");}}private double celsiusToFahrenheit(double c) {return 9.0 /5.0 * c +32 ;}private static final int LOWER_LIMIT =0 ;private static final int UPPER_LIMIT =100;private static final int STEP_SIZE =5;}


5.4  DrawStoplight.java

import acm.graphics.*;import acm.program.*;import java.awt.*;public class DrawStoplight extends GraphicsProgram {public void run(){double cx =getWidth() /2 ;double cy =getHeight() /2 ;double fx =cx - FRAME_WIDTH/2;double fy =cy - FRAME_HEIGHT/2;double dy =  FRAME_HEIGHT/4 + LAMP_RADIUS/2 ;GRect frame = new GRect(fx,fy,FRAME_WIDTH,FRAME_HEIGHT) ;frame.setFilled(true);frame.setColor(Color.GRAY);add(frame);add(createFilledCircle(cx,cy-dy,LAMP_RADIUS,Color.RED)) ;add(createFilledCircle(cx,cy,LAMP_RADIUS,Color.YELLOW)) ;add(createFilledCircle(cx,cy+dy,LAMP_RADIUS,Color.GREEN)) ;}private GOval createFilledCircle(double x,double y ,double r, Color color){GOval cricle =new GOval(x-r,y-r,2*r,2*r);cricle.setColor(color);return cricle;}private static final double FRAME_WIDTH =50 ;private static final double FRAME_HEIGHT =100;private static final double LAMP_RADIUS =10;}


5.6 FactorialTable.java

import acm.program.*;public class FactorialTable extends ConsoleProgram {public void run(){for (int i =LOWER_LIMIT;i<UPPER_LIMIT;i++){println(i+"!="+factorial(i));}}private int factorial(int n){int result =1 ;for (int i=1 ;i<=n;i++){result *=i;}return result ;}private static final int LOWER_LIMIT = 0;private static final int UPPER_LIMIT =10 ;}






0 0
原创粉丝点击