1.编程一个程序,计算今天是今年的第几天.
输入年 输入月 输入天
package day02.HM;
import java.util.Scanner;
//编程一个程序,计算今天是今年的第几天.
// 输入年 输入月 输入天
//输入年,判断该年2月有几天
//判断该月之前的每月有几天,循环到该月,所有天数加起来
public class days {
public static void main(String[] args) {
int day = 0;
int sum = 0;
System.out.println("请输入年");
Scanner sc = new Scanner(System.in);
int year = sc.nextInt();
System.out.println("请输入月");
Scanner sc2 = new Scanner(System.in);
int month = sc.nextInt();
for (int i = 1; i < month;i++) {
switch ((i)) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day = 31;
break;
case 4:
case 6:
case 9:
case 11:
day = 30;
break;
case 2:
if (year%4==0&&year%100!=0||year%400==0) {
day = 29;
}
day= 28;
break;
default:
break;
}
sum +=day;
}
System.out.println(day);
System.out.println("请输入日");
Scanner sc3 = new Scanner(System.in);
int days = sc.nextInt();days += day;
System.out.println("是第"+days+"天");
}
}
2.猴子吃桃问题。猴子第一天摘下若干个桃子,当时就吃了一半,还不过瘾,
就又吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都吃
前一天剩下的一半零一个。到第 10 天在想吃的时候就剩一个桃子了,求第一天共
摘下来多少个桃子?
package day02.HM;
/*
猴子吃桃问题。猴子第一天摘下若干个桃子,当时就吃了一半,还不过瘾,
就又吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都吃
前一天剩下的一半零一个。到第 10 天在想吃的时候就剩一个桃子了,求第一天共
摘下来多少个桃子?
*/
public class monkey {
public static void main(String[] args) {
int peach = 1;
for (int i = 1; i < 10; i++) {
peach = (peach+1)*2;
}
System.out.println(peach);
}
}
3.一只青蛙在一口11米深的井底向上爬,白天向上爬3米,晚上向下滑2米,总共需要几天可以爬出.
package day02.HM;
/*
一只青蛙在一口11米深的井底向上爬,白天向上爬3米,晚上向下滑2米,总共需要几天可以爬出.
*/
public class fog {
public static void main(String[] args) {
int day = 0;
int night = 0;
int longs = 11;
int i = 0;
while(i!=11){
i+=3;
day++;
System.out.println("这是第"+day+"个白天");
if(i==11){
break;
}
i-=2;
night++;
System.out.println("这是第"+night+"个晚上");
System.out.println("今天是第"+day+"天");
}
System.out.println("共需要"+day+"天"+night+"夜");
}
}
4.输出2–100之间的质数(只能被1和本身整除的,再没有其他因数的数)
package day02.HM;
//输出2--100之间的质数(只能被1和本身整除的,再没有其他因数的数)
public class number {
public static void main(String[] args) {
for (int i = 2; i < 100; i++) {
for (int j = 2; j <=i; j++) {
if (i == j) {
System.out.println(i);
}
if (i % j == 0) {
break;
}
}
}
}
}
5.设计一个对银行账户余额操作的程序
假设账号: int account=666666
密码:int password=111111
余额:int balance=1000
进入程序输出选择操作选项:
1.存款,2.取款,3.查询余额
要求使用Scanner交互式操作.
存款,取款,查询均需要输入账号密码,验证没有问题即可操作.
可以多次重复操作
package day02.HM;
import java.util.Scanner;
/*
设计一个对银行账户余额操作的程序
假设账号: int account=666666
密码:int password=111111
余额:int balance=1000
进入程序输出选择操作选项:
1.存款,2.取款,3.查询余额
要求使用Scanner交互式操作.
存款,取款,查询均需要输入账号密码,验证没有问题即可操作.
可以多次重复操作
*/
public class bank {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int balance = 1000;
bank b = new bank();
boolean b1 = b.enter();
if (b1 == true) {
while (true) {
System.out.println("请选择你要执行的操作:1,取款;2,存款;3,查询余额,退出请按0");
int choice = sc.nextInt();
switch (choice) {
case 1:
System.out.println("请输入取款金额");
int take = sc.nextInt();
if (take <= balance) {
balance = balance - take;
System.out.println("取款成功,您当前余额为" + balance);
}
break;
case 2:
System.out.println("请输入存款金额");
int put = sc.nextInt();
balance = balance + put;
System.out.println("存款成功,您当前余额为" + balance);
break;
case 3:
System.out.println("您的余额为" + balance);
break;
default:
System.out.println("非法输入,交易已关闭");
break;
}
if(choice==0){
break;
}
}
}
else {
System.out.println("账号密码输入错误!");
b.enter();
}
}
public boolean enter(){
int account = 666666;
int password = 111111;
Scanner sc = new Scanner(System.in);
System.out.println("请输入账号");
int acc = sc.nextInt();
System.out.println("请输入密码");
int pw = sc.nextInt();
if (acc == account && pw == password) {
return true;
}
return false;
}
}