- 5
- 0
- 约1.11万字
- 约 13页
- 2017-09-02 发布于浙江
- 举报
自考JAVA语言程序设计一课后习题答案和源代码
第二章
2.1 Java的字符能参加算术运算吗?
可以。(1)字符与整型数据运算,结果为整型数据,只能附给整型变量,如果附给字符型变量会损失精度,需要强制类型装换;
(2)字符与字符运算,结果为字符型数据,可以直接附给字符型或整型变量。
2.2 占字节多的变量能直接赋值给占字节少的变量么?
答:不能直接赋值,需要强制类型转换。
2.3 试用Java语言表达式描述以下数学计算式或逻辑条件:
1)
解:V = (4.0/3)*Math.PI*Math.pow(r,3);
2)
解:R = 1.0 / (1.0/R1+1.0/R2);
3)
解:y = Math.pow(x,5) + Math.pow(x,3) + 6;
4)
解:F = 1.0 * M1 * M2 / (R * R);
5)
解:Math.sin(x) / a * x + Math.abs( Math.cos(π * x / 2) );
6)0 a 10
解:a 0 a 10
7) 条件 x=1 与 y=2 有且只有一个成立.
解:( x == 1 y != 2) || (x != 1 y == 2)
2.4 设在求以下表达式之前,整型变量a的值是4,试指出在求了以下表达式之后,变量a、b和c的值。
1)
解:a=5 ; b=16;
2);
解:a=5 ; c=10
2.6 若一个数恰好等于它的因子之和,则这个数称为“完全数”。编写程序求1000之内的所有完全数。
分析:若一个自然数,它所有的真因子(即除了自身以外的约数)的和恰好等于它本身,这种数叫做完全数。例如,6=1+2+328=1+2+4+7+14496=1+2+4+8+16+31+62+124+2488128=1+2+4+8+16+32+64+127+254+508+1016+2032+4064
程序运行结果:
源代码文件:Work2_6.java
import javax.swing.JOptionPane;
/**
* 求1000之内的所有完全数BR
* 一个数如果恰好等于除它本身外的因子之和,这个数就称为完数。BR
* 例如28=1+2+4+7+14.(28的因子是1,2,4,7,14).BR
* @author 黎明你好
*/
public class Work2_6
{
private int maxNumber = 1000; // 保存正整数
private String resultString; // 最后结果字符串
public Work2_6()
{
resultString = maxNumber + 以内,完全数有:\n;
for (int i = 1; i = maxNumber; i++)
{
if (isPerfectNumber(i))
{
resultString += i + ,;
}
}
showResult(resultString);
}
/**
* 判断是否是完全数
* @param number - 需要判断的正整数
* @return - 是完全数返回true,否则返回false
*/
public boolean isPerfectNumber(int number)
{
int sum = 0;// 因子的和
String str = new String();
for (int i = 1; i number; i++)
{
if (number % i == 0)
{
sum += i;
str += i + +;
}
}
if (sum == number)// 如果因子之和,等于本身,则是完数
{
str = str.substring(0, str.length() - 1); // 去掉字符串最后一个多余的“+”;
System.out.println(number + 的因子有: + str);
return true;
}
else
{
return false;
}
}
/**
* 弹出对话框,显示结果
* @param str - 需要显示的字符串
*/
public void showResult(String str)
{
JOptionPane.showMessageDialog(null, str, 输出结果,
JOptionPane.INFORMATION_MESSAGE);
}
public static void main(String argsp[])
原创力文档

文档评论(0)