石家庄铁道大学信息科学与技术学院

 

 

 

实验报告

2018年----2019年  第学期

 

 

 

 

 

 

 

题目:   四则运算和验证码

课程名称:  JAVA语言程序设计

班    级:        信1705-2班

姓    名:    黄珺瑜    学号:   20173557

指导教师:       王建民

1,四则运算

import java.util.Random;

public class PupilWork {

public static void main(String[] args) {

// TODO 自动生成的方法存根

Random m =new Random(100);

int n,s,j;

String nn[]= {"+","-","*","/"};

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

n=m.nextInt(19)+1;

s=m.nextInt(4);

j=m.nextInt(19)+1;

if(nn[s]=="-"&&n<j) {

i--;

}

else {

if(nn[s]=="/")

System.out.print((n*s)+nn[s]+n+"=\t");

else

System.out.print(n+nn[s]+j+"=\t");

if((i+1)%5==0)

System.out.println("\n");}

}

}

}

if((i+1)%5==0)

System.out.println("\n");}

}

}

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

小学二年级的数据范围大约是在二十以内的数字 ,除法也是可以必须得除尽的。

2,验证码

添加标签,文本框,按钮  运用JLabel等类型定义,验证码框用Graphics类操作定义

运用到setBounds定义每个组件的大小和位置

public class EntryBoundary extends JFrame{

private Identify mp;

private JButton entry,enrollfast;

private JLabel Id,password,vercode;

private JTextField ID,vertext;

private JPasswordField passwordtext;

public EntryBoundary() {

setTitle("请登录");

setBounds(200, 200, 400, 250);

setDefaultCloseOperation(EXIT_ON_CLOSE);

setBackground(Color.WHITE);

Container c = getContentPane();

c.setLayout(null);

//定义登录标签和登录文本框

Id = new JLabel("登录名:");

Id.setFont(new Font("楷书", Font.BOLD, 15));

Id.setSize(80, 50);

Id.setLocation(30, 10);

c.add(Id);

ID = new JTextField();

ID.setFont(new Font("宋体", Font.ITALIC, 15));

ID.setText("用户名/邮箱");

//     ID.setFont(new Font("Arial", Font.BOLD, 20));

ID.setSize(200, 30);

ID.setLocation(90, 20);

c.add(ID);

//定义密码标签和密码文本框

password = new JLabel("密码:");

password.setSize(70, 50);

password.setLocation(45, 45);

c.add(password);

password.setFont(new Font("楷书", Font.BOLD, 15));

passwordtext = new JPasswordField();

passwordtext.setFont(new Font("Arial", Font.BOLD, 20));

passwordtext.setSize(200, 30);

passwordtext.setLocation(90, 55);

c.add(passwordtext);

//声明并定义提示标签

JLabel jt = new JLabel("忘记用户名/密码?");

jt.setFont(new Font("草书", Font.PLAIN, 11));

jt.setSize(100, 30);

jt.setLocation(295, 55);

c.add(jt);

//定义验证码标签,验证码框以及验证码图

vercode = new JLabel("验证码:");

vercode.setFont(new Font("楷书", Font.BOLD, 15));

vercode.setSize(80, 50);

vercode.setLocation(30, 80);

c.add(vercode);

vertext = new JTextField();

vertext.setSize(150, 30);

vertext.setLocation(90, 90);

c.add(vertext);

//定义验证码面板

mp = new Identify();

mp.setSize(90, 30);

mp.setLocation(245, 90);

c.add(mp);

//     //刷新键

//     JLabel re = new JLabel("");

//     Icon icon = new ImageIcon("src/com.mr.email/Java.jpg");

//     re.setIcon(icon);

//     re.setBounds(340, 65, 30, 40);

//     c.add(re);

//定义登录和快速登录按钮

entry = new JButton("登录");

entry.setBackground(Color.ORANGE);

enrollfast = new JButton("快速注册");

entry.setBounds(90, 130, 200, 30);

c.add(entry);

enrollfast.setBounds(90, 170, 200, 30);

c.add(enrollfast);

setResizable(false);

setVisible(true);

}

public static void main(String[] args) {

new EntryBoundary();

}

}

import java.awt.*;

import java.util.*;

