第一章 绪论
上机实验题
废话不多说,直接上代码
/*
* 内容:输出所有小于等于n(n为一个大于2的正整数)的素数,每行输出10个素数
* 时间:2017.3.1
*/
package com.chapter1;
public class exp1_1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
exp1_1 myExp1_1 = new exp1_1(); //创建一个对象
int m=0; //计数器,当满10时换行
final int n = 1000; //要求输出的素数的界限
for(int i=2;i<=n;i++) {
if(myExp1_1.isPrime(i)){ //若函数是静态的,则不必创建对象
m++;
System.out.print(i+" ");
if(0 ==m%10){
System.out.println();
}
}
}
}
public boolean isPrime(int x){
boolean flag = true;
for(int i=2;i<=Math.sqrt(x);i++){
if(0 == x % i){
flag = false;
break;
}
}
return flag;
}
}
继续
/*
* 内容:计算任一输入的正整数的各位数字之和
* 时间:2017.3.1
*/
package com.chapter1;
import java.util.Scanner;
public class exp1_2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
int index = input.nextInt(); //输入一个正整数index
System.out.print(index);
int sum = 0;
while(index != 0){
sum = sum + index%10; //从个位数开始,逐渐把index的数字拿出来
index = index / 10;
}
System.out.println("的各位数字之和是"+sum);
}
}
继续继续
/*
* 内容:判断一个字符串是否为“回文”(顺读和倒读都一样的字符串称为回文)
* 时间:2017.3.1
*/
package com.chapter1;
import java.util.Scanner;
public class exp1_3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String index = ""; //先定义并初始化,再用来接收键盘输入的。否则如果键盘输入错误,可能引起不必要的错误
Scanner input = new Scanner(System.in);
index = input.next(); //获取输入的字符串
System.out.print(index);
boolean isHuiwen = true; //初始化时回文的
for(int i = 0;i < index.length()/2;i++){ //将字符串中间切开,首尾一个一个比较
if(index.charAt(i) != index.charAt(index.length()-i-1)){//charAt()函数其实是将字符串数组化,形参类似于数组下标
isHuiwen = false;
break; //一旦发现首尾比较时有不相等的,即可判断非回文,退出循环
}
}
if(isHuiwen){
System.out.println("是回文的");
}
else {
System.out.println("不是回文的");
}
}
}
希望可以坚持吧,把这本书的题都敲一遍,,,,
也不至于是个大水比了。
那个,原书用的是C/C++,因为自己将来打算从事Java方向,故而均用Java实现。