題目1:輸出1-100
1. 明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
數(shù)字(1-100)
一個(gè)程序,輸出1-100
舉例:1? 2? 3...100
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
一個(gè)Console程序,輸出1-100
(3).明確數(shù)據(jù)
輸入
/
輸出
1-100
提示語(yǔ)
輸入
/
運(yùn)算
/
輸出
/
(4).明確動(dòng)作
輸入
/
運(yùn)算
/
輸出
println/print?
(5).重述需求
用一個(gè)Console程序,輸出1-100
1? 2? 3...100
2. 任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:定義變量
任務(wù)2:運(yùn)算(判斷條件)
任務(wù)3:輸出變量
任務(wù)4:變量++
任務(wù)5:運(yùn)算(判斷條件)
任務(wù)6:輸出變量
任務(wù)7:變量++
......
任務(wù)x:運(yùn)算(判斷條件)
任務(wù)x:輸出變量
任務(wù)x:變量++
實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:定義變量
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
類型:int
int
找數(shù)據(jù)
一個(gè)變量
sz=1;
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
int sz=1;
任務(wù)2:運(yùn)算(判斷條件)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
變量<=?
?<=?
找數(shù)據(jù)
已知:變量:sz? 條件值:100
sz? 100
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
sz<=100;? ? ? ? ? ? ? ? ? ? ? ? ? ?
任務(wù)3:輸出變量
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
輸出:println/print
println
找數(shù)據(jù)
sz=1;
sz
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println(sz);
任務(wù)4:變量++
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
變量加1
++
找數(shù)據(jù)
sz
sz
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
sz++;
…………
有重復(fù),用循環(huán)(for)
四要素:
1. 初始化:int sz=1;
2. 循環(huán)條件:sz<=100;
3. 循環(huán)體: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:查詢科目成績(jī)
1.明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
科目:固定/輸入/隨機(jī)?
一個(gè)輸入的科目名稱
一個(gè)程序,輸入科目名稱,求每科成績(jī)
舉例:輸入語(yǔ)文,輸出你的語(yǔ)文成績(jī)是:60? 及格
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
一個(gè)Console程序,求科目成績(jī)
(3).明確數(shù)據(jù)
輸入
科目名稱
輸出
科目成績(jī)
提示語(yǔ)
輸入
請(qǐng)輸入你需要查詢的科目(輸入退出結(jié)束):
運(yùn)算
/
輸出
你的語(yǔ)文成績(jī)是:
(4).明確動(dòng)作
輸入
Scanner
運(yùn)算
求科目成績(jī)
輸出
println/print?
(5).重述需求
用一個(gè)Console程序,輸入科目名稱,求出每科的考試成績(jī)
你的考試成績(jī)是:60? 及格
2.任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:輸出提示語(yǔ)
任務(wù)2:輸入讀入
任務(wù)3:運(yùn)算(判斷條件)
任務(wù)4:輸出你的英語(yǔ)成績(jī)是:60? 及格
任務(wù)5:輸出提示語(yǔ)
任務(wù)6:輸入讀入
任務(wù)7:運(yùn)算(判斷條件)
任務(wù)8:輸出你的數(shù)學(xué)成績(jī)是:60? 及格
……
任務(wù)xx:輸入讀入
任務(wù)xx:運(yùn)算(判斷條件)
任務(wù)xx:輸出xx
3.實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:輸出提示語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
找數(shù)據(jù)
字符串
“請(qǐng)輸入你需要查詢的科目(輸入退出結(jié)束):”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print("請(qǐng)輸入你需要查詢的科目(輸入退出結(jié)束):");
任務(wù)2:輸入讀入
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
輸入的值
Scanner
找數(shù)據(jù)
類型:String
名字:km
String km
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
String km=sc.next();? ? ? ? ? ? ? ?
任務(wù)3:運(yùn)算(判斷條件)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
Km=?
if
找數(shù)據(jù)
英語(yǔ)
km.contentEquals("英語(yǔ)")
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
if(km.contentEquals("英語(yǔ)"))
任務(wù)4:輸出你的英語(yǔ)成績(jī)是:60? 及格
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“你的英語(yǔ)成績(jī)是:60? 及格”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("請(qǐng)輸入你需要查詢的科目(輸入退出結(jié)束):");
…………
有重復(fù),用循環(huán)(while)
四要素:
1.初始化:System.out.print("請(qǐng)輸入你要查詢的科目(輸入退出結(jié)束):");
??String km=sc.next();
2. 循環(huán)條件:km.contentEquals("退出")==false
3. 循環(huán)體:if(){}else{}
4. 迭代:System.out.print("請(qǐng)輸入你要查詢的科目(輸入退出結(jié)束):");
??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("英語(yǔ)")){
???System.out.println("你的英語(yǔ)成績(jī)是:60? 及格");
???km=getCourse(sc);
??}else if(km.contentEquals("數(shù)學(xué)")) {
???System.out.println("你的數(shù)學(xué)成績(jī)是:35? 不及格");
???km=getCourse(sc);
??}else if(km.contentEquals("計(jì)算機(jī)")) {
???System.out.println("你的計(jì)算機(jī)成績(jī)是:100? 優(yōu)秀");
???km=getCourse(sc);
??}else if(km.contentEquals("java")) {
???System.out.println("你的java成績(jī)是:90? 優(yōu)秀");
???km=getCourse(sc);
??}else if(km.contentEquals("語(yǔ)文")) {
???System.out.println("你的語(yǔ)文成績(jī)是:80? 良好");
???km=getCourse(sc);
??}else if(km.contentEquals("體育")){
???System.out.println("你的體育成績(jī)是:70? 良好");
???km=getCourse(sc);
??}else {
???System.out.println("你的輸入有誤,重新輸入!");
???km=getCourse(sc);
??}
??}?
??System.out.println("查詢結(jié)束!");
??sc.close();
??}
?public static String getCourse(Scanner kc) {
??System.out.print("請(qǐng)輸入你要查詢的科目(輸入退出結(jié)束):");
??String km=kc.next();
??return km;
??}
}
任務(wù)1:輸出提示語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
找數(shù)據(jù)
字符串
“請(qǐng)輸入1-3中的一個(gè)數(shù)字:”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print("請(qǐng)輸入1-3中的一個(gè)數(shù)字:");
任務(wù)2:輸入讀入
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
輸入的值
Scanner
找數(shù)據(jù)
類型:int
名字:ss
int ss
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
int ss=sc.nextInt();? ? ? ? ? ? ? ?
任務(wù)3:運(yùn)算(判斷條件)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
ss=?
switch
找數(shù)據(jù)
1
case 1:
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
Switch(ss){
case 1:
}
任務(wù)4:輸出這個(gè)數(shù)字代表:石頭
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“這個(gè)數(shù)字代表:石頭”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("這個(gè)數(shù)字代表:石頭");
…………
有重復(fù),用循環(huán)(for)
四要素:
1.初始化:System.out.print("請(qǐng)輸入1-3中的一個(gè)數(shù)字:"),String ss=sc.nextInt();
2.循環(huán)條件:ss>=1&&ss<=3;
3.循環(huán)體:switch(ss){}
4.迭代:System.out.print("請(qǐng)輸入1-3中的一個(gè)數(shù)字:"),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("請(qǐng)輸入1-3中的一個(gè)數(shù)字:"),ss=sc.nextInt();ss>=1&&ss<=3;
???System.out.print("請(qǐng)輸入1-3中的一個(gè)數(shù)字:"),ss=sc.nextInt()) {
? switch(ss) {
? case 1:
? ?System.out.println("這個(gè)數(shù)字代表:石頭");
? ?break;
? case 2:
? ?System.out.println("這個(gè)數(shù)字代表:剪刀");
? ?break;
? case 3:
? ?System.out.println("這個(gè)數(shù)字代表:布");
? ?break;
? }?
?}
?System.out.println("輸入錯(cuò)誤!");
?sc.close();
}
}
題目4:比較三個(gè)數(shù)大小
1.明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
三個(gè)數(shù):固定/輸入/隨機(jī)?
輸入的三個(gè)數(shù)
一個(gè)程序,輸入三個(gè)數(shù),比較大小
舉例:30>20>10
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
一個(gè)Console程序,輸入三個(gè)數(shù),比較大小
(3).明確數(shù)據(jù)
輸入
三個(gè)整數(shù)
輸出
從大到小
提示語(yǔ)
輸入
請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):
運(yùn)算
/
輸出
/
(4).明確動(dòng)作
輸入
Scanner
運(yùn)算
大到小排序
輸出
Println/print?
(5).重述需求
用一個(gè)Console程序,輸入三個(gè)數(shù),比較大小
30>20>10
2.任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:輸出提示語(yǔ)
任務(wù)2:輸入讀入
任務(wù)3:運(yùn)算(判斷條件)
任務(wù)4:輸出大到小的排序
任務(wù)5:輸出提示語(yǔ)
任務(wù)6:輸入讀入
任務(wù)7:運(yùn)算(判斷條件)
任務(wù)8:輸出大到小的排序
…………
任務(wù)x:輸出提示語(yǔ)
任務(wù)x:輸入讀入
任務(wù)x:運(yùn)算(判斷條件)
任務(wù)x:輸出大到小的排序
實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:提示輸入語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
找數(shù)據(jù)
字符串
“請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print("請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):");
任務(wù)2:輸入讀入
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
輸入的值
Scanner
找數(shù)據(jù)
類型:int
名字:yi? er? san
int yi
int er
int san
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
int yi=sc.nextInt();
int er=sc.nextInt();
Int san=sc.nextInt();? ? ? ? ? ? ?
任務(wù)3:運(yùn)算(判斷條件)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
比較大小
if
找數(shù)據(jù)
yi=30? er=20? san=10
yi>er>san
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
If(yi>er>san){
}
任務(wù)4:輸出大到小的排序
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串+int
yi+">"+er+">"+san
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println(yi+">"+er+">"+san);
…………
有重復(fù),用循環(huán)(do...while)
四要素:
1.初始化:System.out.print("請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):");
?int yi=sc.nextInt();
?int er=sc.nextInt();
?int san=sc.nextInt();
2. 循環(huán)體:if(){}else{}
3. 迭代:System.out.print("請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):");
?yi=sc.nextInt();
?er=sc.nextInt();
?san=sc.nextInt();
4. 循環(huán)條件:yi!=er&&er!=san&&san!=yi
public class QiZhong {
?public static void main(String[] args) {
?Scanner sc=new Scanner(System.in);
?System.out.print("請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):");
?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("請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):");
???yi=sc.nextInt();
???er=sc.nextInt();
???san=sc.nextInt();
??}else {
???System.out.println(san+">"+yi+">"+er);
???System.out.print("請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):");
???yi=sc.nextInt();
???er=sc.nextInt();
???san=sc.nextInt();
??}
?}else {
??if(er>san) {
???System.out.println(er+">"+yi+">"+san);
???System.out.print("請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):");
???yi=sc.nextInt();
???er=sc.nextInt();
???san=sc.nextInt();
??}else {
???System.out.println(san+">"+er+">"+yi);
???System.out.print("請(qǐng)輸入相同位數(shù)的三個(gè)整數(shù):");
???yi=sc.nextInt();
???er=sc.nextInt();
???san=sc.nextInt();
??}
?}
?}while(yi!=er&&er!=san&&san!=yi);
?System.out.println("錯(cuò)誤!");
?sc.close();
}
}
題目5:查詢高一班級(jí)最高分
1.明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
班級(jí):固定/輸入/隨機(jī)?
輸入的班級(jí)名
一個(gè)程序,輸入班級(jí)查詢班級(jí)最高分
舉例:輸入高一一班,輸出高一一班的高分是:567
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
一個(gè)Console程序,輸入班級(jí)查詢班級(jí)最高分
(3).明確數(shù)據(jù)
輸入
班級(jí)名稱
輸出
班級(jí)最高分
提示語(yǔ)
輸入
請(qǐng)輸入高一班級(jí)名稱(輸入退出結(jié)束):
運(yùn)算
/
輸出
高一一班的最高分是:
(4).明確動(dòng)作
輸入
Scanner
運(yùn)算
求班級(jí)最高分
輸出
Println/print?
(5).重述需求
用一個(gè)Console程序,輸入班級(jí)名稱查詢班級(jí)最高分
高一一班的最高分是:
2.任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:輸出歡迎語(yǔ)
任務(wù)2:輸出提示語(yǔ)
任務(wù)3:輸入讀入
任務(wù)4:運(yùn)算(判斷條件)
任務(wù)5:輸出高一一班的最高分是:567
任務(wù)6:輸出提示語(yǔ)
任務(wù)7:輸入讀入
任務(wù)8:運(yùn)算(判斷條件)
任務(wù)9:輸出高一二班的最高分是:493
…………
任務(wù)x:輸出提示語(yǔ)
任務(wù)x:輸入讀入
任務(wù)x:運(yùn)算(判斷條件)
任務(wù)x:輸出xx
3.實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:輸出歡迎語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“歡迎使用查詢系統(tǒng)”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print("歡迎使用查詢系統(tǒng)");
任務(wù)2:輸出提示語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
找數(shù)據(jù)
字符串
“請(qǐng)輸入高一班級(jí)名稱(輸入退出結(jié)束):”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print("請(qǐng)輸入高一班級(jí)名稱(輸入退出結(jié)束):");? ? ? ? ? ? ? ? ? ?
任務(wù)3:輸入讀入
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
輸入值?
Scanner
找數(shù)據(jù)
類型:字符串
名字:bj
String bj
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
String bj=sc.next();
任務(wù)4:運(yùn)算(判斷條件)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
bj=?
if
找數(shù)據(jù)
高一一班
bj.contentEquals("高一一班")
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
if(bj.contentEquals("高一一班"))
任務(wù)5:輸出高一一班的最高分是:567
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“高一一班的最高分是:567”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("高一一班的最高分是:567");
…………
有重復(fù),用循環(huán)(while)
四要素:
1.初始化:System.out.print("請(qǐng)輸入高一班級(jí)名稱(輸入退出結(jié)束):");
??String bj=sc.next();
2. 循環(huán)條件:bj.contentEquals("退出")==false
3. 循環(huán)體:if(){}else{}
4. 迭代:System.out.print("請(qǐng)輸入高一班級(jí)名稱(輸入退出結(jié)束):");
??bj=sc.next();
public class QiZhong {
?public static void main(String[] args) {
?Scanner sc=new Scanner(System.in);
?System.out.println("歡迎使用查詢系統(tǒng)");
?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("輸入錯(cuò)誤!重新輸入");
??bj=getClass(sc);
?}}
?System.out.println("查詢結(jié)束!");
?sc.close();
}
?public static String getClass(Scanner sc) {
??System.out.print("請(qǐng)輸入高一班級(jí)名稱(輸入退出結(jié)束):");
??String bj=sc.next();
??return bj;
?}
}
題目6:輸出9*9乘法表
1.明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
乘法表
一個(gè)程序,輸出9*9乘法表
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
一個(gè)Console程序,輸出9*9乘法表
(3).明確數(shù)據(jù)
輸入
/
輸出
9*9乘法表
提示語(yǔ)
輸入
/
運(yùn)算
/
輸出
/
(4).明確動(dòng)作
輸入
/
運(yùn)算
9*9乘法表
輸出
Println/print?
(5).重述需求
用一個(gè)Console程序,輸出9*9乘法表
1*1=1 ……
2.任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:定義兩個(gè)值
任務(wù)2:運(yùn)算(判斷條件)
任務(wù)3:輸出1*1=1
任務(wù)4:定義兩個(gè)值
任務(wù)5:運(yùn)算(判斷條件)
任務(wù)6:輸出1*2=2
…………
任務(wù)x:定義兩個(gè)值
任務(wù)x:運(yùn)算(判斷條件)
任務(wù)x:輸出xxx
3.實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:定義兩個(gè)值
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
類型:整數(shù)/字符串
int
找數(shù)據(jù)
1
x=1
y=1
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
int x=1
Int y=1
任務(wù)2:運(yùn)算(判斷條件)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
x? y?
If,>=
找數(shù)據(jù)
x=1? y=1
x<=9&&y<=x
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
if(x<=9&&y<=x)? ? ? ? ? ? ? ? ? ? ?
任務(wù)3:輸出1*1=1
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
println/print
找數(shù)據(jù)
整數(shù)+字符串
y+"*"+x+"="+x*y+"? "
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print(y+"*"+x+"="+x*y+"? ");
…………
有重復(fù),用循環(huán)(for)
四要素:
1:初始化:int x=1;int y=1;
2. 循環(huán)條件:x<=9;y<=x;
3. 循環(huán)體: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.明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
一個(gè)數(shù):固定/輸入/隨機(jī)?
一個(gè)輸入的值
一個(gè)程序,輸入課程碼,查詢課程名稱
舉例:一個(gè)程序,輸入101,輸出計(jì)算機(jī)應(yīng)用基礎(chǔ)
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
一個(gè)Console程序,輸入課程碼,查詢課程名稱
(3).明確數(shù)據(jù)
輸入
課程碼
輸出
課程名稱
提示語(yǔ)
輸入
請(qǐng)輸入課程碼:(輸入000退出)
運(yùn)算
/
輸出
/
(4).明確動(dòng)作
輸入
Scanner
運(yùn)算
求課程名稱
輸出
Println/print?
(5).重述需求
用一個(gè)Console程序,輸入課程碼,查詢課程名稱
計(jì)算機(jī)應(yīng)用程序
2.任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:輸出歡迎語(yǔ)
任務(wù)2:輸出提示語(yǔ)
任務(wù)3:輸入讀入
任務(wù)4:運(yùn)算(判斷條件)
任務(wù)5:輸出課程名稱
任務(wù)6:輸出提示語(yǔ)
任務(wù)7:輸入讀入
任務(wù)8:運(yùn)算(判斷條件)
任務(wù)9:輸出課程名稱
…………
任務(wù)x:輸出提示語(yǔ)
任務(wù)x:輸入讀入
任務(wù)x:運(yùn)算(判斷條件)
任務(wù)x:輸出xxx
3.實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:輸出歡迎語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“歡迎使用課程查詢系統(tǒng)”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("歡迎使用課程查詢系統(tǒng)");
任務(wù)2:輸出提示語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
找數(shù)據(jù)
字符串
“請(qǐng)輸入課程碼(輸入0退出):”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print("請(qǐng)輸入課程碼(輸入000退出):");? ? ? ? ? ? ? ? ? ? ? ?
任務(wù)3:輸入讀入
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
輸入值?
Scanner
找數(shù)據(jù)
類型:整數(shù)
名字:kc
int kc
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
int kc=sc.nextInt();
任務(wù)4:運(yùn)算(判斷條件)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
kc=?
if
找數(shù)據(jù)
101
kc==101
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
If(kc==101){
}
任務(wù)5:輸出課程名稱
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“計(jì)算機(jī)應(yīng)用基礎(chǔ)”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("計(jì)算機(jī)應(yīng)用基礎(chǔ)");
…………
有重復(fù),用循環(huán)(do...whlie)
四要素:
1.初始化:System.out.print("請(qǐng)輸入課程碼(輸入000退出):");
??int kc=dm.nextInt();
2. 循環(huán)體:if(){}else{}
3. 迭代:System.out.print("請(qǐng)輸入課程碼(輸入000退出):");
??kc=dm.nextInt();
4. 循環(huán)條件:kc!=000
public class QiZhong {
?public static void main(String[] args) {
?Scanner sc=new Scanner(System.in);
?System.out.println("歡迎使用課程查詢系統(tǒng)");
?int kc=getNum(sc);
?do{
?if(kc==101) {
??System.out.println("計(jì)算機(jī)應(yīng)用基礎(chǔ)");
??kc=getNum(sc);
?}
?else if(kc==102) {
??System.out.println("計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)");
??kc=getNum(sc);
?}
?else if(kc==203) {
??System.out.println("程序設(shè)計(jì)基礎(chǔ)");
??kc=getNum(sc);
?}
?else if(kc==501) {
??System.out.println("英語(yǔ)應(yīng)用能力");
??kc=getNum(sc);
?}else if(kc==302) {
??System.out.println("數(shù)學(xué)建模");
??kc=getNum(sc);
?}else {
??System.out.println("輸入錯(cuò)誤!重新輸入");
??kc=getNum(sc);
?}
?}while(kc!=000) ;
?System.out.println("查詢結(jié)束!");
?sc.close();
}
?public static int getNum(Scanner dm) {
??System.out.print("請(qǐng)輸入課程碼(輸入000退出):");
??int kc=dm.nextInt();
??return kc;
?}
}
題目8:猜數(shù)游戲
1.明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
一個(gè)數(shù):固定/輸入/隨機(jī)?
輸入的一個(gè)值
一個(gè)程序,猜0~99中的任意一個(gè)數(shù)
舉例:一個(gè)程序,輸入1,輸出對(duì)不起你猜小了...
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
一個(gè)Console程序,猜0~99中的任意一個(gè)數(shù)
(3).明確數(shù)據(jù)
輸入
0~99中任意一個(gè)數(shù)
輸出
猜數(shù)結(jié)果
提示語(yǔ)
輸入
請(qǐng)輸入一個(gè)0~99之間的數(shù):
運(yùn)算
/
輸出
猜數(shù)結(jié)果
(4).明確動(dòng)作
輸入
Scanner
運(yùn)算
求猜數(shù)結(jié)果
輸出
Println/print?
(5).重述需求
用一個(gè)Console程序,猜0~99中的任意一個(gè)數(shù)
/
2.任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:定義兩個(gè)值
任務(wù)2:輸出歡迎語(yǔ)
任務(wù)3:輸出提示語(yǔ)
任務(wù)4:輸入讀入
任務(wù)5:運(yùn)算(比較)
任務(wù):6:輸出猜數(shù)結(jié)果
任務(wù)7:輸出提示語(yǔ)
任務(wù)8:輸入讀入
任務(wù)9:運(yùn)算(比較)
任務(wù):10:輸出猜數(shù)結(jié)果
…………
任務(wù)x:輸出提示語(yǔ)
任務(wù)x:輸入讀入
任務(wù)x:運(yùn)算(比較)
任務(wù):x:輸出猜數(shù)結(jié)果
3.實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:定義兩個(gè)值
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
類型?
int,*
找數(shù)據(jù)
名字+值
cs=0
sjs=(int)(Math.random()*100)
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
int cs=0
int sjs=(int)(Math.random()
*100)
任務(wù)2:輸出歡迎語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“歡迎來(lái)到猜字游戲”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("歡迎來(lái)到猜字游戲");? ? ? ? ? ? ? ? ? ? ?
任務(wù)3:輸出提示語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
println/print
找數(shù)據(jù)
字符串
"請(qǐng)輸入一個(gè)0~99之間的數(shù):"
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print("請(qǐng)輸入一個(gè)0~99之間的數(shù):");
任務(wù)4:輸入讀入
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
輸入值?
Scanner
找數(shù)據(jù)
類型:int
名字:sr
int sr
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
int sr=sc.nextInt();cs++;
任務(wù)5:運(yùn)算(比較)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
sr=?
if
找數(shù)據(jù)
sr? sjs? cs
sr==sjs? cs==1
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
if(sr==sjs){
if(cs==1) {
}}
任務(wù):6:輸出猜數(shù)結(jié)果
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串+變量
"你太棒了!用了"+cs+"次,就猜對(duì)了"
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("你太棒了!用了"+cs+"次,就猜對(duì)了");
…………
有重復(fù),用循環(huán)(do...whlie)
四要素:
1. 初始化:System.out.println("請(qǐng)輸入一個(gè)0~99之間的數(shù):");?
int sr=sc.nextInt();cs++;
2. 循環(huán)體:if(){}else{}
3. 迭代:sr=sc.nextInt();cs++;
4. 循環(huán)條件: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("歡迎來(lái)到猜字游戲");
??System.out.println("請(qǐng)輸入一個(gè)0~99之間的數(shù):");
??do {
???int sr=sc.nextInt();cs++;
???if(sr==sjs) {
????if(cs==1) {
?????System.out.println("你太棒了!用了"+cs+"次,就猜對(duì)了");
?????break;
????}
????if(cs<=9&&cs>=2) {
?????System.out.println("你真聰明!用了"+cs+"次,就猜對(duì)了");
?????break;
????}
????if(cs>=10) {
?????System.out.println("恭喜你!用了"+cs+"次猜對(duì)了");
?????break;
????}
???}else {
????if(sr>sjs) {
?????System.out.println("對(duì)不起,你猜大了!");
????}
????else {
?????System.out.println("對(duì)不起,你猜小了!");
????}
???}?
??}while(cs<20);
??System.out.println("歡迎下次再玩!");
??sc.close();
}
}
題目9:查詢門(mén)票
1.明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
一個(gè)數(shù):固定/輸入/隨機(jī)?
輸入的一個(gè)數(shù)
一個(gè)程序,輸入年齡,查詢門(mén)票價(jià)格
舉例:輸入60,輸出門(mén)票免費(fèi),歡迎!
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
一個(gè)Console程序,輸入年齡,查詢門(mén)票價(jià)格
(3).明確數(shù)據(jù)
輸入
年齡
輸出
門(mén)票價(jià)格
提示語(yǔ)
輸入
請(qǐng)輸入年齡(輸入0退出系統(tǒng)):
運(yùn)算
/
輸出
門(mén)票價(jià)格
(4).明確動(dòng)作
輸入
Scanner
運(yùn)算
求門(mén)票價(jià)格
輸出
Println/print?
(5).重述需求
用一個(gè)Console程序,輸入年齡,查詢門(mén)票價(jià)格
輸入60,輸出門(mén)票免費(fèi),歡迎!
2.任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:輸出歡迎語(yǔ)
任務(wù)2:輸出提示語(yǔ)
任務(wù)3:輸入讀入
任務(wù)4:運(yùn)算(判斷條件)
任務(wù)5:輸出門(mén)票價(jià)格
任務(wù)6:輸出提示語(yǔ)
任務(wù)7:輸入讀入
任務(wù)8:運(yùn)算(判斷條件)
任務(wù)9:輸出門(mén)票價(jià)格
…………
任務(wù)x:輸出提示語(yǔ)
任務(wù)x:輸入讀入
任務(wù)x:運(yùn)算(判斷條件)
任務(wù)x:輸出門(mén)票價(jià)格
3.實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:輸出歡迎語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“歡迎進(jìn)入門(mén)票查詢系統(tǒng)”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("歡迎進(jìn)入門(mén)票查詢系統(tǒng)");
任務(wù)2:輸出提示語(yǔ)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
找數(shù)據(jù)
字符串
“請(qǐng)輸入年齡(輸入0退出系統(tǒng)):”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.print(“請(qǐng)輸入年齡(輸入0退出系統(tǒng)):”);? ? ? ? ? ? ? ? ? ? ? ?
任務(wù)3:輸入讀入
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
輸入值?
Scanner
找數(shù)據(jù)
類型:int
名字:nl
int nl
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
int nl = sc.nextInt();
任務(wù)4:運(yùn)算(判斷條件)
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
nl=?
if
找數(shù)據(jù)
60~100
nl>=60&&nl<=100
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
if(nl>=60&&nl<=100)
任務(wù)5:輸出門(mén)票價(jià)格
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
print/println
println
找數(shù)據(jù)
字符串
“門(mén)票免費(fèi),歡迎!”
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("門(mén)票免費(fèi),歡迎!");
…………
有重復(fù),用循環(huán)(while)
四要素:
1.初始化:System.out.print("請(qǐng)輸入年齡(輸入0退出系統(tǒng)):");
????int nl = sc.nextInt();
2. 循環(huán)條件:nl!=0
3. 循環(huán)體:if(){}
4. 迭代:System.out.print("請(qǐng)輸入年齡(輸入0退出系統(tǒng)):");
????nl = sc.nextInt();
public class QiZhong {
?public static void main(String[] args) {
??Scanner sc=new Scanner(System.in);
??System.out.println("歡迎進(jìn)入門(mén)票查詢系統(tǒng)");
??int nl = getNum(sc);
???while(nl!=00){
???if(nl>=60&&nl<=100) {
?????System.out.println("門(mén)票免費(fèi),歡迎!");
?????nl = getNum(sc);
????}
????if(nl>=25&&nl<=59) {
?????System.out.println("需購(gòu)買(mǎi)全票,歡迎!");
?????nl = getNum(sc);
????}
????if(nl>=9&&nl<=24) {
?????System.out.println("學(xué)生/兒童需購(gòu)買(mǎi)半票,歡迎!");
?????nl = getNum(sc);
????}
????if(nl>=1&&nl<=8) {
?????System.out.println("無(wú)需購(gòu)票,歡迎!");
?????nl = getNum(sc);
????}
???}
???System.out.println("退出查詢!");
?}
???public static int getNum(Scanner ff) {
????System.out.print("請(qǐng)輸入年齡(輸入0退出系統(tǒng)):");
????int nl = ff.nextInt();
????return nl;
???}
}
題目10:球從100米高度自由落下,每次落地后反彈回原高度的一半,再落下;第10次落地時(shí)共經(jīng)過(guò)多少米?第10次反彈多高?
1.明確需求(溝通過(guò)程中,將不確定變成選擇)
步驟
思考步驟
重述需求并舉例
(1)以人的思維找答案(把人看作機(jī)器)
計(jì)算
一個(gè)程序,計(jì)算球第10次落地經(jīng)過(guò)多少米,反彈多高
(2).程序運(yùn)行平臺(tái)
Web/App/Console/應(yīng)用軟件
輸入一個(gè)數(shù),第10次落地經(jīng)過(guò)多少米,反彈多高
(3).明確數(shù)據(jù)
輸入
/
輸出
第10次落地經(jīng)過(guò)?米,反彈?高
提示語(yǔ)
輸入
/
運(yùn)算
/
輸出
第10次落地經(jīng)過(guò)?米,反彈?高
(4).明確動(dòng)作
輸入
/
運(yùn)算
第10次落地經(jīng)過(guò)多少米,反彈多高
輸出
Println/print?
(5).重述需求
用一個(gè)Console程序,計(jì)算球第10次落地經(jīng)過(guò)多少米,反彈多高
/
2.任務(wù)拆分(實(shí)現(xiàn)過(guò)程,從上到下。數(shù)據(jù)->運(yùn)算->輸出->)
任務(wù)1:定義兩個(gè)值
任務(wù)2:運(yùn)算(需計(jì)算10次,用循環(huán),for)
任務(wù)3:輸出球第10次落地經(jīng)過(guò)多少米,反彈多高
3.實(shí)現(xiàn)(任務(wù)拆分的結(jié)果)
任務(wù)1:定義兩個(gè)值
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
整數(shù)/字符串/浮點(diǎn)數(shù)
double
找數(shù)據(jù)
名字+值
g=100? m=0
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
double g=100;
double m=0;
任務(wù)2:運(yùn)算(需計(jì)算10次,用循環(huán),for)
循環(huán)四要素
1.初始化
2.循環(huán)條件
3.循環(huán)體
4.迭代
int gc=0;
gc<=10;
g=g/2;
m+=g;
gc++? ? ? ? ? ? ? ? ? ? ?
任務(wù)3:輸出球第10次落地經(jīng)過(guò)多少米,反彈多高
步驟
思維過(guò)程
實(shí)現(xiàn)
找動(dòng)作
println/print
println
找數(shù)據(jù)
字符串+變量
"第10次經(jīng)過(guò)"+m+"米"
"第10次反彈"+g+"高"
實(shí)現(xiàn)
動(dòng)作+數(shù)據(jù)
System.out.println("第10次經(jīng)過(guò)"+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);
}
}