第一周java作业

来源:互联网 发布:手机小号软件排行 编辑:程序博客网 时间:2024/06/05 03:01

练习题1

题目:

使用公式C=(5/9)(F-32)打印下列华氏温度与摄氏温度对照表。

0      -17

20     -6

40     4

60     15

80     26

100    37

120    48

140    60

160    71

180    82

200    93

220    104

240    115

260    126

280    137

300    148

代码:

public class Table{
public static void main(String[] args){
int F;
double C=0;
for(F=0;F<=300;F=F+20){
C=((double)(5.0/9))*(F-32);//注意类型转换
System.out.printf(F+"\t");
System.out.printf("%.1f",C);//保留小数点后一位小数
System.out.printf("\n");
}
}
}


总结:1.要注意类型转换,在这里5/9需要强制类型转换。在一开始写的时候C的值一直为0,错误就是在忘记了强制类型转换。

2.输出的时候使用转义字符来进行空格和换行。

 

练习题2

题目:

打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153 是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

代码:

public class Daffodils{
public static void main(String[] args){
int a;
int b;
int c;

for(int i=100;i<=999;i++){
a=i%10;//求个位
b=i/10%10;//求十位
c=i/100;//求百位
if(i==a*a*a+b*b*b+c*c*c)
System.out.println(i);
}

}

}

总结:主要是注意个十百位的求法。

 

练习题3

题目:求1+2!+3!+4!+5!+6!+......+20!

 

代码:

public class Total{
public static void main(String[] args){
int sum=0;
int j=1;
for(int i=1;i<=20;i++){
j=j*i;                             //求各个数的阶乘
sum+=j;}                     //将各个数的阶乘进行相加
System.out.print(sum);

}

}

总结:注意阶乘的求法。
编程的过程中发现算的结果和正确答案不一致,原因是用sum直接进行相加,应该再添加1个变量分别求各个阶乘的结果,到最后再用sum来进行计算。

 

 

原创粉丝点击