猜数字游戏的两个JAVA程序代码

合集下载

猜数字游戏源代码

猜数字游戏源代码

猜数字游戏本案例知识要点●Visual C++ 6.0下创建Win32 Console Application并运行的方法●C++程序中类的定义和实现●C++程序中类文件的引用及类的实例化一、案例需求1.案例描述由计算机产生0到99的随机数,游戏参加者将猜到的数字从键盘输入,计算机对猜数结果进行判断直到猜出正确结果。

2.案例效果图猜数字游戏运行效果如图2-1所示。

3.功能要求(1)所猜0到99的目标数字由计算随机产生。

(2)0到99的随机数的产生、所猜数字和目标数字的比较等过程以类的形式实现。

(3)若游戏参加者所猜数字正确,则提示所猜总次数;若猜数错误,则提示所猜数字比目标数字大还是小。

二、案例分析本案例中设计了一个Guess类,实现产生随机数、进行参加游戏者输入数字与目标数字的比较、计算猜数次数。

主程序中通过类的实例化实现猜数过程。

三、案例设计为了实现猜数过程,设计Guess类,结构如图2-2所示。

●数据成员int Value产生的0到99间的目标数字。

int CompareTimes为游戏者已猜次数。

●函数成员Guess()构造函数,用来产生随机目标数字。

int Compare(int InputValue)用来判断游戏者所猜数字是否正确,其参数InputValue为游戏者所猜数字。

int GetCompareTimes()用来获得游戏者已猜次数。

五、案例实现猜数字游戏源程序代码如下所示。

************************************* // * Guess.h 类声明头文件************************************* #1. #include <time.h>#2. class Guess#3. {#4. private:#5.int Value; //计算机产生的目标数字#6. int CompareTimes; //所猜次数#7. public:#8. Guess(); //构造函数的声明#9. int Compare(int InputValue); #10. int GetCompareTimes();#11. };#12. Guess:: Guess ()//构造函数的实现#13. {#14. CompareTimes=0; //猜数次数置零#15. srand((unsigned)time(NULL)); //产生随机数种子#16. Value=rand()%100;//产生0~99的随机数#17. }#18.int Guess::Compare(int InputValue)//比较猜数是否正确#19. {#20. CompareTimes++; //所猜次数加1 #21. return InputValue-Value;//比较所猜数字和目标数字是否相同,相同//返回0#22. }#23. int Guess::GetCompareTimes()//获得已猜次数#24. {#25. return CompareTimes;#26. }//************************************* //* GuessNumber.cpp 源文件************************************* #1. #include <iostream>#2. #include "Guess.h"//将已定义的类文件包含到主程序文件中#3. using namespace std;#4. int main()#5. {#6. int InputValue;#7.cout<<"\n** 欢迎使用本程序**\n"; #8. for(;;)#9. {#10. char Select;#11. Guess guessobj;//实例化Guess类#12. cout<<"我已经想好数字啦(0~99),请猜吧!\n";#13. for(;;)#14. {#15. int CompareResult; #16. cout<<"\n我想的是:";#17. cin>>InputValue;//获得游戏者输入的所猜数字#18. CompareResult=pare (InputValue);//判断游戏者所猜数字是否正确#19. if(CompareResult==0) //正确#20. {#21. int GuessTimes=guessobj.GetCompareTimes(); #22. cout<<"\n恭喜您,猜对啦!"<<endl <<"您一共猜了"<<GuessTimes<<"次"<<endl;#23. break;#24. }#25. else if(CompareResult>0)#26. {#27. cout<<"\n对不起,您猜的数大啦!\n";#28. }#29. else#30. {#31. cout<<"\n对不起,您猜的数小啦!\n";#32. }#33. }#34. cout<<"\n您还想再玩吗?('n'=No,Others=Yes)\n";#35. cin>>Select;#36. cout<<'\n';#37. if(Select=='n'||Select=='N')#38. {#39. break;#40. }#41. }#42. cout<<"********** 感谢您的使用! **********\n";#43. return 0;#44. }六、案例总结与提高1.案例总结(1)本案例的重点是介绍Visual C++ 6.0下创建并运行一个C++Win32控制台应用程序的基本过程。

Python小游戏代码

Python小游戏代码

