我将使用三种流行的编程语言来展示这个游戏的实现:Python、JavaScript(用于Web环境),和Java(控制台应用)。cottonzone.com.cn
Python 版本
python
import random
def guess_number_game():
number_to_guess = random.randint(1, 100)
guess = None
attempts = 0
print("猜数字游戏!我想了一个1到100之间的数字。")
while guess != number_to_guess:
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}次。")
except ValueError:
print("请输入一个有效的数字!")
guess_number_game()
JavaScript 版本(HTML + JavaScript)
HTML 部分 (index.html):
html
猜数字游戏
我有一个1到100之间的数字,你能猜到是哪个吗?
猜测 JavaScript 部分 (game.js):javascript
let numberToGuess = Math.floor(Math.random() * 100) + 1;
let guess;
let attempts = 0;
function checkGuess() {
guess = parseInt(document.getElementById(‘guess’).value, 10);
attempts++;
let feedback = document.getElementById(‘feedback’);
if (isNaN(guess)) {
feedback.textContent = "请输入一个有效的数字!";
} else if (guess < numberToGuess) {
feedback.textContent = "太低了!";
} else if (guess > numberToGuess) {
feedback.textContent = "太高了!";
} else {
feedback.textContent = `恭喜你!答对了!数字是${numberToGuess}。你尝试了${attempts}次。`;
}
}
Java 版本
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;
Scanner scanner = new Scanner(System.in);
int guess;
int attempts = 0;
System.out.println("猜数字游戏!我想了一个1到100之间的数字。");
while (true) {
System.out.print("请输入你的猜测:");
if (scanner.hasNextInt()) {
guess = scanner.nextInt();
attempts++;
if (guess < numberToGuess) {
System.out.println("太低了!");
} else if (guess > numberToGuess) {
System.out.println("太高了!");
} else {
System.out.println(String.format("恭喜你!答对了!数字是%d。你尝试了%d次。", numberToGuess, attempts));
break;
}
} else {
System.out.println("请输入一个有效的数字!");
scanner.next(); // 消耗非整数输入
}
}
scanner.close();
}
}
这些示例分别展示了如何使用不同的编程语言来实现一个简单的猜数字游戏。由于直接在一个回答中完整展示一个跨多种编程语言的App代码是不现实的(因为每种语言都有其特定的语法和库),我可以为你概述一个简单App的概念,并提供每种语言中创建这个App的基础框架。
假设我们要创建一个简单的待办事项(Todo) App,该App能够添加、显示和删除待办事项。
- Flutter (Dart)
Flutter允许你使用Dart语言编写跨平台的移动和Web应用。
Dart (Flutter) 示例:
dart
import ‘package:flutter/material.dart’;
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: TodoList(),
);
}
}
class TodoList extends StatefulWidget {
@override
_TodoListState createState() => _TodoListState();
}
class _TodoListState extends State {
final List _todos = [];
void _addTodo() {
setState(() {
_todos.add(‘新待办事项’);
});
}
// 省略删除和显示逻辑
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(‘待办事项’),
),
body: ListView.builder(
itemCount: _todos.length,
itemBuilder: (context, index) {
return ListTile(
title: Text(_todos[index]),
);
},
),
floatingActionButton: FloatingActionButton(
onPressed: _addTodo,
tooltip: ‘添加待办事项’,
child: Icon(Icons.add),
),
);
}
}
2. React Native (JavaScript/TypeScript)
React Native允许你使用JavaScript或TypeScript编写跨平台的移动应用。
JavaScript (React Native) 示例:
jsx
import React, { useState } from ‘react’;
import { View, Text, Button, FlatList, StyleSheet } from ‘react-native’;
const TodoList = () => {
const [todos, setTodos] = useState([]);
const addTodo = () => {
setTodos([…todos, ‘新待办事项’]);
};
// 省略删除逻辑
return (
<FlatList
data={todos}
renderItem={({ item }) =>
keyExtractor={item => item}
/>
);
};
const styles = StyleSheet.create({
container: {
flex: 1,
padding: 24,
},
});
export default TodoList;
3. Kotlin (Android)
Kotlin是Android开发的首选语言。
Kotlin (Android) 示例 (仅展示Activity框架):
kotlin
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
class TodoActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// 这里会设置布局,通常包含RecyclerView用于显示待办事项
// 和按钮用于添加待办事项
}
// 省略添加、显示和删除待办事项的逻辑
}
注意:由于篇幅限制,这里只提供了每种语言的框架或关键部分。实际开发中,你需要根据具体需求编写完整的逻辑,包括数据存储、用户交互等。此外,每种平台都有其特定的构建和运行方式,你需要熟悉相应平台的工具和框架。guess: