第一次实训作业
1.编写程序: 声明一个整型变量a,并赋初值5,在程序中判断a是奇数还是偶数,然后输出判断的结果。
源码:
package operation;
public class A_Odevity {
public static void main(String[] args) {
int a = 5;
if(a%2 == 1) {
System.out.println("a为奇数!");
}
else {
System.out.println("a为偶数!");
}
}
}
运行结果:
2.编写程序:从键盘输入圆的半径,计算圆的面积并输出。
源码:
package operation;
import java.util.Scanner;
public class B_Area_Circle {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner sc = new Scanner(System.in);
final double PI = 3.14;
System.out.println("请输入圆的半径:");
double radius = Double.parseDouble(sc.nextLine());
double Area = PI*radius*radius;
System.out.println("圆的面积为:\n"+Area);
}
}
运行结果:
3.编写程序:实现一个数字加密器。运行时输入加密前的整数,通过加密运算后,输出加密后的结果,加密结果仍为一整数。
加密规则为:加密结果 = (整数10+5) / 2 + 3.14159*
源码:
package operation;
import java.util.Scanner;
public class C_Encipherment {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner sc = new Scanner(System.in);
System.out.println("请输入加密前的整数:");
String numberString = sc.nextLine();
int number = Integer.parseInt(numberString);
int result = (int) ((number*10+5) / 2 + 3.14159);
System.out.println("通过加密运算后的结果为:\n"+result);
}
}
运行结果:
4.编写程序公鸡5元/只,母鸡3元/只,小鸡3只/元,问100元买100只鸡,公鸡、母鸡、小鸡各几只?
源码:
package operation;
public class D_XCK_NMSL {
public static void main(String[] args) {
int chanticleer;//公鸡只数
int hen;//母鸡只数
int chick;//小鸡只数
System.out.println("100元买100只鸡\n其中购买的情况分别可以为:");
for(chanticleer = 0 ; chanticleer <= 100 / 5 ; chanticleer++) {
for(hen = 0 ; hen <= (int)(100 - chanticleer * 5) / 3 ; hen++) {
for(chick = 0 ; chick <= (int)(100 - chanticleer * 5 - hen* 3) * 3 ; chick++) {
if(chanticleer + hen + chick == 100 && chanticleer*5+hen*3+(int)chick/3 == 100) {
System.out.println("公鸡买"+chanticleer+"只,母鸡买"+hen+"只,小鸡买"+chick+"只");
}
}
}
}
}
}
运行结果:
5.编写程序,有1、2、3、4共4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。
源码:
package operation;
public class E_Arrangement_Combination {
//方法思想:4C3 * 3A3
public static void main(String[] args) {
int a;//百
int b;//十
int c;//个
int Several = 0;//种数
System.out.println("有1、2、3、4共4个数字,组成以下互不相同且无重复数字的三位数:");
for(a = 1 ; a < 5 ; a++) {
for(b = 1 ; b < 5 ; b++) {
for(c = 1 ; c < 5 ; c++) {
if(a != b && a != c && b != c) {//排除重复数字
Several++;
System.out.println(a+""+b+""+c);
}
}
}
}
System.out.println("这四个数字能组成"+Several+"个互不相同且无重复数字的三位数");
}
}
运行结果:
6.编写程序:判断输入的整数是否为素数。
源码:
package operation;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class F_PrimeNumber {
public static void main(String[] args) {
BufferedReader bu = new BufferedReader(new InputStreamReader(System.in));
int x;
try {
System.out.println("请输入大于 1 的整数:");
x = Integer.parseInt(bu.readLine());
if(x > 1) {
if(x % 2 == 0 || x % 3 == 0) {
System.out.println("该数是素数~~~");
}
else {
System.out.println("该数不是素数!!!");
}
}
else {
System.out.println("请输入大于 1 的整数!看不清字咩?");
}
} catch (NumberFormatException e) {
System.out.println("输入错误!请输入整型!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
运行结果:
输入的整数为素数
输入的整数不为素数
输入的整数不在素数范围
输入值不为整形
个人感悟:
越编越舒服,以上程序中可能存在一些问题,但是目前还没发现。怎么说呢,这种感觉很舒服,就是重新再编一次的感觉真的很顺手,让我有一丝丝的膨胀,虽然这是基础中的基础,不过我相信在未来,再复杂的问题也只是这些问题的累加,但有所云”道生一,一生二,二生三,三生万物。“,这个。。。好吧,踏踏实实的耕耘吧,加油!