Python5个小游戏代码1. 猜数字游戏import randomdef guess_number():random_number = random.randint(1, 100)attempts = 0while True:user_guess = int(input("请输入一个1到100之间的数字:"))attempts += 1if user_guess > random_number:print("太大了,请再试一次!")elif user_guess < random_number:print("太小了,请再试一次!")else:print(f"恭喜你,猜对了!你用了{attempts}次尝试。

")breakguess_number()这个猜数字游戏的规则很简单,程序随机生成一个1到100之间的数字,然后玩家通过输入猜测的数字来与随机数进行比较。

如果猜测的数字大于或小于随机数,程序会给出相应的提示。

直到玩家猜对为止,程序会显示恭喜消息,并告诉玩家猜对所用的尝试次数。

2. 石头、剪刀、布游戏import randomdef rock_paper_scissors():choices = ['石头', '剪刀', '布']while True:user_choice = input("请选择(石头、剪刀、布):")if user_choice not in choices:print("无效的选择,请重新输入!")continuecomputer_choice = random.choice(choices)print(f"你选择了:{user_choice}")print(f"电脑选择了:{computer_choice}")if user_choice == computer_choice:print("平局!")elif (user_choice == '石头' and computer_choice == '剪刀') or \(user_choice == '剪刀' and computer_choice == '布') or \(user_choice == '布' and computer_choice == '石头'):print("恭喜你,你赢了!")else:print("很遗憾,你输了!")play_again = input("再玩一局?(是/否)")if play_again.lower() != "是" and play_again.lower() != "yes":print("游戏结束。

猜数字实验报告

猜数字实验报告

《程序设计课程设计》题目:《猜数字》游戏物联网工程学院计算机科学与技术专业学号:学生姓名:孙文佳班级:计科1305成绩:设计思路:猜数字是一个比较益智的游戏,游戏规则也很简单,真正自己实现游戏的运行也并不是什么难事,下面就主要讲讲自己的设计思路。

大的框架是把函数封装在类中,这样就可以应用所学的类。

首先是随机产生一个4位整数,根据要求,最高位不能为0,且每一位的数不能相同。

让系统随机产生4个个位数,这里就用到srand(time(NULL))获取系统的时间作为种子,防止每次运行的结果都是相同的。

time()函数包含在头文件time.h中。

用一个for语句,依次产生这四个数,因为要求最高位不能为0,这里就用一个while语句重新生成a[0],然后就是每位上的数不得相同,依然用while语句解决这个问题。

接着是提示用户输入一个四位数,把这个四位数各位上的数保存在数组b[4]中,然后就是比较b[4]和a[4],计算数字正确且位置正确的数的个数,还有数字正确但位置错误的数的个数(这应该是游戏的额核心),其实这一步也不难,就是利用一个for语句逐个比较b[j]与a[i],如果b[j]等于a[i],wrong++,然后判断i是否等于j,是的话right++,wrong--,如果猜了8次还不正确的话,提示用户是否继续,这里用一个switch语句就行了。

如果猜了15次还不正确的话,提示用户游戏失败,是否重新玩一局。

在此之前把这次的记录写入txt文件中,这里就用到c++的输入输出流,对于数据的保存只要学会格式,依葫芦画瓢即可。

还有就是数据的读取,在游戏结束时输出上一局的结果。

程序代码:#include<iostream>#include<time.h>#include<windows.h>#include<fstream>using namespace std;class game{public:void showfunction();void showfunction2();void target();void start();void tips();void selection();private:int a[4];};void gotoxy(int x, int y){HANDLE hCon;hCon = GetStdHandle(STD_OUTPUT_HANDLE);COORD setps;setps.X = x;setps.Y = y;SetConsoleCursorPosition(hCon,setps);}void data_load(){ifstream e;int count=0;int b[4],right,wrong;e.open("Data.txt",ios::binary|ios::in);if(e){e.seekg( (count++) * sizeof(int),ios::beg);e.read( (char *)&right,sizeof(int));e.seekg( (count++) * sizeof(int),ios::beg);e.read( (char *)&("A"),sizeof(int));e.seekg( (count++) * sizeof(int),ios::beg);e.read( (char *)&wrong,sizeof(sizeof(int)));e.seekg( (count++) * sizeof(int),ios::beg);e.read( (char *)&("B"),sizeof(int));cout<<"上一局结果是:"<<right<<"A"<<wrong<<"B"<<endl;}}void quit(){gotoxy(0,10);cout<<" "<<"* * * * * * * * * * * * * * * * * * * * * * *"<<endl;cout<<" "<<"* 正在退出游戏,请稍后(loading......) *"<<endl;cout<<" "<<"* * * * * * * * * * * * * * * * * * * * * * *"<<endl;Sleep(1500);system("cls");}void game::selection(){int n;cout<<" "<<"** * * * * * * * * * * * * **"<<endl;cout<<" "<<"*1:返回主菜单。

简单的java代码例子

简单的java代码例子

简单的java代码例子1. 使用Java实现一个简单的计算器,可以进行加减乘除运算。

```javaimport java.util.Scanner;public class Calculator {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.print("请输入第一个数:");double num1 = scanner.nextDouble();System.out.print("请输入运算符(+、-、*、/):");String operator = scanner.next();System.out.print("请输入第二个数:");double num2 = scanner.nextDouble();double result = 0;switch (operator) {case "+":result = num1 + num2;break;case "-":result = num1 - num2;break;case "*":result = num1 * num2;break;case "/":result = num1 / num2;break;default:System.out.println("输入的运算符不正确!");break;}System.out.println("计算结果为:" + result);}}```2. 使用Java实现一个简单的猜数字游戏,随机生成一个1-100之间的整数,让用户猜,直到猜中为止。

```javaimport java.util.Random;import java.util.Scanner;public class GuessNumber {public static void main(String[] args) {Random random = new Random();int number = random.nextInt(100) + 1;Scanner scanner = new Scanner(System.in);int guess;do {System.out.print("请输入你猜的数字(1-100):");guess = scanner.nextInt();if (guess > number) {System.out.println("猜大了!");} else if (guess < number) {System.out.println("猜小了!");}} while (guess != number);System.out.println("恭喜你,猜对了!");}}```3. 使用Java实现一个简单的学生信息管理系统,可以添加、删除、修改、查询学生信息。

猜数字游戏java源代码

猜数字游戏java源代码

import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.util.Random;import javax.swing.JButton;import javax.swing.JLabel;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.JTextField;import javax.swing.WindowConstants;import java.awt.FlowLayout;public class cszyx extends javax.swing.JFrame {private JLabel jLabel1;private JTextField jTextField1;private JButton jButton1;private int number = 0;private int counter = 0;long startTime = System.currentTimeMillis();long endTime;/***新建一个随机数产生器,然后生成一个1到100之间的整数*/public cszyx() {super ("欢迎来到猜数字游戏");initChuankou();Random random = new Random();number = random.nextInt(100); // 产生一个1-100间的随机数}/***初始化窗口组件*/private void initChuankou() {setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);// 窗口关闭时销毁窗口getContentPane().setLayout(null);// 设置窗口布局为绝对布局JFrame frame = new JFrame("Test Buttons");frame.setLayout(new FlowLayout());jLabel1 = new JLabel();getContentPane().add(jLabel1);jLabel1.setText("<html>欢迎进入有趣的猜数字游戏!请输入1~100中的任意一个数:</html>");jLabel1.setBounds(2, 0, 200, 50);// 设置标签位置jTextField1 = new JTextField();getContentPane().add(jTextField1);jTextField1.setBounds(50, 60, 112, 28);jTextField1.addKeyListener(new KeyAdapter() {// 文本框添加键盘按键监听-监听回车键public void keyPressed(KeyEvent evt) {jTextField1KeyPressed(evt);}});jButton1 = new JButton();getContentPane().add(jButton1);jButton1.setText("确定");jButton1.setBounds(70, 110, 60, 28);jButton1.addActionListener(new ActionListener() {// 按钮添加监听public void actionPerformed(ActionEvent evt) {jButton1ActionPerformed(evt);// 按钮被点击时执行该方法}});pack();this.setSize(250, 200); // 设置窗口大小setLocationRelativeTo(null); // 设置窗口在显示器居中显示} catch (Exception e) {e.printStackTrace();}setVisible(true);}private void jButton1ActionPerformed(ActionEvent evt) {int guess = 0; // 记录玩家所猜测的数字counter++; // 计数器增加一。

用C++编程语言编写猜数字游戏示例

用C++编程语言编写猜数字游戏示例

用C++编程语言编写猜数字游戏示例文章标题:用C++编程语言编写猜数字游戏示例介绍内容:猜数字游戏是一种常见且富有乐趣的游戏,编程语言可以帮助我们实现一个交互式的猜数字游戏程序。

本文将介绍如何使用C++编程语言编写一个简单而有趣的猜数字游戏示例。

首先,我们需要包含C++标准库中的iostream和cstdlib头文件,以便使用输入输出和随机数生成的函数。

接下来,我们可以定义一个范围内的随机数作为答案,然后让玩家进行数字的猜测。

下面是一个示例代码,用于实现一个猜数字游戏:```cpp#include <iostream>#include <cstdlib>#include <ctime>int main() {srand(time(0)); // 根据当前时间设置随机种子int answer = rand() % 100 + 1; // 生成1到100之间的随机数int guess;int attempts = 0;std::cout << "欢迎来到猜数字游戏!\n";std::cout << "我已经想好了一个1到100之间的数字,你来猜猜看吧!\n";do {std::cout << "请输入你的猜测:";std::cin >> guess;if (guess < answer) {std::cout << "猜小了,请再试一次。

\n";} else if (guess > answer) {std::cout << "猜大了,请再试一次。

\n";}attempts++;} while (guess != answer);std::cout << "恭喜你猜对了!答案是" << answer << "。

java猜数字游戏代码

java猜数字游戏代码

java猜数字游戏代码qq:7编写程序,项目名与类名均为GuessNumberGame。

每次游戏程序随机产生一个0-9之间的整数,要求玩家输入自己猜的数字,并对用户输入数字进行检查,进行如下提示:n 如果用户猜对了,则提示:恭喜你,猜对了。

结束本次游戏。

n 如果用户猜错了,则提示:你猜的数字太(大或小)了。

要求用户继续猜。

如果连续3次没有猜对,则提示:游戏失败。

一次游戏结束时,提示用户是否继续新的游戏,果用户选择继续,则开始新一次游戏,否则输出:你共进行了XXX次游戏,成功XXX次,失败XXX次。

然后结束程序运行。

import java.util.Scanner;public class GuessNumberGame {public static void main(String[] args) {System.out.println(欢迎你试玩猜数字游戏:);System.out.println(请按1开始2退出);Scanner s = new Scanner(System.in);int ch;int win = 0;int lose = 0;int dh = 0;int fg;ch = s.nextInt();switch (ch) {case 1:fg = Guess(dh);if (fg == 1) {win++;}if (fg == 2) {lose++;}System.out.println(请按1继续2退出); ch = s.nextInt();while (ch != 2) {fg = Guess(dh);if (fg == 1) {win++;}if (fg == 2) {lose++;}System.out.println(请按1继续2退出); ch = s.nextInt();}break;case 2:break;default:break;}System.out.printf(你共进行%d次游戏猜对%d次猜错%d次\n,win+lose,win,lose);if (win lose win != win + lose) {System.out.println(拜拜欢迎下次再玩O(∩_∩)O哈哈~此次游戏成绩总评为良好);}if (win lose lose != win + lose) {System.out.println(拜拜欢迎下次再玩O(∩_∩)O哈哈~此次游戏成绩总评为中等);}if (win == win + lose) {System.out.println(拜拜欢迎下次再玩o(≧v≦)o~~好棒此次游戏成绩总评为优秀);}if (lose == win + lose) {System.out.println(拜拜欢迎下次再玩(+﹏+)~狂晕此次游戏成绩总评为特差);}}public static int Guess(int dh) {System.out.println(﹡﹡﹡﹡﹡﹡﹡﹡﹡﹡﹡﹡﹡﹡);Scanner ca = new Scanner(System.in);int max;int j;int i = 0;int fg;max =(int) (Math.random() * 10);do {System.out.println(请您输入数字:);j = ca.nextInt();if (j max) {System.out.println(太小哦);}if (j max) { System.out.println(太大哦);}if (j == max) { break;}i++;} while (i 3);switch (i) {case 1:System.out.println(您猜对了);fg = 1;break;case 2:System.out.println(您猜对了);fg = 1;break;case 3:if (j == max) {System.out.println(您猜对了);fg = 1;} else {System.out.println(对不起你没猜对); fg = 2;}break;default:System.out.println(对不起你没猜对); fg = 2;break;}return fg;}}。

猜数字游戏的两个Java程序代码

猜数字游戏的两个Java程序代码
for(inti=0;i<4;i++){
str+=putIn[i];
}
str+= " " + right;
returnstr;
}
public static voidPrintHistory(String[] history){
for(inti=0;i<history.length;i++){
if("".compareTo(history[0])==0) {System.out.println("还没有输入内容"); continue;}
if("H".compareTo(str)==0 || "h".compareTo(str)==0) {PrintHistory(history);}
}
public static StringRemarkHistory(int[]putIn, String right){
Stringstr= "";
String right = ""; //以字符串形式保存的比较结果
//计算出多少个"A"
for(inti=0;i<4;i++){
if(guess[i]==putIn[i])rightA++;
}
//计算出多少个"B"
for(inti=0;i<4;i++){
for(intj=0; j<4; j++){
}System.out.println();
int[]putIn;//定义用户输入

c语言入门猜数字游戏(解释每行代码)

c语言入门猜数字游戏(解释每行代码)

c语言入门猜数字游戏(解释每行代码)这是一个“猜数字”的小游戏,玩家需要猜出随机生成的数字。

#include <stdio.h> // 1. 引入标准输入输出库#include <stdlib.h> // 2. 引入标准库#include <time.h> // 3. 引入时间相关库int main() { // 4. 主函数开始int num,guess; // 5. 定义两个整型变量: num和guesssrand(time(NULL)); // 6. 初始化随机数种子num = rand() % 100 + 1; // 7. 生成1到100之间的随机整数printf("请猜一个1~100之间的整数:\n"); // 8. 提示玩家输入do { // 9. 进入循环体scanf("%d", &guess); // 10. 接收玩家的输入if (guess > num) { // 11. 判断玩家猜的数是否太大printf("你猜的数字太大了!\n继续猜:\n");} else if (guess < num) { // 12. 判断玩家猜的数是否太小printf("你猜的数字太小了!\n继续猜:\n");}} while (guess != num); // 13. 如果猜错了就继续循环printf("恭喜你,猜对了!\n"); // 14. 玩家猜对了,输出结果return 0; // 15. 返回0表示程序结束}各行代码解释如下:1. 引入`stdio.h`库,提供了输入和输出的函数和符号常量。

2. 引入`stdlib.h`库,提供一些标准函数功能,如内存分配等。

3. 引入`time.h`库,提供了处理时间的函数。

4. `int main()`是程序的起点,主函数开始执行。

JavaScript实现猜数字游戏

JavaScript实现猜数字游戏

JavaScript实现猜数字游戏本博⽂源于js基础,旨在讨论如何实现猜随机数的⼩游戏。

题⽬重现随机⽣成⼀个[0,100]区间的数字,不断重复⽤户输⼊,直到⽤户输⼊对为⽌。

实现原理先⽤Math.random⽣成⼀个数字,欲得到[a,b]区间的随机整数,可采⽤以下公式:parseInt(Math.random()*(b-a+1))+a;举个例⼦:得到[3,8]parseInt(Math.random()*6)+3;然后循环⾥,多分⽀if判断⼀下,给⽤户提⽰⼀下测试⽤例玩的时候⽤⼆分法玩,⼆分法就是⼀次砍⼀半,⽐如先上来猜50,然后根据反映,太⼤那就25,太⼩那就75.以此类推附上代码<!DOCTYPE html><html><head><meta charset="utf-8"><title></title><script>var n = parseInt(Math.random()*101)+0;while(true) {var a = Number(prompt("请输⼊数字"));if(a>n){alert("你输⼊数字太⼤");}else if(a<n) {alert("你输⼊的数字太⼩");}else {alert("是的,就是这个数字");break;}}</script></head><body></body></html>以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

java猜数字游戏代码

java猜数字游戏代码
} } */ import java.util.*; public class caicai{
public static void main(String[]args){ Scanner in=new Scanner(System.in); Random xx=new Random(); int com=xx.nextInt(100); int u; do{ System.out.println("电脑将随机产生一个数,它在 0-99 之间,请尝试猜出:"); u=in.nextInt(); if(u>com){ System.out.println("大了"); }else{ System.out.println("小了"); } }while(u!=com); System.out.println("恭喜你猜对了,这个数字是"+com);
public class caicai{ public static void main(String[]args){ Scanner in=new Scanner(System.in); System.out.println("接下来,电脑将随机产生一个数,它在 0-99 之间,请尝试猜出:
"); int num=(int)(Math.random()*100); int u=in.nextInt(); int u2; if(u==num){ System.out.println("是的,你猜对了,电脑产生的随机数是"+u); }else{ do{ if(u>num){ 了!请再次输入:"); }else{ System.out.println("你猜的数字小了!请再次输入:"); } u2=in.nextInt(); u=u2; }while(u2!=num); System.out.println("是的,你猜对了,电脑产生的随机数是"+num); }

java实现猜数字小游戏(Swing版)

java实现猜数字小游戏(Swing版)

java实现猜数字⼩游戏(Swing版)2008年的时候,在学习Java how to program第五版的时候,写过⼀个猜数字⼩游戏,是⽤Applet写的;现在,我要⽤Swing重写这个⼩游戏,同时,加⼊⼀些新功能,如:背景颜⾊(红⾊表⽰偏⾼,蓝⾊表⽰偏低)、弹框、字体控制、布局管理器的使⽤。

运⾏截屏:代码如下://Guess a number between 1 and 1000//Java how to program, 10/e, Exercise 12.14//by pandenghuang@/* (Guess-the-Number Game) Write an application that plays “guess the number” as follows:Your application chooses the number to be guessed by selecting an integer at random in the range1–1000. The application then displays the following in a label:I have a number between 1 and 1000. Can you guess my number?Please enter your first guess.A JTextField should be used to input the guess. As each guess is input, the background colorshould change to either red or blue. Red indicates that the user is getting “warmer,” and blue,“colder.” A JLabel should display either "Too High" or "Too Low" to help the user zero in. Whenthe user gets the correct answer, "Correct!" should be displayed, and the JTextField used forinput should be changed to be uneditable. A JButton should be provided to allow the user to playthe game again. When the JButton is clicked, a new random number should be generated and theinput JTextField changed to be editable.*/import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.awt.BorderLayout;import static java.awt.BorderLayout.*;public class NumberGuessGame2016 extends JFrame {int number,random,counter=0;JLabel welcomeJLabel;JLabel hintJLabel;JTextField guessField;JPanel panel;//显⽰不同背景⾊public NumberGuessGame2016() {super("猜数字⼩游戏游戏");setLayout(new BorderLayout());panel=new JPanel();panel.setBackground(Color.WHITE);welcomeJLabel= new JLabel("游戏规则:已随机⽣成⼀个1到1000的整数,您能在10次以内猜出来吗?"); welcomeJLabel.setFont(new Font("Simsun",1,10));add(welcomeJLabel,NORTH);guessField=new JTextField(20);guessField.setFont(new Font("Arial",1,10));panel.add(guessField);add(panel); //默认添加到中间hintJLabel= new JLabel("");add(hintJLabel,SOUTH);hintJLabel.setFont(new Font("Simsun",1,10));TextFieldHandler handler=new TextFieldHandler();guessField.addActionListener(handler);random=(int)(1+1000*Math.random());}private class TextFieldHandler implements ActionListener{// process textfield events@Overridepublic void actionPerformed (ActionEvent event){while(true){number=Integer.parseInt(guessField.getText());while(number!=random){number=Integer.parseInt(guessField.getText());if(number>random){hintJLabel.setText("猜⾼了,不要放弃哦↖(^ω^)↗。

AndroidStudio——猜数字游戏(Activityintent相关)

AndroidStudio——猜数字游戏(Activityintent相关)

AndroidStudio——猜数字游戏(Activityintent相关)这次实验主要是涉及到以下知识点:1.Intent使⽤传值(当前Activity)Intent intent = new Intent(this,OtherActivity.class);Intent.putExtra(“key”,“value”);startActivity(intent);取值(⽬标Activity)Intent intent = getIntent();String name = intent .getStringExtra(“key”);2.开始结束ActivitystartActivity();Finish();那个可以从其他Activity传值给mainActivity的⽅法还没⽤过就不列了QAQ3.计时器我想的很简单QAQ,没有⽤到复杂的,就是在程序开始时获取当前时间,每次猜测结果后获取⼀下时间,两个⼀减就实现了计时。

⽹上查了下可以⽤核⼼类 Timer 和 TimerTask实现,有兴趣的可以百度其⽤法。

最终实现的效果下⾯是代码:⾸先,activity_main.xml,主要⽤于⽤户输⼊所猜测的数字<TextViewandroid:id="@+id/txt"style="?android:attr/borderlessButtonStyle"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_weight="1"android:text="@string/txt"></TextView><EditTextandroid:id="@+id/input"style="?android:attr/borderlessButtonStyle"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_weight="1"android:autofillHints=""android:inputType="date|textUri|textShortMessage|textLongMessage|textAutoCorrect|numberSigned|textVisiblePassword|textWebEditText|textMultiLine|textNoSuggestions|textFilter|number|datetime|textWebEmailAddress|textPersonName|text tools:targetApi="o"></EditText><Buttonandroid:id="@+id/submit"android:layout_width="0dp"android:layout_height="wrap_content"android:layout_weight="1"android:text="@string/button"></Button>activity_second.xml代码,主要⽤于显⽰⽤户猜测结果,所⽤时间及次数<LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal" ><TextViewandroid:id="@+id/result"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_weight="1"style="?android:attr/borderlessButtonStyle"android:text="@string/txt1"></TextView><EditTextandroid:id="@+id/et_result"style="?android:attr/borderlessButtonStyle"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_weight="1"android:autofillHints=""android:inputType="date|textUri|textShortMessage|textLongMessage|textAutoCorrect|numberSigned|textVisiblePassword|textWebEditText|textMultiLine|textNoSuggestions|textFilter|number|datetime|textWebEmailAddress|textPersonName|te </LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal" ><TextViewandroid:id="@+id/time"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_weight="1"style="?android:attr/borderlessButtonStyle"android:text="@string/txt2"></TextView><EditTextandroid:id="@+id/et_time"style="?android:attr/borderlessButtonStyle"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_weight="1"android:inputType="date|textUri|textShortMessage|textLongMessage|textAutoCorrect|numberSigned|textVisiblePassword|textWebEditText|textMultiLine|textNoSuggestions|textFilter|number|datetime|textWebEmailAddress|textPersonName|teandroid:autofillHints="" tools:targetApi="o"></EditText></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal" ><TextViewandroid:id="@+id/times"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_weight="1"style="?android:attr/borderlessButtonStyle"android:text="@string/txt3"></TextView><EditTextandroid:id="@+id/et_times"style="?android:attr/borderlessButtonStyle"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_weight="1"android:inputType="date|textUri|textShortMessage|textLongMessage|textAutoCorrect|numberSigned|textVisiblePassword|textWebEditText|textMultiLine|textNoSuggestions|textFilter|number|datetime|textWebEmailAddress|textPersonName|te android:autofillHints="" tools:targetApi="o"></EditText></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal" ><Buttonandroid:id="@+id/back"android:layout_width="0dp"android:layout_height="wrap_content"android:layout_weight="1"style="?android:attr/borderlessButtonStyle"android:text="@string/button1"></Button></LinearLayout>ActivityMain.java代码主要实现将第⼀个页⾯的要猜测的数字,⽤户猜测的数字,⽤户第⼀次猜测时所⽤时间,以及点击提交的次数(⽤于统计猜测次数)通过intent传给第⼆个activityprivate Button submit;private EditText input;private int hour,minute,second,count=0;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(yout.activity_main);this.submit = (Button)findViewById(R.id.submit);this.input = (EditText)findViewById(R.id.input);Calendar calendar = Calendar.getInstance();//⼩时hour = calendar.get(Calendar.HOUR_OF_DAY);//分钟minute = calendar.get(Calendar.MINUTE);//秒second = calendar.get(Calendar.SECOND);final String target = Integer.toString((int)((Math.random()*9)+1));submit.setOnClickListener(new View.OnClickListener() {@RequiresApi(api = Build.VERSION_CODES.N)@Overridepublic void onClick(View v) {count++;Intent intent = new Intent();intent.setClass(MainActivity.this,SecondActivity.class);intent.putExtra("target",target);intent.putExtra("num",input.getText().toString());intent.putExtra("hour",Integer.toString(hour));intent.putExtra("minute",Integer.toString(minute));intent.putExtra("second",Integer.toString(second));intent.putExtra("count",Integer.toString(count));startActivity(intent);}});}SecondActivity.java主要是通过Intent接收第⼀个activity所传数据,进⾏处理后,得到猜测结果,猜测所⽤时间,猜测次数,将其显⽰出来private EditText et_result,et_time,et_times;private Button back;@RequiresApi(api = Build.VERSION_CODES.N)@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(yout.activity_second);this.et_result = (EditText)findViewById(R.id.et_result);this.et_time = (EditText)findViewById(R.id.et_time);this.et_times= (EditText)findViewById(R.id.et_times);this.back = (Button)findViewById(R.id.back);Intent intent = getIntent();int target =Integer.parseInt(intent.getStringExtra("target"));int num = Integer.parseInt(intent.getStringExtra("num"));int hour = Integer.parseInt(intent.getStringExtra("hour"));int minute = Integer.parseInt(intent.getStringExtra("minute"));int second = Integer.parseInt(intent.getStringExtra("second"));int count = Integer.parseInt(intent.getStringExtra("count"));//当前时间Calendar calendar = Calendar.getInstance();//⼩时int hour1 = calendar.get(Calendar.HOUR_OF_DAY);//分钟int minute1 = calendar.get(Calendar.MINUTE);//秒int second1 = calendar.get(Calendar.SECOND);int secondfinal = 0;//记录显⽰的秒数secondfinal = (hour1-hour)*3600+(minute1-minute)*60+second1-second;et_time.setText(Integer.toString(secondfinal)+"ms");et_times.setText(Integer.toString(count)+"次");if (target > num ){et_result.setText("猜⼩啦!");}else if(target == num){et_result.setText("恭喜你猜对啦~~");}else{et_result.setText("猜⼤啦!");}back.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {finish();}});}AndroidManifest.xml主要不要忘记注册activity,除了mainactivity,其他都需要注册,不然会出错<applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:roundIcon="@mipmap/ic_launcher_round"android:supportsRtl="true"android:theme="@style/AppTheme"><activity android:name=".SecondActivity" ><intent-filter><action android:name="android.intent.action.Second" /><category android:name="UNCHER" /></intent-filter></activity><activity android:name=".MainActivity"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="UNCHER" /></intent-filter></activity></application>本次实验依旧有很多BUG(QAQ什么时候可以拥有⼀个⽆BUG的⾄少⾃⼰发现不了BUG的应⽤啊~)BUG如下:(1)整个程序⼀经开始就只会有产⽣⼀个猜测的数进⾏⼀轮猜测。

Java窗口的猜数字游戏

Java窗口的猜数字游戏

Java窗⼝的猜数字游戏Java窗⼝的猜数字游戏1 2 3 4 5 6 7 8 ...最近学习java看到了猜数字游戏,想⾃⼰照着写,结果找的代码有问题,就想着⾃⼰能模仿改写⼀个。

最开始找的代码⬇import javax.swing.JOptionPane;public class GuessGame{public static void main(String[] args){boolean guessflag = false;int realnumber = (int)(Math.random()*100+1);int guessnumber = 0;int count = 0;while(guessflag != true && count < 3 ){guessnumber = Integer.parseInt(JOptionPane.showInputDialog("请输⼊⼀个整数进⾏试猜,注意允许竞猜的最⼤次数是3次!",new Integer(guessnumber))); if(guessnumber > realnumber){count++;System.out.println("您输⼊的数字太⼤了,请重新猜!");}else if(guessnumber < realnumber){count++;System.out.println("您输⼊的数字太⼩了,请重新猜!");}else{count++;System.out.println("恭喜您猜对了,您共猜了 "+count+" 次。

" );}}if(guessflag != true && count == 3) System.out.println("您共猜了 "+count+" 次,已经超过了允许竞猜的最⼤次数!游戏结束!");}}我的java版本是14的,运⾏结果提⽰说Swing的JOptionPane过时了。

1-100以内猜数游戏

1-100以内猜数游戏

*******************实践教学*******************软件学院2014年春季学期Java课程设计说明书题目:专业班级:姓名:学号:指导教师:成绩:1-100以内猜数游戏刘正翔11700215摘要本设计将一个1-100以内的猜数字游戏作为研究对象。

设计出一个有系统随机选出一个1-100的数字不显示出来,由玩家猜这个数字,直到猜中为止,并显示出玩家猜中数字所用时间和次数对玩家做出评判,并对所涉及的相关技术进行初步的探讨。

程序运行就进入游戏玩家就可以进行数字猜猜看了。

关键字:数字游戏 java代码目录摘要 (2)一、设计任务与要求 (1)1.1课程设计的任务 (1)1.2课程设计的要求 (1)二、需求分析 (1)2.1 用户需求分析 (1)三、设计思路 (2)3.1 系统总体设计 (2)3.2 功能模块设计 (3)四、详细设计 (5)4.1 程序流程图 (5)4.2 关键算法与技术实现 (7)4.3 类与数据结构实现 (16)五、运行调试与分析讨论 (17)5.1 系统测试方案 (17)5.2 运行结果分析 (18)六、设计体会与小结 (22)致谢 (24)七、参考文献 (25)一、设计任务与要求1.1课程设计的任务根据所选题目,完成课程设计的分析、设计和编码,写出课程设计报告。

(1)掌握Java的语言规范,面向对象的核心概念和特性;(2)掌握Java的编程技术,包括异常处理,图形界面设计,多线程,网络通信程序等;(3)掌握Java应用软件的开发环境和开发过程;(4)掌握面向对象的思想和程序设计方法。

1.2课程设计的要求设计一个猜数字游戏程序,该游戏可以由程序随机产生整数,玩游戏者通过由用户输入数字来匹配上面所产生的数字。

用户随机输入数字,当与计算机产生的随机数相符合时,计算机将提醒用户,游戏成功的信息,当有偏差时,将会提醒偏差,如偏大或者是偏小。

二、需求分析2.1 用户需求分析设计一个猜数字游戏程序,要求具体如下特性:(1)趣味性:要求游戏内容丰富多彩,语言风趣幽默。

猜数字

猜数字
JPanel(),jf2p1=new JPanel(),jf2p2=new JPanel(),jf2p3=new JPanel(); jf2p1.setLayout(new BorderLayout()); jf1p1.setLayout(new FlowLayout()); jf2p2.setLayout(new FlowLayout()); jf2p3.setLayout(new FlowLayout()); jf1.add(jf1_title,"Center"); jf1p1.add(jf1_username);jf1p1.add(jf1_usernameT); jf1p1.add(jf1_userpass);jf1p1.add(jf1_password); jf1p1.add(jf1_ok);jf1p1.add(jf1_quit); jf1.add(jf1p1,"South"); jf2p2.add(jf2_rightface); jf2p2.add(jf2_wrongface); jf2p2.add(jf2_reelresult); jf2p1.add(jf2p2,"South"); jf2p1.add(jf2_question); jf2.add(jf2title,"North"); jf2.add(jf2p1,"Center"); jf2p3.add(jf2_ans);jf2p3.add(jf2_anwser);jf2p3.add(jf2_ok);jf2p3.add(jf2_newg ame); jf2.add(jf2p3,"South"); jf3.add(jf3_pinyu); jf1.setSize(700,400); jf2.setSize(700,400); jf3.setSize(700,400); jf1.setLocation(300,150); jf2.setLocation(300,150); jf3.setLocation(300,150); jf1.setVisible(true); jf2.setVisible(false); jf3.setVisible(false); jf1.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); jf2.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } });

多线程猜数字游戏实验报告

多线程猜数字游戏实验报告

return "猜对了"; } } }
//猜题线程 class ThreadTwo extends Thread{
private String threadName; private int minNum = 0; private int maxNum = 100; String guessResult = "";
界面,但显示在字符界面。用户只需输入所猜想的数字,打印在输 入框内,按“确定”按钮表示确定,游戏返回提示语句,按照提示 语句操作,直至游戏结束。
同时,计算机开始对游戏进行计时和计数功能。 游戏过程中,如果不想继续玩了,可以直接退出,想重新开局, 按“重新开始”按钮即可。想控制界面大小只需拖拽图形界面边框 即可。 游戏结束后,可以选择“关闭”游戏,或者是“重新开始”。 3、功能模块设计
}
2、拓展题程序代码
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.util.Random;
数据成员(属性)和成员方法(方法)两部分组成。
数据成员描述对象的属性;成员方法则刻画对象的行 为或动作,每一个成员方法确定一个功能或操作。
(3)类的分类 从用户的角度看,Java 源程序中的类分为两种: 系统定义的类:即 Java 类库,它是系统定义好的类。Java 语言由语法规则
和类库两部分组成,语法规则确定 Java 程序的书写规范;类库则提供了 Java 程 序与运行它的系统软件(Java 虚拟机)之间的接口。

数字客户使用jsp和servlet写的一猜数字游戏

数字客户使用jsp和servlet写的一猜数字游戏

数字客户使⽤jsp和servlet写的⼀猜数字游戏今天⼀直在查找数字客户之类的问题,现在正好有机会和⼤家分享⼀下.该猜数字游戏重要⽤到了servlet⽅⾯的session,HttpServletResponse类中的sendRedirect()⽅法。

step1,客户拜访或刷新getNumber.jsp页⾯时,随机给⽤户分配⼀个1-100之间的数字,将该数字存放到客户的session中。

<%@ page language="java" import="java.util.*"contentType="text/html;charset=utf-8"%><html><head></head><body><%String message=(String)session.getAttribute("message");%><form action="HandleGuess" methods="post"><input type="text" name="guessnumber" size=8><%=message %><input type="submit" value="提交"></form><form action="getNumber.jsp" method="post"><input type="submit" value="重新得到新的随机数"></form></body></html>step2,然后⽤户超廉价到inputNumber.jsp页⾯上,⽤户输⼊⾃⼰的猜测,并提交给HandleGuess类负责创建。

游戏代码怎么写

游戏代码怎么写

1.编程所写的代码是如何变成游戏的人能识别有意义的字母、数字组合,就是代码。

电脑机器只能识别0和1的二进制数字组合。

人写的代码不能直接被电脑识别,需要一个翻译的过程,这个过程叫"编译",把对人有意义的代码转换为对电脑有意义的二进制码。

你看到的游戏画面是电脑理解了这些二进制码之后的结果。

电脑根据二进制码来进行游戏图像渲染、处理玩家的键盘鼠标操作信息。

就像黑客帝国一样,哈哈。

这样电脑才能理解。

当然,这是个例子而已,真正编译出来的二进制码比这个要多得多。

2.游戏排名功能的代码怎么写java实现的简单猜数字游戏代码,通过随机数与逻辑判断来实现游戏功能代码如下:import java.util.InputMismatchException;import java.util.Scanner;public class Main {public static void main(String[] args) {// 产生一个随机数int number = (int) (Math.random() * 100) + 1;// 加入countint count = 0;// 在这里加入最大值,和最小值int max = 100;int min = 1;while (true) {// 键盘录入数据Scanner sc = new Scanner(System.in);System.out.println("请输入你要猜的数据:(" + min + "~" + max + ")"); try {count++;int guessNumber = sc.nextInt();// 判断if (guessNumber > number) {max = guessNumber;System.out.println("你猜大了");} else if (guessNumber < number) {min = guessNumber;System.out.println("你猜小了");} else {System.out.println("恭喜你,花了" + count + "次就猜中了");// 问是否继续System.out.println("请问还要继续吗?(yes)");sc = new Scanner(System.in);String str = sc.nextLine();if ("yes".equals(str)) {// 重写赋值随机数number = (int) (Math.random() * 100) + 1;count = 0;max = 100;min = 1;} else {break;}}} catch (InputMismatchException e) {System.out.println("你输入的数据有误");}}}}3.我想问一下怎么制作游戏,编写代码什么的,详细点开看看吧~希望大这很复杂,首先你得学会至少一种计算机语言并熟练掌握,如C语言、C++、java 等等,不同类型的游戏需要掌握的东西也不尽相同,如网络游戏就需要你懂网络协议等一些专业知识,单机游戏相对简单一些,但也简单不了多少。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

for(f(number[i]==number[j]){ System.out.println("请输入 4 位不相同的数字"); continue out1; }
} } //输入没错时,退出此死循环,继续其它操作 break; } return number; } //比较输入的与系统产生的,返回结果: xA yB public static String CompareNumber(int[] guess, int[] putIn){ int rightA = 0; //比较结果有多少个"A" int rightB = 0; //比较结果有多少个"B" String right = ""; //以字符串形式保存的比较结果 //计算出多少个"A" for(int i=0; i<4; i++){ if(guess[i]==putIn[i]) rightA++; } //计算出多少个"B" for(int i=0; i<4; i++){ for(int j=0; j<4; j++){
putIn = PutIn(history); //获取用户输入 right = CompareNumber(guess, putIn); //比较输入结果 history[i] = RemarkHistory(putIn, right); //作历史记录,以便随时查看 if(pareTo("4A")==0){
//使用者输入猜的四个数字(这四个数字之间也不能相同, 如果有相同的则提示使用者,并让 它重新输入)
public static int[] PutIn(String[] history){ int[] number = new int[4]; int putIn = 0; Scanner sc = new Scanner(System.in); System.out.println("请输入您猜想的 4 位数字"); PrintMenu(); out1: while(true){
System.out.println("欢迎你试玩猜数字游戏:"); System.out.println("请按 1 开始 2 退出"); Scanner s = new Scanner(System.in); int ch=0; ch = s.nextInt(); if(ch==1){
System.out.println("---------------------"); Scanner ca = new Scanner(System.in); int max =0; int j=0; int i=0; max= (int)(Math.random()*100); do{ System.out.println("请您输入数字:");
//如果输入英文、符号、小数等则提示并要求重新输入 try {
putIn = sc.nextInt(); } catch (Exception e) {
String str = sc.next(); if("Y".compareTo(str)==0 || "y".compareTo(str)==0) {main(null);} if("N".compareTo(str)==0 || "n".compareTo(str)==0) {System.exit(0);} if("H".compareTo(str)==0 || "h".compareTo(str)==0) {PrintHistory(history);} System.out.println("请输入正整数。"); continue; } //如果输入的不是 4 位数,提示并要求重新输入 if(putIn>9999 || putIn<100){ System.out.println("请输入一个 4 位数"); continue; } //把输入的一个 4 位数字变成数组 number[0] = putIn/1000; number[1] = putIn%1000/100; number[2] = putIn%100/10; number[3] = putIn%10; //如果有相同的数字,提示并要求重新输入 for(int i=0; i<4; i++){
public static void PrintHistory(String[] history){ for(int i=0; i<history.length; i++){
if("".compareTo(history[0])==0) {System.out.println("还没有输入内容"); continue;} if("".compareTo(history[i])==0) continue; System.out.println(history[i]); } } }
System.out.println("恭喜您,猜中了!!!"); PrintMenu(); menu(history); } } System.out.println("您已经猜了 10 次,本次游戏结束"); PrintMenu(); menu(history);
}
//自动产生四个 0~9 的数字作为随机数,这个四位数相互之间不能相同。 public static int[] MakeGuessNumber(){ Random r = new Random(); int[] guess = new int[4]; for(int i=0; i<4; i++){ guess[i] = r.nextInt(10); for(int j=i-1; j>=0; j--){ if(guess[i]==guess[j]){i--;break;} } } return guess; }
2、比较复杂的 import java.util.Random; import java.util.Scanner; public class Guess {
public static void main(String[] args) { //产生随机数 int[] guess = MakeGuessNumber(); System.out.print("系统产生的随机数为:"); for(int i=0; i<4; i++){
System.out.print(guess[i]); }System.out.println(); int[] putIn ;//定义用户输入 String right = ""; //临时保存比较的结果 String[] history = new String[]{"","","","","","","","","",""}; for(int i=0; i<10; i++){
case 5: System.out.println("您猜对了,您获得 60 分"); break; case 6: System.out.println("您猜对了,您获得 50 分"); break; case 7: System.out.println("您猜对了,您获得 40 分"); break; case 8: System.out.println("您猜对了,您获得 30 分"); break; case 9: System.out.println("您猜对了,您获得 20 分"); break; case 10: System.out.println("您猜对了,您获得 10 分"); break; default :System.out.println("对不起你没猜对"); break; } }else if(ch==2) { break;} } System.out.println("谢谢您的使用"); } }
j = ca.nextInt(); if(j<max){ System.out.println("太小哦"); } if(j>max){ System.out.println("太大哦"); } if(j==max){ break; } i++; }while(i<10); switch(i){ case 1: System.out.println("您猜对了,您获得 100 分"); break; case 2: System.out.println("您猜对了,您获得 90 分"); break; case 3: System.out.println("您猜对了,您获得 80 分"); break; case 4: System.out.println("您猜对了,您获得 70 分"); break;
猜数字游戏的两个 Java 程序代码
1、比较简单 import java.util.Scanner; import ng.Math; public class Cai { /**
* 生成 100 内的随即数然后 提示用户输入 * 用户输入数据猜 *提示用户 猜大了还是猜 小了 */
public static void main(String[] args) { while(true){
相关文档
最新文档