- Python 版本shderuo.cn
Python 版本的猜数字游戏非常直观和简洁。
python
import random
def guess_number_game():
number_to_guess = random.randint(1, 100)
attempts = 0
print("猜数字游戏!我选择了一个1到100之间的数字。")
while True:
try:
guess = int(input("请输入你的猜测:"))
attempts += 1
if guess < number_to_guess:
print("太低了!")
elif guess > number_to_guess:
print("太高了!")
else:
print(f"恭喜你!答案就是{number_to_guess}。你尝试了{attempts}次。")
break
except ValueError:
print("请输入一个有效的数字。")
guess_number_game()
2. Java 版本
Java 版本需要更多的代码来设置基本的输入输出,通常使用 Scanner 类来读取用户输入。
java
import java.util.Random;
import java.util.Scanner;
public class GuessNumberGame {
public static void main(String[] args) {
Random rand = new Random();
int numberToGuess = rand.nextInt(100) + 1;
int attempts = 0;
Scanner scanner = new Scanner(System.in);
System.out.println("猜数字游戏!我选择了一个1到100之间的数字。");
while (true) {
System.out.print("请输入你的猜测:");
if (scanner.hasNextInt()) {
int guess = scanner.nextInt();
attempts++;
if (guess < numberToGuess) {
System.out.println("太低了!");
} else if (guess > numberToGuess) {
System.out.println("太高了!");
} else {
System.out.printf("恭喜你!答案就是%d。你尝试了%d次。\n", numberToGuess, attempts);
break;
}
} else {
System.out.println("请输入一个有效的数字。");
scanner.next(); // 清除无效输入
}
}
scanner.close();
}
}
3. C# 版本
C# 版本与 Java 类似,但使用 Console.ReadLine() 和 int.TryParse() 来处理输入。
csharp
using System;
class GuessNumberGame
{
static void Main()
{
Random rand = new Random();
int numberToGuess = rand.Next(1, 101);
int attempts = 0;
Console.WriteLine("猜数字游戏!我选择了一个1到100之间的数字。");
while (true)
{
Console.Write("请输入你的猜测:");
string input = Console.ReadLine();
if (int.TryParse(input, out int guess))
{
attempts++;
if (guess < numberToGuess)
{
Console.WriteLine("太低了!");
}
else if (guess > numberToGuess)
{
Console.WriteLine("太高了!");
}
else
{
Console.WriteLine($"恭喜你!答案就是{numberToGuess}。你尝试了{attempts}次。");
break;
}
}
else
{
Console.WriteLine("请输入一个有效的数字。");
}
}
}
}
这三个版本的猜数字游戏展示了在不同编程语言中如何实现相同的逻辑。每个版本都包含随机数的生成、用户输入的读取、条件判断以及基本的循环控制。由于直接在这里提供完整的、多语言的游戏代码可能会非常冗长和复杂,我将为你提供一个简单的猜数字游戏的框架,并分别用几种流行的编程语言(Python, Java, C#)来展示其核心逻辑。
- Python 版本
Python 版本的猜数字游戏非常直观和简洁。
python
import random
def guess_number_game():
number_to_guess = random.randint(1, 100)
attempts = 0
print("猜数字游戏!我选择了一个1到100之间的数字。")
while True:
try:
guess = int(input("请输入你的猜测:"))
attempts += 1
if guess < number_to_guess:
print("太低了!")
elif guess > number_to_guess:
print("太高了!")
else:
print(f"恭喜你!答案就是{number_to_guess}。你尝试了{attempts}次。")
break
except ValueError:
print("请输入一个有效的数字。")
guess_number_game()
2. Java 版本
Java 版本需要更多的代码来设置基本的输入输出,通常使用 Scanner 类来读取用户输入。
java
import java.util.Random;
import java.util.Scanner;
public class GuessNumberGame {
public static void main(String[] args) {
Random rand = new Random();
int numberToGuess = rand.nextInt(100) + 1;
int attempts = 0;
Scanner scanner = new Scanner(System.in);
System.out.println("猜数字游戏!我选择了一个1到100之间的数字。");
while (true) {
System.out.print("请输入你的猜测:");
if (scanner.hasNextInt()) {
int guess = scanner.nextInt();
attempts++;
if (guess < numberToGuess) {
System.out.println("太低了!");
} else if (guess > numberToGuess) {
System.out.println("太高了!");
} else {
System.out.printf("恭喜你!答案就是%d。你尝试了%d次。\n", numberToGuess, attempts);
break;
}
} else {
System.out.println("请输入一个有效的数字。");
scanner.next(); // 清除无效输入
}
}
scanner.close();
}
}
3. C# 版本
C# 版本与 Java 类似,但使用 Console.ReadLine() 和 int.TryParse() 来处理输入。
csharp
using System;
class GuessNumberGame
{
static void Main()
{
Random rand = new Random();
int numberToGuess = rand.Next(1, 101);
int attempts = 0;
Console.WriteLine("猜数字游戏!我选择了一个1到100之间的数字。");
while (true)
{
Console.Write("请输入你的猜测:");
string input = Console.ReadLine();
if (int.TryParse(input, out int guess))
{
attempts++;
if (guess < numberToGuess)
{
Console.WriteLine("太低了!");
}
else if (guess > numberToGuess)
{
Console.WriteLine("太高了!");
}
else
{
Console.WriteLine($"恭喜你!答案就是{numberToGuess}。你尝试了{attempts}次。");
break;
}
}
else
{
Console.WriteLine("请输入一个有效的数字。");
}
}
}
}
这三个版本的猜数字游戏展示了在不同编程语言中如何实现相同的逻辑。每个版本都包含随机数的生成、用户输入的读取、条件判断以及基本的循环控制。