Java-------猜拳小遊戲,四則運算等
阿新 • • 發佈:2018-11-05
(1)、我國最高山峰是珠穆朗瑪峰,8848米。現在我有一張足夠大的紙,它的厚度是0.001米。請問,摺疊多少次,可以折成珠穆朗瑪峰的高度。(難點:迴圈條件的改變)
(2)、編寫程式計算12+22+32+....+1002的和。
(3)、編寫程式,列印1到100之內的整數,但數字中包含7的要跳過。
難點條件(i/10!=7&&i%10!=7)
(4)、編寫程式,生成5個1至10之間的隨機整數,並列印。(難點:隨機數生成方法)
(5)、計算101-200之間有多少個素數(素數:只能被1和本身整除的數),並輸出所有素數。
(6)、編寫程式,實現小學生四則運算。
(7)、猜拳遊戲的進一步實現(考慮三局兩勝)
import java.util.Random; import java.util.Scanner; public class ForHomework_1 { public static <bool> void main(String[] args) { // TODO Auto-generated method stub System.out.println("作業:"); System.out.println("(1)、我國最高山峰是珠穆朗瑪峰,8848米。現在我有一張足夠大的紙,它的厚度是0.001米。"); System.out.println(" 請問,摺疊多少次,可以折成珠穆朗瑪峰的高度。(難點:迴圈條件的改變)"); System.out.println("(2)、編寫程式計算12+22+32+....+1002的和。"); System.out.println("(3)、編寫程式,列印1到100之內的整數,但數字中包含7的要跳過。難點條件(i/10!=7&&i%10!=7)"); System.out.println("(4)、編寫程式,生成5個1至10之間的隨機整數,並列印。(難點:隨機數生成方法)"); System.out.println("(5)、計算101-200之間有多少個素數(素數:只能被1和本身整除的數),並輸出所有素數。"); System.out.println("(6)、編寫程式,實現小學生四則運算。"); System.out.println("(7)、猜拳遊戲的進一步實現(考慮三局兩勝)"); System.out.println("(0) 退出"); System.out.print("請輸入你選擇的操作:"); int n; @SuppressWarnings("resource") Scanner scanner=new Scanner(System.in); n=scanner.nextInt(); while(n!=0) { if(n==1)//珠穆朗瑪峰 { double width=0.001; int number=0; while(width<=8848) { width=2*width; number++; } System.out.println("至少需要對摺"+number+"次"); } if(n==2)//計算和 { int sum=0; for(int i=12;i<=1002;i+=10) sum+=i; System.out.println("12+22+32+....+1002的結果="+sum); } if(n==3)//跳7 { int changeline=0; for(int i=1;i<=100;i++) { if(i/10!=7&&i%10!=7) { System.out.printf("%-4s",i); changeline++; } if(changeline%7==0) System.out.println(); } System.out.println(); } if(n==4)//隨機數 { int randomNumber1=new Random().nextInt(10); int randomNumber2=new Random().nextInt(10); int randomNumber3=new Random().nextInt(10); int randomNumber4=new Random().nextInt(10); int randomNumber5=new Random().nextInt(10); System.out.println("---隨機數已生成---"); System.out.println(randomNumber1+" "+randomNumber2+" "+randomNumber3+" "+randomNumber4+" "+randomNumber5); } if(n==5)//素數 { int primeNumber=0; boolean prime; for(int m=101;m<200;m+=2) { prime=true; int k=(int) Math.sqrt(m); for(int i=2;i<=k;i++) if(m%i==0) { prime=false; break; } if(prime==true) { primeNumber++; System.out.printf("%-4s",m); if(primeNumber%10==0) System.out.println(); } } System.out.println(); System.out.print("101~200之間共有素數"+primeNumber+"個"); System.out.println(); } if(n==6)//四則運算 { System.out.println("---四則運算---"); Random r=new Random(); int i=1;//記錄迴圈次數 int number=0;//記錄答對的次數 while(i<=10) { int x=r.nextInt(10)+1;//隨機生成第一個數 int y=r.nextInt(10)+1;//隨機生成第二個數 double z = 0 ;//記錄正確答案 double result ;//使用者輸入答案 String[] opStrings={"+","-","*","/"}; String p=opStrings[r.nextInt(4)];//隨機生成運算子 switch(p) { case "+":z=x+y;break; case "-":z=x-y;break; case "*":z=x*y;break; case "/":z=(double)x/y;break; } System.out.print(x+p+y+"="); result=scanner.nextInt(); if(result==z) { System.out.println("你真棒 做對了呢^_^"); number++; } else { System.out.println("真是遺憾呢 繼續加油吧"); } i++;//每次迴圈加一 } if(number==10) System.out.println("你真是個小天才!!!"); System.out.println("本次測試你一共答對了"+number+"道"); } if(n==7)//猜拳遊戲 { System.out.println("歡迎來到猜拳遊戲^_^"); System.out.println("0石頭 1剪刀 2布"); System.out.println("本次規則為三局兩勝制 祝您玩的開心"); int userWin=0,userloss=0; System.out.println("開始:"); while(userWin<2&userloss<2)//只要有一方贏的次數大於等於2就結束 { int randomNumber=new Random().nextInt(3); System.out.print("請輸入您的選擇(0石頭 1剪刀 2布):"); int user; user=scanner.nextInt(); if(user==randomNumber) System.out.println("平局!!!"); else if(user-randomNumber==-1|user-randomNumber==2)//自己試著把情況列出來找規律 { System.out.println("恭喜 玩家贏了ヽ(゚∀゚)メ(゚∀゚)ノ "); userWin++; } else { System.out.println("玩家輸了(╥╯^╰╥)"); userloss++; } } System.out.println("比賽結束"); if(userloss>userWin) { System.out.println("很遺憾!!!玩家遺憾離場"); System.out.println("最終結果--玩家贏了"+userWin+"局--玩家輸了"+userloss+"局"); } else { System.out.println("讓我們恭喜玩家獲得本次比賽冠軍!!!"); System.out.println("最終結果--玩家贏了"+userWin+"局--玩家輸了"+userloss+"局"); } } System.out.print("請輸入您的操作:"); n=scanner.nextInt(); } System.out.println("————————作業已完成————————"); } }