目录
1.青蛙爬井问题
一只青蛙在一口11米深的井底向上爬,白天向上爬3米,晚上向下滑2米,总共需要几天可以爬出.
public class D2TestD2 {
//一只青蛙在一口11米深的井底向上爬,白天向上爬3米,晚上向下滑2米,总共需要几天可以爬出.
public static void main(String[] args) {
int up=0;//定义青蛙向上爬的路程
int day=1;//定义时间
while(true){
//青蛙白天爬3米
up+=3;
//如果达到或超过11米,那么青蛙就可以出去了
if(up>=11){
//终止循环
break;
}
//青蛙晚上下滑两米
up-=2;
//需要的天数循环自增
day++;
}
System.out.println("青蛙出来需要的天数为:"+day+"天");
}
}
输出:
青蛙出来需要的天数为:9天
2.猴子吃桃问题
猴子吃桃问题。猴子第一天摘下若干个桃子,当时就吃了一半,还不过瘾,就又吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都 前一天剩下的一半零一个。到第 10 天在想吃的时候就剩一个桃子了,求第一天共 摘下来多少个桃子?
public class D2Test5 {
public static void main(String[] args) {
//定义桃子数量
int peach=1;
//从第10天到第一天倒推,循环了9次
for (int day = 9; day >0 ; day--) {
//猴子前一天的桃子数
peach=(peach+1)*2;
}
//输出桃子数量
System.out.println("第一天有桃子"+peach+"个");
}
}
第一天有桃子1534个
3.基础的银行存款取款问题
设计一个对银行账户余额操作的程序 假设账号: int account=001 密码:int password = 123 余额:balance=1000 进入程序输出选择操作选项: 1.存款,2.取款,3.查询余额 4.退出 要求使用Scanner交互式操作. 存款,取款,查询均需要输入账号密码同时成立
public class D2text9 {
public static void main(String[] args) {
Scanner a = new Scanner(System.in);
//设置返回位置outer
outer:
//允许进行4次输入账号密码的操作循环
for (int num = 1; num <= 4; num++){
//输入账号;基础学习的做法,就定义了int型的
System.out.println("请输入账号:");
int A = a.nextInt();
//输入密码
System.out.println("请输入密码:");
int B = a.nextInt();
//定义存款的数值
int banlance = 1000;
//如果账号是001,密码是123,则进入操作台
if (A == 001 && B == 123) {
while (true) {
System.out.println("请输入选项 1.存钱,2取钱,3查询,4退出");
//定义操作指示
int oper = a.nextInt();
//switch选择
switch (oper) {
case 1:
System.out.println("选择存入");
int c = a.nextInt();
System.out.println("余额为" + (banlance + c));
//对余额进行更新
banlance+=c;
break;
case 2:
System.out.println("选择取出");
int q = a.nextInt();
//如果取得钱超过存款,不能操作
if (q>banlance){
System.out.println("您的余额不足,请重新选择!");
break;
}
System.out.println("余额为" + (banlance - q));
//对余额进行更新
banlance-=q;
break;
case 3:
System.out.println("余额为"+banlance);
break;
case 4:
System.out.println("下次再见!");
//直接退出操作系统
return;
}
}
}//结束这个账号密码的操作
//密码错误,报出错误
else {
System.out.println("密码错误,请重新输入账号密码!");
//密码错误了,返回循到指定位置outer
continue outer;
}
}
//输入密码大于4次,结束循环
System.out.println("输入错误超过4次,操作台被锁定了!");
return;
}
}
输出:
请输入账号:
111
请输入密码:
111
密码错误,请重新输入账号密码!
请输入账号:
001
请输入密码:
123
请输入选项 1.存钱,2取钱,3查询,4退出
1
选择存入
200
余额为1200
请输入选项 1.存钱,2取钱,3查询,4退出
2
选择取出
500
余额为700
请输入选项 1.存钱,2取钱,3查询,4退出
3
余额为700
请输入选项 1.存钱,2取钱,3查询,4退出
2
选择取出
800
您的余额不足,请重新选择!
请输入选项 1.存钱,2取钱,3查询,4退出
4
下次再见!
4.输出1000以内可以被5整除的数字,且三个数一行;
public class For004 {
//输出1000之内可以被5整除的数,并且三个一行
public static void main(String[] args) {
for (int i = 0; i <= 1000; i++) {
if(i%5==0){
System.out.print(i+"\t");
//这里的\t表示空格
}
if(i%(5*3)==0){
//进行换行处理
System.out.print("\n");
}
}
}
}
5.for循环打印不同的三角形
5.1打印定点在左上的直角三角形
//定点在左上
public class Demo{
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
for (int j=5;j>i;j--) {
System.out.print("* ");
}
System.out.println();
}
}
}
效果:
* * * * *
* * * *
* * *
* *
*
5.2打印定点在左下的直角三角形
//定点在左下
public class Demo {
public static void main(String[] args) {
for (int i = 0; i <= 5; i++) {
for (int j = 0; j < i; j++) {
System.out.print("* ");
}
System.out.println();
}
}
}
效果:
*
* *
* * *
* * * *
* * * * *
5.3 打印定点在右下的直角三角形
//定点在右下
public class Demo {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
for (int j=5;j>0;j--) {
if(j<=i){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
System.out.println();
}
}
}
效果:
*
**
***
****
*****
5.4打印定点在右上的直角三角形
public class Demo {
public static void main(String[] args) {
//定点在右上
for (int i = 1; i <= 5; i++) {
for (int j=4;j>5-i;j--) {
System.out.print(" ");
}
for (int k = 5; k>=i ; k--) {
System.out.print("*");
}
System.out.println();
}
}
}
效果:
*****
****
***
**
*
5.5打印定点在正上方的三角形
public class Demo{
public static void main(String[] args) {
//定点在正上方
for (int i = 1; i <= 5; i++) {
for (int j=5;j>0;j--) {
if(j<=i){
System.out.print("* ");
}
else{
System.out.print(" ");
}
}
System.out.println();
}
}
}
效果:
*
* *
* * *
* * * *
* * * * *
5.6打印定点正下方的三角形
public class Demo{
public static void main(String[] args) {
//定点在正下方
for (int i = 1; i <= 5; i++) {
for (int j=4;j>5-i;j--) {
System.out.print(" ");
}
for (int k = 5; k>=i ; k--) {
System.out.print("* ");
}
System.out.println();
}
}
}
效果:
* * * * *
* * * *
* * *
* *
*