public class Identify extends Panel{

private StringBuilder code;

public StringBuilder getCode() {

return code;

}

public void paint(Graphics g) {

//设置验证框填充色并设置其大小

g.fillRect(0, 0, 100, 150);

g.setColor(Color.BLUE);

g.drawRect(0, 0, 100, 150);

Random r = new Random();

//设置干扰点

int x,y;

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

x = r.nextInt(100);

y = r.nextInt(90);

g.drawOval(x, y, 2, 2);

}

g.setFont(new Font("楷体", Font.BOLD , 20));//设置验证码字体大小

g.setColor(Color.RED);//设置验证码颜色

//随机生成验证码

char[] chr= ("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();

code = new StringBuilder();

char a;

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

a = chr[r.nextInt(chr.length)];

code.append(a);

}

g.drawString(code.toString(), 25, 20);

}

}

Class__One HomeWork 实验报告的更多相关文章

  1. 北京电子科技学院(BESTI)实验报告5

    北京电子科技学院(BESTI)实验报告5 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名) 郑凯杰.周恩德 学号:(按贡献大小排名) 20145314.20145217 ...

  2. 北京电子科技学院(BESTI)实验报告4

    北京电子科技学院(BESTI)实验报告4 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...

  3. 20145215&20145307信息安全系统设计基础实验报告

    20145215&20145307信息安全系统设计基础实验报告 PART1 一.实验原理 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统 ...

  4. 北京电子科技学院(BESTI)实验报告1

    北京电子科技学院(BESTI)实验报告1 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)郑凯杰 .周恩德 学号:(按贡献大小排名)20145314 .20145217 ...

  5. 北京电子科技学院(BESTI)实验报告3

    北京电子科技学院(BESTI)实验报告3 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...

  6. 20145205 《Java程序设计》实验报告五:Java网络编程及安全

    20145205 <Java程序设计>实验报告五:Java网络编程及安全 实验要求 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.客户端中输入明文,利用DES算法加密,D ...

  7. 20145220&20145209&20145309信息安全系统设计基础实验报告(5)

    20145220&20145209&20145309信息安全系统设计基础实验报告(5) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132249 ...

  8. 20145220&20145209&20145309信息安全系统设计基础实验报告(3)

    20145220&20145209&20145309信息安全系统设计基础实验报告(3) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132243 ...

  9. 20145220&20145209&20145309信息安全系统设计基础实验报告(4)

    20145220&20145209&20145309信息安全系统设计基础实验报告(4) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132246 ...

随机推荐

  1. python处理csv文档

    在工作中遇到了使用python解析csv文件的问题,包括读写操作,下面参考官网文档,进行一下总结: 首先CSV (Comma Separated Values) ,也就是逗号分开的数值,可以用Note ...

  2. centos7 管理开机启动:systemd

    一.CentOS7 systemd 介绍 在 CentOS7 中,使用 systemd 来管理其他服务是否开机启动,systemctl 是 systemd 服务的命令行工具 [root@mysql ~ ...

  3. centos who命令 查看当前登录系统用户信息

    who 显示当前登录系统的用户,但w显示的更为详细 默认输出 [root@mysql ~]# who //用户名.登录终端.登录时间 root pts/ -- : (192.168.0.110) -a ...

  4. Codefoces 432C Prime Swaps(数论+贪心)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u011328934/article/details/26094917 题目连接:Codefoces ...

  5. Linux系统启动和内核管理

    Linux组成 由 kernel 和 rootfs 组成 单内核:(进程管理,内存管理,网络管理, 驱动程序,文件系统, 安全功能) /boot/vmlinuz-VERSION-release 辅助的 ...

  6. 001-分布式理论-CAP定理

    一.概述 CAP原则又称CAP定理,指的是在一个分布式系统中,Consistency(一致性). Availability(可用性).Partition tolerance(分区容错性)这三个基本需求 ...

  7. 20165236 2017-2018-2 《Java程序设计》结对编程练习_四则运算

    20165236 2017-2018-2 <Java程序设计>结对编程练习_四则运算 结对小组:叶佺.郭金涛 一.需求分析: 1.能随机生成n道四则运算题目,n由使用者输入: 2.支持多种 ...

  8. oracle sql小结(主要讲横列转换的例子)decode 以及case

    --建表 create table kecheng( id NUMBER, name VARCHAR2(20), course VARCHAR2(20), score NUMBER); --插入数据i ...

  9. Python笔记:调用函数,带扩号和和不带括号的区别

    调用函数,如果带括号,那么是调用函数运行后的结果, 调用函数不带括号,调用的是函数本身 例如: def cun (a,b): return a+b print(cun) : 调用函数,打印的是函数 p ...

  10. Number (float bool complex)浮点型、bool 布尔型 True、False 、complex 复数类型

    # Number (float bool complex) # ### float 浮点型 就是小数 # (1) 表达形式一 floatvar = 3.14 print(floatvar) #获取类型 ...