Class__One HomeWork 实验报告
石家庄铁道大学信息科学与技术学院
实验报告
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 实验报告的更多相关文章
- 北京电子科技学院(BESTI)实验报告5
北京电子科技学院(BESTI)实验报告5 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名) 郑凯杰.周恩德 学号:(按贡献大小排名) 20145314.20145217 ...
- 北京电子科技学院(BESTI)实验报告4
北京电子科技学院(BESTI)实验报告4 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...
- 20145215&20145307信息安全系统设计基础实验报告
20145215&20145307信息安全系统设计基础实验报告 PART1 一.实验原理 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统 ...
- 北京电子科技学院(BESTI)实验报告1
北京电子科技学院(BESTI)实验报告1 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)郑凯杰 .周恩德 学号:(按贡献大小排名)20145314 .20145217 ...
- 北京电子科技学院(BESTI)实验报告3
北京电子科技学院(BESTI)实验报告3 课程: 信息安全系统设计基础 班级:1452.1453 姓名:(按贡献大小排名)周恩德 .郑凯杰 学号:(按贡献大小排名)20145217 .201453 指 ...
- 20145205 《Java程序设计》实验报告五:Java网络编程及安全
20145205 <Java程序设计>实验报告五:Java网络编程及安全 实验要求 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.客户端中输入明文,利用DES算法加密,D ...
- 20145220&20145209&20145309信息安全系统设计基础实验报告(5)
20145220&20145209&20145309信息安全系统设计基础实验报告(5) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132249 ...
- 20145220&20145209&20145309信息安全系统设计基础实验报告(3)
20145220&20145209&20145309信息安全系统设计基础实验报告(3) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132243 ...
- 20145220&20145209&20145309信息安全系统设计基础实验报告(4)
20145220&20145209&20145309信息安全系统设计基础实验报告(4) 实验报告链接: http://www.cnblogs.com/zym0728/p/6132246 ...
随机推荐
- es6 学习二 Generator
安装babel的拓展包(Polyfill) ,对Generator的转义 这是一个补完babel支持es6的拓展包,配置步骤为3个: 打开命令行键入 npm install --save-dev ba ...
- C++取出string的一部分以及int型转成string类型
在实际应用中,对文件的操作是十分频繁的,我们需要对文件进行拷贝,重命名等操作,这是就需要获取文件的绝对路径,一般情况下,该路径是以字符串的形式存储的,如果我们需要对文件进行重命名等,就需要对绝对路径这 ...
- Log4j Append属性指定是否追加内容
Log4j默认是不断的把日志内容追加到日志文件: 这里就有个属性 Append 默认就是true: 假如我们设置成false 就不追加了 直接覆盖前面的内容: 我们来测试下: log4j.rootLo ...
- html多文件上传,可支持预览
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 20170712 SQL Server 日志文件收索
-- 1 日志文件增长过快,未进行任务计划截断备份 造成文件过大199G 左右,而可用空间不足8% -- 2 日志备份之前,需要一次完整备份 再进行截断备份 出现可用空间99% 此时可以选择收索数据库 ...
- sql server 跟踪日志
1,当SQL Server错误日志很大时,手工运行: exec sp_cycle_errorlog 系统存储过程,即可使用新的日志文件 sqlserver系统自动调用 exec sp_cycle_e ...
- Python3学习之路~6.6 类的继承
Inheritance 继承 面向对象编程 (OOP) 语言的一个主要功能就是“继承”.继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展.通过继承创 ...
- 爬虫mm131明星照片
''' 1. 爬取以下站点中各个明星图片,分别单独建文件夹存放. 起始URL地址:http://www.mm131.com/mingxing ''' import os import logging ...
- maven 转myeclipse eclipse 项目 命令
我们在网上下载的开源Maven工程想要转换成Eclipse能够识别的工程,需要执行如下命令: Jar工程: mvn eclipse:eclipse 或 mvn eclipse:myeclipse We ...
- huawei
线程堆栈(Thread Stack)和托管堆(Managed Heap) 每个正在运行的程序都对应着一个进程 (process),在一个进程内部,可以有一个或多个线程(thread),每个线程都拥有一 ...