import java.util.Random;
創(chuàng)新互聯(lián)公司于2013年開(kāi)始,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、成都做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元景東做網(wǎng)站,已為上家服務(wù),為景東各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話(huà):18980820575
public class Game {
public static void main(String[] args) {
System.out.println("比賽開(kāi)始");
Person p1 = new Person("劉邦", 100, 10);
Person p2 = new Person("項(xiàng)羽", 100, 10);
while (p1.getBlood() 0 p2.getBlood() 0) {
Random random = new Random();
if (random.nextInt(100) 50) {
p1.beat(p2);
p2.beat(p1);
} else {
p2.beat(p1);
p1.beat(p2);
}
}
p1.printState();
p2.printState();
System.out.println("game over!");
}
}
class Person {
private int blood;// 初始血量
private int range;// 掉血范圍
private String name;// 姓名
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getRange() {
return range;
}
public void setRange(int range) {
this.range = range;
}
public int getBlood() {
return blood;
}
public void setBlood(int blood) {
this.blood = blood;
}
// 構(gòu)造函數(shù)
public Person(String name, int blood, int range) {
this.name = name;
this.blood = blood;
this.range = range;
}
// 擊打
public void beat(Person person) {
int bleeding = person.hurt();
System.out
.println(String.format("%s打了%s一耳光,%s流了%s滴血。", this.name, person.getName(), person.getName(), bleeding));
}
// 被打,受傷
public int hurt() {
Random random = new Random();
int bleeding = random.nextInt(this.range) + 1;
if (bleeding this.blood) {
bleeding = this.blood;
}
this.blood -= bleeding;
return bleeding;
}
// 輸出狀態(tài)
public void printState() {
if (this.blood == 0) {
System.out.println(String.format("%s被打死了", this.name));
} else {
System.out.println(String.format("%s還剩%s滴血", this.name, this.blood));
}
}
}
結(jié)果(隨機(jī)):
比賽開(kāi)始
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了6滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了4滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了8滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了2滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了9滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了7滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了8滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了9滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了1滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了10滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了2滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了7滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了7滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了2滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了1滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了7滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了10滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了9滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了5滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了1滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了5滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了8滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了9滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了6滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了5滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了6滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了5滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了6滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了4滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了7滴血。
劉邦打了項(xiàng)羽一耳光,項(xiàng)羽流了4滴血。
項(xiàng)羽打了劉邦一耳光,劉邦流了6滴血。
劉邦被打死了
項(xiàng)羽還剩14滴血
game over!
全手寫(xiě),望采納,謝謝!
如果就是把字母用ASIIN碼表示然后計(jì)算吧。例如System.out.println((int)('A'));會(huì)輸出65;(可能是65,我記不清了,不好意思,你可以查一下ASIN碼表)
import java.util.Scanner;
//引入包
public class Exercise9_31 {
public static void main(String[] args) {
String[] words = { "write", "program", "that", "receive", "positive" };
//創(chuàng)建一個(gè)string 數(shù)組
char anotherGame;
Scanner input = new Scanner(System.in);
//新建一個(gè)Scanner對(duì)象 用于讀取用戶(hù)輸入
do {
//do while loop,用戶(hù)輸入Y就一直執(zhí)行
int index = (int) (Math.random() * words.length);
//生成0-4之間的一個(gè)隨機(jī)數(shù)
String hiddenWord = words[index];
//根據(jù)生成的隨機(jī)數(shù) 選定hiddenword也就是你要猜的單詞
StringBuilder guessedWord = new StringBuilder();
//新建一個(gè)StringBuilder對(duì)象 用來(lái)猜單詞
for (int i = 0; i hiddenWord.length(); i++)
guessedWord.append('*');
//先將要猜的單詞以全部星號(hào)形式顯示
int numberOfCorrectLettersGuessed = 0, numberOfMisses = 0;
//兩個(gè)整數(shù) 記錄猜對(duì)的字母數(shù) 和猜錯(cuò)的字母數(shù)
while (numberOfCorrectLettersGuessed hiddenWord.length()) {
//只要還沒(méi)才出來(lái) 就一直執(zhí)行
System.out.print("(Guess) Enter a letter in word " + guessedWord
+ " ");
//打印消息 讓用戶(hù)輸入
String s = input.nextLine();
char letter = s.charAt(0);
//這兩句讀取用戶(hù)輸入的字母
if (guessedWord.indexOf(letter + "") = 0) {
//如果這個(gè)字母已經(jīng)顯示了,已經(jīng)猜過(guò)并且出現(xiàn)在要猜的單詞里面(沒(méi)有出現(xiàn)的話(huà) index會(huì)是-1)
System.out.println("\t" + letter + " is already in the word");
} else if (hiddenWord.indexOf(letter) 0) {
//如果單詞里面沒(méi)這個(gè)單詞
System.out.println("\t" + letter + " is not in the word");
numberOfMisses++;
//猜錯(cuò)的數(shù)加一
} else {
int k = hiddenWord.indexOf(letter);
//最后一種情況 就是這個(gè)字母猜中了某個(gè)位置
while (k = 0) {
guessedWord.setCharAt(k, letter);
//把這個(gè)字母替代星號(hào) 放到單詞中
numberOfCorrectLettersGuessed++;
//猜對(duì)的字母加一
k = hiddenWord.indexOf(letter, k + 1);
}
}
}
System.out.println("The word is " + hiddenWord + ". You missed "
+ numberOfMisses + ((numberOfMisses = 1) ? " time" : " times"));
System.out.print("Do you want to guess for another word? Enter y or n ");
anotherGame = input.nextLine().charAt(0);
} while (anotherGame == 'y');
}
}