天天看點

java的實驗報告_JAVA 實驗報告

石家莊鐵道大學資訊科學與技術學院

實驗報告

2018年----2019年  第一學期

題目:四則運算、生成驗證碼

課程名稱:JAVA語言程式設計

班    級:信1705-2班

姓    名:趙墨涵學号:20173623

指導教師:王建民

正文部分格式要求:

1、 正文漢子部分要求宋體小四,行間距固定值20磅;首行縮進兩個字元。

2、 程式英文部分要求采用Times New Roman字型,行間距固定值20磅,程式縮進采用四個字元,程式部分要求采用必要的注釋。

3、 實驗報告要求完成以下三項内容:

1) 按照題目内容要求編寫程式實作功能。

2) 實驗報告中要求包括程式設計思想、程式流程圖、源程式、實作結果截圖、實驗總結(包括調試過程中出現的錯誤等)。

四則運算

程式設計思想

使用随機數生成100或1000以内數字,用字元串數組實作+-*/的輸出。For循環列印出所需要的題數。

程式流程圖

java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告

源程式

package yunsuan;

import java.util.Scanner;

public class Yunsuan {

public static void main(String[] args) {

int a1,a2,a3;

int b1,b2,b3;

int m,n;

int i=0;

Scanner sc=new Scanner(System.in);

String f[]=new String[4];

f[0]="+";

f[1]="-";

f[2]="*";

f[3]="/";

System.out.println("請選擇10以内或100以内");

m=sc.nextInt()+1;

System.out.println("請輸入要産生的題數");

n=sc.nextInt();

for(i=0;i

{

a1=(int)(Math.random()*m);

a2=(int)(Math.random()*m);

a3=(int)(Math.random()*m);

//a4=(int)(Math.random()*m);

b1=(int)(Math.random()*4);

b2=(int)(Math.random()*4);

//b3=(int)(Math.random()*4);

System.out.println("第"+(i+1)+"題:"+a1+f[b1]+a2+f[b2]+a3+"=");

}

}

}

截圖:

java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告

實驗總結

實驗運用到了随機數函數

驗證碼

程式設計思想

使用random産生随機字元,并利用for循環産生字元串。具體架構使用jFrame,文本框元件:JTextField;密碼框元件:JPasswordField;标簽元件:JLabel;複選框元件:JCheckBox;單選框元件:JRadioButton;按鈕元件JButton。使用setbounds設定位置和大小。

程式流程圖

java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告
java的實驗報告_JAVA 實驗報告

源程式

package yzm;

import java.util.Random;

import java.awt.Container;

import java.awt.Dimension;

import java.awt.FlowLayout;

import javax.swing.ImageIcon;//頂級容器即空白視窗

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JPasswordField;

import javax.swing.JTextField;

public class Test {

public static void main(String[] args) {

Test t=new Test();

t.set();

}

private void set() {

JFrame f=new JFrame();

f.setTitle("驗證碼");//視窗标題

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//關閉

f.setExtendedState(JFrame.MAXIMIZED_VERT);//最大化

f.setSize(300,300);//視窗大小

Container con=f.getContentPane();

JPanel pan=new JPanel();

JLabel yan=new JLabel("驗證碼:");

pan.add(yan);

JTextField yanzhengma=new JTextField(10);

pan.add(yanzhengma);

String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

Random random = new Random();

StringBuffer yzm = new StringBuffer();

for (int i = 0; i < 4; ++i) {

int number = random.nextInt(62);// [0,62)

yzm.append(str.charAt(number));

}

String s=yzm.toString();

JLabel ma=new JLabel(s);

pan.add(ma);

JButton buttenOne=new JButton("确定");

pan.add(buttenOne);

con.add(pan);

f.setVisible(true);

//視窗實作

}

}

截圖:

java的實驗報告_JAVA 實驗報告

實驗總結

生成驗證碼可以使用随機字元。

可以生成驗證碼,不能重新整理驗證碼;确定鍵沒有功能。