题目1:输出1-100
1. 明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
数字(1-100)
一个程序,输出1-100
举例:1 2 3...100
(2).程序运行平台
Web/App/Console/应用软件
一个Console程序,输出1-100
(3).明确数据
输入
/
输出
1-100
提示语
输入
/
运算
/
输出
/
(4).明确动作
输入
/
运算
/
输出
println/print?
(5).重述需求
用一个Console程序,输出1-100
1 2 3...100
2. 任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:定义变量
任务2:运算(判断条件)
任务3:输出变量
任务4:变量++
任务5:运算(判断条件)
任务6:输出变量
任务7:变量++
......
任务x:运算(判断条件)
任务x:输出变量
任务x:变量++
实现(任务拆分的结果)
任务1:定义变量
步骤
思维过程
实现
找动作
类型:int
int
找数据
一个变量
sz=1;
实现
动作+数据
int sz=1;
任务2:运算(判断条件)
步骤
思维过程
实现
找动作
变量<=?
?<=?
找数据
已知:变量:sz 条件值:100
sz 100
实现
动作+数据
sz<=100;
任务3:输出变量
步骤
思维过程
实现
找动作
输出:println/print
println
找数据
sz=1;
sz
实现
动作+数据
System.out.println(sz);
任务4:变量++
步骤
思维过程
实现
找动作
变量加1
++
找数据
sz
sz
实现
动作+数据
sz++;
…………
有重复,用循环(for)
四要素:
1. 初始化:int sz=1;
2. 循环条件:sz<=100;
3. 循环体:System.out.println(sz);
4. 迭代:sz++;
public class QiZhong {
public static void main(String[] args) {
for(int sz=1;sz<=100;sz++) {
System.out.println(sz);
}
}
}
题目2:查询科目成绩
1.明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
科目:固定/输入/随机?
一个输入的科目名称
一个程序,输入科目名称,求每科成绩
举例:输入语文,输出你的语文成绩是:60 及格
(2).程序运行平台
Web/App/Console/应用软件
一个Console程序,求科目成绩
(3).明确数据
输入
科目名称
输出
科目成绩
提示语
输入
请输入你需要查询的科目(输入退出结束):
运算
/
输出
你的语文成绩是:
(4).明确动作
输入
Scanner
运算
求科目成绩
输出
println/print?
(5).重述需求
用一个Console程序,输入科目名称,求出每科的考试成绩
你的考试成绩是:60 及格
2.任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:输出提示语
任务2:输入读入
任务3:运算(判断条件)
任务4:输出你的英语成绩是:60 及格
任务5:输出提示语
任务6:输入读入
任务7:运算(判断条件)
任务8:输出你的数学成绩是:60 及格
……
任务xx:输入读入
任务xx:运算(判断条件)
任务xx:输出xx
3.实现(任务拆分的结果)
任务1:输出提示语
步骤
思维过程
实现
找动作
print/println
找数据
字符串
“请输入你需要查询的科目(输入退出结束):”
实现
动作+数据
System.out.print("请输入你需要查询的科目(输入退出结束):");
任务2:输入读入
步骤
思维过程
实现
找动作
输入的值
Scanner
找数据
类型:String
名字:km
String km
实现
动作+数据
String km=sc.next();
任务3:运算(判断条件)
步骤
思维过程
实现
找动作
Km=?
if
找数据
英语
km.contentEquals("英语")
实现
动作+数据
if(km.contentEquals("英语"))
任务4:输出你的英语成绩是:60 及格
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“你的英语成绩是:60 及格”
实现
动作+数据
System.out.println("请输入你需要查询的科目(输入退出结束):");
…………
有重复,用循环(while)
四要素:
1.初始化:System.out.print("请输入你要查询的科目(输入退出结束):");
String km=sc.next();
2. 循环条件:km.contentEquals("退出")==false
3. 循环体:if(){}else{}
4. 迭代:System.out.print("请输入你要查询的科目(输入退出结束):");
km=sc.next();
public class QiZhong {
public static void main(String[] args) {
Scanner sc=new Scanner (System.in);
String km=getCourse(sc);
while(km.contentEquals("退出")==false) {
if(km.contentEquals("英语")){
System.out.println("你的英语成绩是:60 及格");
km=getCourse(sc);
}else if(km.contentEquals("数学")) {
System.out.println("你的数学成绩是:35 不及格");
km=getCourse(sc);
}else if(km.contentEquals("计算机")) {
System.out.println("你的计算机成绩是:100 优秀");
km=getCourse(sc);
}else if(km.contentEquals("java")) {
System.out.println("你的java成绩是:90 优秀");
km=getCourse(sc);
}else if(km.contentEquals("语文")) {
System.out.println("你的语文成绩是:80 良好");
km=getCourse(sc);
}else if(km.contentEquals("体育")){
System.out.println("你的体育成绩是:70 良好");
km=getCourse(sc);
}else {
System.out.println("你的输入有误,重新输入!");
km=getCourse(sc);
}
}
System.out.println("查询结束!");
sc.close();
}
public static String getCourse(Scanner kc) {
System.out.print("请输入你要查询的科目(输入退出结束):");
String km=kc.next();
return km;
}
}
任务1:输出提示语
步骤
思维过程
实现
找动作
print/println
找数据
字符串
“请输入1-3中的一个数字:”
实现
动作+数据
System.out.print("请输入1-3中的一个数字:");
任务2:输入读入
步骤
思维过程
实现
找动作
输入的值
Scanner
找数据
类型:int
名字:ss
int ss
实现
动作+数据
int ss=sc.nextInt();
任务3:运算(判断条件)
步骤
思维过程
实现
找动作
ss=?
switch
找数据
1
case 1:
实现
动作+数据
Switch(ss){
case 1:
}
任务4:输出这个数字代表:石头
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“这个数字代表:石头”
实现
动作+数据
System.out.println("这个数字代表:石头");
…………
有重复,用循环(for)
四要素:
1.初始化:System.out.print("请输入1-3中的一个数字:"),String ss=sc.nextInt();
2.循环条件:ss>=1&&ss<=3;
3.循环体:switch(ss){}
4.迭代:System.out.print("请输入1-3中的一个数字:"),ss=sc.nextInt();
public class QiZhong {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int ss=0;
for(System.out.print("请输入1-3中的一个数字:"),ss=sc.nextInt();ss>=1&&ss<=3;
System.out.print("请输入1-3中的一个数字:"),ss=sc.nextInt()) {
switch(ss) {
case 1:
System.out.println("这个数字代表:石头");
break;
case 2:
System.out.println("这个数字代表:剪刀");
break;
case 3:
System.out.println("这个数字代表:布");
break;
}
}
System.out.println("输入错误!");
sc.close();
}
}
题目4:比较三个数大小
1.明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
三个数:固定/输入/随机?
输入的三个数
一个程序,输入三个数,比较大小
举例:30>20>10
(2).程序运行平台
Web/App/Console/应用软件
一个Console程序,输入三个数,比较大小
(3).明确数据
输入
三个整数
输出
从大到小
提示语
输入
请输入相同位数的三个整数:
运算
/
输出
/
(4).明确动作
输入
Scanner
运算
大到小排序
输出
Println/print?
(5).重述需求
用一个Console程序,输入三个数,比较大小
30>20>10
2.任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:输出提示语
任务2:输入读入
任务3:运算(判断条件)
任务4:输出大到小的排序
任务5:输出提示语
任务6:输入读入
任务7:运算(判断条件)
任务8:输出大到小的排序
…………
任务x:输出提示语
任务x:输入读入
任务x:运算(判断条件)
任务x:输出大到小的排序
实现(任务拆分的结果)
任务1:提示输入语
步骤
思维过程
实现
找动作
print/println
找数据
字符串
“请输入相同位数的三个整数:”
实现
动作+数据
System.out.print("请输入相同位数的三个整数:");
任务2:输入读入
步骤
思维过程
实现
找动作
输入的值
Scanner
找数据
类型:int
名字:yi er san
int yi
int er
int san
实现
动作+数据
int yi=sc.nextInt();
int er=sc.nextInt();
Int san=sc.nextInt();
任务3:运算(判断条件)
步骤
思维过程
实现
找动作
比较大小
if
找数据
yi=30 er=20 san=10
yi>er>san
实现
动作+数据
If(yi>er>san){
}
任务4:输出大到小的排序
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串+int
yi+">"+er+">"+san
实现
动作+数据
System.out.println(yi+">"+er+">"+san);
…………
有重复,用循环(do...while)
四要素:
1.初始化:System.out.print("请输入相同位数的三个整数:");
int yi=sc.nextInt();
int er=sc.nextInt();
int san=sc.nextInt();
2. 循环体:if(){}else{}
3. 迭代:System.out.print("请输入相同位数的三个整数:");
yi=sc.nextInt();
er=sc.nextInt();
san=sc.nextInt();
4. 循环条件:yi!=er&&er!=san&&san!=yi
public class QiZhong {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.print("请输入相同位数的三个整数:");
int yi=sc.nextInt();
int er=sc.nextInt();
int san=sc.nextInt();
do {
if(yi>er) {
if(yi>san&&er>san) {
System.out.println(yi+">"+er+">"+san);
System.out.print("请输入相同位数的三个整数:");
yi=sc.nextInt();
er=sc.nextInt();
san=sc.nextInt();
}else {
System.out.println(san+">"+yi+">"+er);
System.out.print("请输入相同位数的三个整数:");
yi=sc.nextInt();
er=sc.nextInt();
san=sc.nextInt();
}
}else {
if(er>san) {
System.out.println(er+">"+yi+">"+san);
System.out.print("请输入相同位数的三个整数:");
yi=sc.nextInt();
er=sc.nextInt();
san=sc.nextInt();
}else {
System.out.println(san+">"+er+">"+yi);
System.out.print("请输入相同位数的三个整数:");
yi=sc.nextInt();
er=sc.nextInt();
san=sc.nextInt();
}
}
}while(yi!=er&&er!=san&&san!=yi);
System.out.println("错误!");
sc.close();
}
}
题目5:查询高一班级最高分
1.明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
班级:固定/输入/随机?
输入的班级名
一个程序,输入班级查询班级最高分
举例:输入高一一班,输出高一一班的高分是:567
(2).程序运行平台
Web/App/Console/应用软件
一个Console程序,输入班级查询班级最高分
(3).明确数据
输入
班级名称
输出
班级最高分
提示语
输入
请输入高一班级名称(输入退出结束):
运算
/
输出
高一一班的最高分是:
(4).明确动作
输入
Scanner
运算
求班级最高分
输出
Println/print?
(5).重述需求
用一个Console程序,输入班级名称查询班级最高分
高一一班的最高分是:
2.任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:输出欢迎语
任务2:输出提示语
任务3:输入读入
任务4:运算(判断条件)
任务5:输出高一一班的最高分是:567
任务6:输出提示语
任务7:输入读入
任务8:运算(判断条件)
任务9:输出高一二班的最高分是:493
…………
任务x:输出提示语
任务x:输入读入
任务x:运算(判断条件)
任务x:输出xx
3.实现(任务拆分的结果)
任务1:输出欢迎语
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“欢迎使用查询系统”
实现
动作+数据
System.out.print("欢迎使用查询系统");
任务2:输出提示语
步骤
思维过程
实现
找动作
print/println
找数据
字符串
“请输入高一班级名称(输入退出结束):”
实现
动作+数据
System.out.print("请输入高一班级名称(输入退出结束):");
任务3:输入读入
步骤
思维过程
实现
找动作
输入值?
Scanner
找数据
类型:字符串
名字:bj
String bj
实现
动作+数据
String bj=sc.next();
任务4:运算(判断条件)
步骤
思维过程
实现
找动作
bj=?
if
找数据
高一一班
bj.contentEquals("高一一班")
实现
动作+数据
if(bj.contentEquals("高一一班"))
任务5:输出高一一班的最高分是:567
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“高一一班的最高分是:567”
实现
动作+数据
System.out.println("高一一班的最高分是:567");
…………
有重复,用循环(while)
四要素:
1.初始化:System.out.print("请输入高一班级名称(输入退出结束):");
String bj=sc.next();
2. 循环条件:bj.contentEquals("退出")==false
3. 循环体:if(){}else{}
4. 迭代:System.out.print("请输入高一班级名称(输入退出结束):");
bj=sc.next();
public class QiZhong {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("欢迎使用查询系统");
String bj=getClass(sc);
while(bj.contentEquals("退出")==false) {
if(bj.contentEquals("高一一班")) {
System.out.println("高一一班的最高分是:567");
bj=getClass(sc);
}
else if(bj.contentEquals("高一二班")) {
System.out.println("高一二班的最高分是:493");
bj=getClass(sc);
}
else if(bj.contentEquals("高一三班")) {
System.out.println("高一三班的最高分是:546");
bj=getClass(sc);
}
else if(bj.contentEquals("高一四班")) {
System.out.println("高一四班的最高分是:533");
bj=getClass(sc);
}else if(bj.contentEquals("高一五班")) {
System.out.println("高一五班的最高分是:413");
bj=getClass(sc);
}else {
System.out.println("输入错误!重新输入");
bj=getClass(sc);
}}
System.out.println("查询结束!");
sc.close();
}
public static String getClass(Scanner sc) {
System.out.print("请输入高一班级名称(输入退出结束):");
String bj=sc.next();
return bj;
}
}
题目6:输出9*9乘法表
1.明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
乘法表
一个程序,输出9*9乘法表
(2).程序运行平台
Web/App/Console/应用软件
一个Console程序,输出9*9乘法表
(3).明确数据
输入
/
输出
9*9乘法表
提示语
输入
/
运算
/
输出
/
(4).明确动作
输入
/
运算
9*9乘法表
输出
Println/print?
(5).重述需求
用一个Console程序,输出9*9乘法表
1*1=1 ……
2.任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:定义两个值
任务2:运算(判断条件)
任务3:输出1*1=1
任务4:定义两个值
任务5:运算(判断条件)
任务6:输出1*2=2
…………
任务x:定义两个值
任务x:运算(判断条件)
任务x:输出xxx
3.实现(任务拆分的结果)
任务1:定义两个值
步骤
思维过程
实现
找动作
类型:整数/字符串
int
找数据
1
x=1
y=1
实现
动作+数据
int x=1
Int y=1
任务2:运算(判断条件)
步骤
思维过程
实现
找动作
x? y?
If,>=
找数据
x=1 y=1
x<=9&&y<=x
实现
动作+数据
if(x<=9&&y<=x)
任务3:输出1*1=1
步骤
思维过程
实现
找动作
println/print
找数据
整数+字符串
y+"*"+x+"="+x*y+" "
实现
动作+数据
System.out.print(y+"*"+x+"="+x*y+" ");
…………
有重复,用循环(for)
四要素:
1:初始化:int x=1;int y=1;
2. 循环条件:x<=9;y<=x;
3. 循环体:System.out.print(y+"*"+x+"="+x*y+" ");System.out.println();
4. 迭代:x++;y++;
public class QiZhong {
public static void main(String[] args) {
for(int x=1;x<=9;x++) {
for(int y=1;y<=x;y++) {
System.out.print(y+"*"+x+"="+x*y+"\t");
}
System.out.println();
}
}
}
题目7:用课程码查询课程名称
1.明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
一个数:固定/输入/随机?
一个输入的值
一个程序,输入课程码,查询课程名称
举例:一个程序,输入101,输出计算机应用基础
(2).程序运行平台
Web/App/Console/应用软件
一个Console程序,输入课程码,查询课程名称
(3).明确数据
输入
课程码
输出
课程名称
提示语
输入
请输入课程码:(输入000退出)
运算
/
输出
/
(4).明确动作
输入
Scanner
运算
求课程名称
输出
Println/print?
(5).重述需求
用一个Console程序,输入课程码,查询课程名称
计算机应用程序
2.任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:输出欢迎语
任务2:输出提示语
任务3:输入读入
任务4:运算(判断条件)
任务5:输出课程名称
任务6:输出提示语
任务7:输入读入
任务8:运算(判断条件)
任务9:输出课程名称
…………
任务x:输出提示语
任务x:输入读入
任务x:运算(判断条件)
任务x:输出xxx
3.实现(任务拆分的结果)
任务1:输出欢迎语
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“欢迎使用课程查询系统”
实现
动作+数据
System.out.println("欢迎使用课程查询系统");
任务2:输出提示语
步骤
思维过程
实现
找动作
print/println
找数据
字符串
“请输入课程码(输入0退出):”
实现
动作+数据
System.out.print("请输入课程码(输入000退出):");
任务3:输入读入
步骤
思维过程
实现
找动作
输入值?
Scanner
找数据
类型:整数
名字:kc
int kc
实现
动作+数据
int kc=sc.nextInt();
任务4:运算(判断条件)
步骤
思维过程
实现
找动作
kc=?
if
找数据
101
kc==101
实现
动作+数据
If(kc==101){
}
任务5:输出课程名称
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“计算机应用基础”
实现
动作+数据
System.out.println("计算机应用基础");
…………
有重复,用循环(do...whlie)
四要素:
1.初始化:System.out.print("请输入课程码(输入000退出):");
int kc=dm.nextInt();
2. 循环体:if(){}else{}
3. 迭代:System.out.print("请输入课程码(输入000退出):");
kc=dm.nextInt();
4. 循环条件:kc!=000
public class QiZhong {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("欢迎使用课程查询系统");
int kc=getNum(sc);
do{
if(kc==101) {
System.out.println("计算机应用基础");
kc=getNum(sc);
}
else if(kc==102) {
System.out.println("计算机网络基础");
kc=getNum(sc);
}
else if(kc==203) {
System.out.println("程序设计基础");
kc=getNum(sc);
}
else if(kc==501) {
System.out.println("英语应用能力");
kc=getNum(sc);
}else if(kc==302) {
System.out.println("数学建模");
kc=getNum(sc);
}else {
System.out.println("输入错误!重新输入");
kc=getNum(sc);
}
}while(kc!=000) ;
System.out.println("查询结束!");
sc.close();
}
public static int getNum(Scanner dm) {
System.out.print("请输入课程码(输入000退出):");
int kc=dm.nextInt();
return kc;
}
}
题目8:猜数游戏
1.明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
一个数:固定/输入/随机?
输入的一个值
一个程序,猜0~99中的任意一个数
举例:一个程序,输入1,输出对不起你猜小了...
(2).程序运行平台
Web/App/Console/应用软件
一个Console程序,猜0~99中的任意一个数
(3).明确数据
输入
0~99中任意一个数
输出
猜数结果
提示语
输入
请输入一个0~99之间的数:
运算
/
输出
猜数结果
(4).明确动作
输入
Scanner
运算
求猜数结果
输出
Println/print?
(5).重述需求
用一个Console程序,猜0~99中的任意一个数
/
2.任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:定义两个值
任务2:输出欢迎语
任务3:输出提示语
任务4:输入读入
任务5:运算(比较)
任务:6:输出猜数结果
任务7:输出提示语
任务8:输入读入
任务9:运算(比较)
任务:10:输出猜数结果
…………
任务x:输出提示语
任务x:输入读入
任务x:运算(比较)
任务:x:输出猜数结果
3.实现(任务拆分的结果)
任务1:定义两个值
步骤
思维过程
实现
找动作
类型?
int,*
找数据
名字+值
cs=0
sjs=(int)(Math.random()*100)
实现
动作+数据
int cs=0
int sjs=(int)(Math.random()
*100)
任务2:输出欢迎语
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“欢迎来到猜字游戏”
实现
动作+数据
System.out.println("欢迎来到猜字游戏");
任务3:输出提示语
步骤
思维过程
实现
找动作
println/print
找数据
字符串
"请输入一个0~99之间的数:"
实现
动作+数据
System.out.print("请输入一个0~99之间的数:");
任务4:输入读入
步骤
思维过程
实现
找动作
输入值?
Scanner
找数据
类型:int
名字:sr
int sr
实现
动作+数据
int sr=sc.nextInt();cs++;
任务5:运算(比较)
步骤
思维过程
实现
找动作
sr=?
if
找数据
sr sjs cs
sr==sjs cs==1
实现
动作+数据
if(sr==sjs){
if(cs==1) {
}}
任务:6:输出猜数结果
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串+变量
"你太棒了!用了"+cs+"次,就猜对了"
实现
动作+数据
System.out.println("你太棒了!用了"+cs+"次,就猜对了");
…………
有重复,用循环(do...whlie)
四要素:
1. 初始化:System.out.println("请输入一个0~99之间的数:");
int sr=sc.nextInt();cs++;
2. 循环体:if(){}else{}
3. 迭代:sr=sc.nextInt();cs++;
4. 循环条件:cs<20
public class QiZhong {
public static void main(String[] args) {
int cs=0;
int sjs=(int)(Math.random()*100);
Scanner sc=new Scanner(System.in);
System.out.println("欢迎来到猜字游戏");
System.out.println("请输入一个0~99之间的数:");
do {
int sr=sc.nextInt();cs++;
if(sr==sjs) {
if(cs==1) {
System.out.println("你太棒了!用了"+cs+"次,就猜对了");
break;
}
if(cs<=9&&cs>=2) {
System.out.println("你真聪明!用了"+cs+"次,就猜对了");
break;
}
if(cs>=10) {
System.out.println("恭喜你!用了"+cs+"次猜对了");
break;
}
}else {
if(sr>sjs) {
System.out.println("对不起,你猜大了!");
}
else {
System.out.println("对不起,你猜小了!");
}
}
}while(cs<20);
System.out.println("欢迎下次再玩!");
sc.close();
}
}
题目9:查询门票
1.明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
一个数:固定/输入/随机?
输入的一个数
一个程序,输入年龄,查询门票价格
举例:输入60,输出门票免费,欢迎!
(2).程序运行平台
Web/App/Console/应用软件
一个Console程序,输入年龄,查询门票价格
(3).明确数据
输入
年龄
输出
门票价格
提示语
输入
请输入年龄(输入0退出系统):
运算
/
输出
门票价格
(4).明确动作
输入
Scanner
运算
求门票价格
输出
Println/print?
(5).重述需求
用一个Console程序,输入年龄,查询门票价格
输入60,输出门票免费,欢迎!
2.任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:输出欢迎语
任务2:输出提示语
任务3:输入读入
任务4:运算(判断条件)
任务5:输出门票价格
任务6:输出提示语
任务7:输入读入
任务8:运算(判断条件)
任务9:输出门票价格
…………
任务x:输出提示语
任务x:输入读入
任务x:运算(判断条件)
任务x:输出门票价格
3.实现(任务拆分的结果)
任务1:输出欢迎语
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“欢迎进入门票查询系统”
实现
动作+数据
System.out.println("欢迎进入门票查询系统");
任务2:输出提示语
步骤
思维过程
实现
找动作
print/println
找数据
字符串
“请输入年龄(输入0退出系统):”
实现
动作+数据
System.out.print(“请输入年龄(输入0退出系统):”);
任务3:输入读入
步骤
思维过程
实现
找动作
输入值?
Scanner
找数据
类型:int
名字:nl
int nl
实现
动作+数据
int nl = sc.nextInt();
任务4:运算(判断条件)
步骤
思维过程
实现
找动作
nl=?
if
找数据
60~100
nl>=60&&nl<=100
实现
动作+数据
if(nl>=60&&nl<=100)
任务5:输出门票价格
步骤
思维过程
实现
找动作
print/println
println
找数据
字符串
“门票免费,欢迎!”
实现
动作+数据
System.out.println("门票免费,欢迎!");
…………
有重复,用循环(while)
四要素:
1.初始化:System.out.print("请输入年龄(输入0退出系统):");
int nl = sc.nextInt();
2. 循环条件:nl!=0
3. 循环体:if(){}
4. 迭代:System.out.print("请输入年龄(输入0退出系统):");
nl = sc.nextInt();
public class QiZhong {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("欢迎进入门票查询系统");
int nl = getNum(sc);
while(nl!=00){
if(nl>=60&&nl<=100) {
System.out.println("门票免费,欢迎!");
nl = getNum(sc);
}
if(nl>=25&&nl<=59) {
System.out.println("需购买全票,欢迎!");
nl = getNum(sc);
}
if(nl>=9&&nl<=24) {
System.out.println("学生/儿童需购买半票,欢迎!");
nl = getNum(sc);
}
if(nl>=1&&nl<=8) {
System.out.println("无需购票,欢迎!");
nl = getNum(sc);
}
}
System.out.println("退出查询!");
}
public static int getNum(Scanner ff) {
System.out.print("请输入年龄(输入0退出系统):");
int nl = ff.nextInt();
return nl;
}
}
题目10:球从100米高度自由落下,每次落地后反弹回原高度的一半,再落下;第10次落地时共经过多少米?第10次反弹多高?
1.明确需求(沟通过程中,将不确定变成选择)
步骤
思考步骤
重述需求并举例
(1)以人的思维找答案(把人看作机器)
计算
一个程序,计算球第10次落地经过多少米,反弹多高
(2).程序运行平台
Web/App/Console/应用软件
输入一个数,第10次落地经过多少米,反弹多高
(3).明确数据
输入
/
输出
第10次落地经过?米,反弹?高
提示语
输入
/
运算
/
输出
第10次落地经过?米,反弹?高
(4).明确动作
输入
/
运算
第10次落地经过多少米,反弹多高
输出
Println/print?
(5).重述需求
用一个Console程序,计算球第10次落地经过多少米,反弹多高
/
2.任务拆分(实现过程,从上到下。数据->运算->输出->)
任务1:定义两个值
任务2:运算(需计算10次,用循环,for)
任务3:输出球第10次落地经过多少米,反弹多高
3.实现(任务拆分的结果)
任务1:定义两个值
步骤
思维过程
实现
找动作
整数/字符串/浮点数
double
找数据
名字+值
g=100 m=0
实现
动作+数据
double g=100;
double m=0;
任务2:运算(需计算10次,用循环,for)
循环四要素
1.初始化
2.循环条件
3.循环体
4.迭代
int gc=0;
gc<=10;
g=g/2;
m+=g;
gc++
任务3:输出球第10次落地经过多少米,反弹多高
步骤
思维过程
实现
找动作
println/print
println
找数据
字符串+变量
"第10次经过"+m+"米"
"第10次反弹"+g+"高"
实现
动作+数据
System.out.println("第10次经过"+m+"米");
System.out.println("第10次反弹"+g+"高");
public class QiZhong {
public static void main(String[] args) {
double g=100;
double m=0;
for(int gc=0;gc<=10;gc++) {
g=g/2;
m+=g;
}
System.out.println(m);
System.out.println(g);
}
}