题1:
//一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同
//十位与千位相同
//一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同
//十位与千位相同
public class HomeWork01{
public static void main(String[] args){
java.util.Scanner s = new java.util.Scanner(System.in);
System.out.print("请输入一个5位数:");
int num = s.nextInt();
int wan = num/10000;
//System.out.print("w="+wan);
int qian = (num-wan*10000)/1000;
int bai = (num-(wan*10000+qian*1000))/100;
int shi = (num-(wan*10000+qian*1000+bai*100))/10;
int ge = (num-(wan*10000+qian*1000+bai*100+shi*10));
boolean b = false;
if(wan == ge & qian == shi){
b = true;
}
System.out.print(num + (b ? "是" : "不是") + "回文数");
}
}
习题2
//猴子吃桃问题,猴子第一天摘下若干桃子。当即吃了一半,还不过瘾,又多吃了一个
//第二天早上又将剩下的桃子吃掉一半,由多吃一个,以后每天早上都吃前一天剩下
//的一半零一个,到第十天早上再吃时,只剩下一个了,求第一天摘了多少桃子?
//猴子吃桃问题,猴子第一天摘下若干桃子。当即吃了一半,还不过瘾,又多吃了一个
//第二天早上又将剩下的桃子吃掉一半,由多吃一个,以后每天早上都吃前一天剩下
//的一半零一个,到第十天早上再吃时,只剩下一个了,求第一天摘了多少桃子?
public class HomeWork02{
public static void main(String[] args){
int num = 1;//最后一只桃子逆推
//第10天吃的时候就一个意思是第9天吃完就剩一个了
int day = 9;//吃了9天
while(day > 0){
day--;
num = (num + 1) * 2;
//System.out.println(num);
}
System.out.println("第一天摘了" + num + "桃子");//1534
//PS:猴子真会吃。。。
}
}
习题3
//计算1! + 2! + 3! + … + 10!
//注意 4!= 432*1
//计算1! + 2! + 3! + .... + 10!
//注意 4!= 4*3*2*1
public class HomeWork03{
public static void main(String[] args){
int sum = 0;//定义和
//定义外侧循环从1到10
for(int i = 1; i <= 10; i++){
int jcs = 1;//定义阶乘数
for(int j = i ; j > 0; j--){
//定义内圈阶乘
jcs *= j;
}
sum += jcs;
}
System.out.println("和为:" + sum);//4037931
}
}
习题4
//一球从100m高度落下,每次落地后反复跳回原高度的一半再落下,求它在
//第10次落地时,共经过多少米
//一球从100m高度落下,每次落地后反复跳回原高度的一半再落下,求它在
//第10次落地时,共经过多少米
public class HomeWork04{
public static void main(String[] args){
double sum = 100;//第一次下落先给定,后面下落9次。
double high = 100;//初始高
for(int count = 1; count < 10; count++){
//假设从0点弹起,每次弹起高度为先前的一半
high /= 2;//弹起一次共9次
sum += 2*high;//弹起上升和下落
}
System.out.println(sum);//299.609375
}
}
习题5
//一个四位数,恰好等于去掉它的首位数字之后所剩的三位数的3倍,这个数是多少?
//一个四位数,恰好等于去掉它的首位数字之后所剩的三位数的3倍,这个数是多少?
public class HomeWork05{
public static void main(String[] args){
for(int num = 1000; num <= 9999; num++){
int qian = num/1000;
if(num == (num-qian*1000)*3){
System.out.println("该数为:" + num);//1500
}
}
}
}
又来做数学题了
6.23关于方法的一道练习题。
//给一个正整数n求大于n的最小质数
//给一个正整数n求大于n的最小质数
public class HomeWork01{
public static void main(String[] args){
minZhiShu(100);
}
public static void minZhiShu(int n){
for(int i = n+1; ; ){
for(int j = 2; j < i; j++){
if(i % j == 0){
i++;
}
System.out.println("大于n的最小质数:" + i);
return;
}
}
}
}
7月5日
写一个Account类的模拟账户
该类的属性:账户id ,余额 balance 年利率 1.23%
方法:各属性的set和get方法,取款方法withraw(),存款方法deposit()
/*写一个Account类的模拟账户
该类的属性:账户id ,余额 balance 年利率 1.23%
方法:各属性的set和get方法,取款方法withraw(),存款方法deposit()
*/
public class Account{
private int id;
double balance;
String annualInterestRate;
public Account(){
}
public Account(int i, double b, String a){
id = i;
balance = b