zoukankan      html  css  js  c++  java
  • 实验4&5

    [实验任务四]

    在上网时,我们经常会看到以下这种对话框,要用户输入一个验证码。

              

     

    1.程序设计思想

    先利用Math.random()得到一个整数,然后将其类型转换为字符类型,连接起来生成六位验证字符串,输入验证码(对话框)利用toLowerCase()函数将输入的字符皆转为小写字母,然后利用Equal函数判断输入的预生成验证码是否吻合,然后以消息框输出信息即可。

    2.程序流程图

                    

                        

     

                    

       

     

    3.源程序

       

     import java.util.Random;
    import java.util.Scanner;
    import javax.swing.JOptionPane;
    public class Test6 {
         public static void main(String[] args) {
            String s2;
            boolean b=true;
            while(b){
             //定义一个空字符串
         String result = "";
         //进行6次循环
         for(int i = 0 ; i < 6 ; i ++)
         {
         //生成一个97~122的int型的整数
         int intVal = (int)(Math.random() * 26 + 97);
         //将intValue强制转换为char后连接到result后面
         result = result + (char)intVal;
         }
                s2=JOptionPane.showInputDialog( "请输入验证码(不区分大小写)"+result);
                s2=s2.toLowerCase();//把用户输入的大写字母改为小写
            if(s2.equals(result)){
              JOptionPane.showMessageDialog(
                   null, " 登录成功 ", "Results",
                   JOptionPane.PLAIN_MESSAGE );
                b=false;
            }else{
              JOptionPane.showMessageDialog(
                   null, "登录失败,请重新输入", "Results",
                   JOptionPane.PLAIN_MESSAGE );
            }
            }
        }
    }

     

     

    4.实现结果截图

                            

                           

                               

                              

                              

    5.实验总结

        获得字符串的方法值得学习,学会了如何将输入的字母直接转为小写字母,然后利用equal函数作比较,其实java中包类函数多种多样,适合由浅入深的理解。

    [实验任务五]:(选做)

    猜数字游戏。

    1.程序设计思想

       对猜数字进行了一定改良,在规定的时间里猜出正确的数字。利用Random类包,先将一个1-100的任意数字赋给a,起初以对话框形式读取设置时间,然后输出开始游戏(消息框)用System.currentTimeMillis()读取当前系统时间,接收输入的数字(对话框),以System.currentTimeMillis()与最初系统时间的差值(即消耗时间)与设置时间比较结果,决定是否结束游戏,其中设有p变量,用以判断最终结果。高低提示(输入数字与系统随机数a的比较,有一判断用以循环输入所猜数字)。

    2.程序流程图

                                            

                                            

                                                         

    3.源程序

    import java.util.Random;
    import javax.swing.JOptionPane;
    public class Guess_Number {
    public static void main(String[] args) {
    Random random = new Random();
    int a=1+(int)(Math.random()*100);//系统给的随机数在1-100
        String s2=JOptionPane.showInputDialog( "输入设置时间" );
        long tt=Long.parseLong(s2);//因为系统时间是long型,所以为了方便比较,所以设为long型
        String firstNumber,s1;
        int p=0;//结果判断
        JOptionPane.showMessageDialog(null, "开始游戏" );  
        final long t=System.currentTimeMillis();//起初时间
        firstNumber =JOptionPane.showInputDialog( "请输出你猜的数字:" );
           int number1= Integer.parseInt( firstNumber );
        while((System.currentTimeMillis()-t)/1000<tt)//游戏结束判断
         {  
        
          if(number1<a)
          {
          JOptionPane.showMessageDialog(null, "低了" );
               
          }
          if(number1>a)
          {
          JOptionPane.showMessageDialog(null, "高了" );
          }
          if(number1==a)
          { JOptionPane.showMessageDialog(null, "恭喜!猜对了" );p=1;break;}
             if(p!=1)//循环输入 猜的数字
              {
               s1=JOptionPane.showInputDialog( "Enter number" );
               number1= Integer.parseInt( s1 );
              }
         }  
        if(p==0)//结果输出
       JOptionPane.showMessageDialog(null, "很遗憾,未能在规定时间猜出数字" );  
    }
     
    }

     

     

    4.实现结果截图

                                                  

                                                  

                                                

    5.实验总结

      对话框的循环刚开始并没有真正理解,没有形成循环的思维,所以在这一点上花费时间比较多,对字符化界面的理解还不够深刻,希望自己以后能够多做有关方面的例子,加深理解。但是了解了关于java中一种计时器的方法(获取系统时间)。

     

     

  • 相关阅读:
    jq 比较五获取结构树的位置 eq() 或者parent
    jq 笔记四 end的用法
    jq 笔记三 find的用法
    jq 笔记二filter()用法
    jq 笔记一 选择器中的逗号
    Linux 笔记五 搜索命令的命令
    linux 笔记四 文件搜索(locate)
    使用ansible时显示Failed to connect to the host via ssh
    linux音频解码软件ffmpeg的安装
    centos服务器jenkins安装配置
  • 原文地址:https://www.cnblogs.com/zhao-teng-ass/p/7636463.html
Copyright © 2011-2022 走看看