
JAVA程序计算素数
设计JAVA application程序,计算出20000000~300000000之间所有的素数,并将找到的素数写入primefiledat文件,
以下是一个使用Java语言编写的程序,可以计算出20000000~300000000之间所有的素数,并将找到的素数写入primefiledat文件:
javaCopy code
import javaioFileOutputStream; import javaioIOException; public class PrimeNumberCalculator { public static void main(String[] args) { int start = 20000000; int end = 300000000; String filename = "primefiledat"; try (FileOutputStream fileOutputStream = new FileOutputStream(filename)) { for (int i = start; i <= end; i++) { if (isPrime(i)) { fileOutputStreamwrite(StringvalueOf(i)getBytes()); fileOutputStreamwrite(SystemlineSeparator()getBytes()); } } } catch (IOException e) { eprintStackTrace(); } } private static boolean isPrime(int n) { if (n <= 1) { return false; } for (int i = 2; i <= Mathsqrt(n); i++) { if (n % i == 0) { return false; } } return true; } }
该程序首先定义了起始数字和终止数字,以及文件名。接下来,在main方法中,程序使用for循环迭代从start到end之间的每个数字。对于每个数字,程序调用isPrime方法来判断它是否为素数。如果是素数,程序将该数字写入文件中,每个数字占一行。
isPrime方法使用了一个简单的算法来判断一个数字是否为素数:如果数字小于或等于1,那么它不是素数。否则,程序从2开始,一直到该数字的平方根之间的每个数字进行除法运算。如果该数字能被任何一个这些数字整除,那么它不是素数。
请注意,在此程序中,我们使用了Java 7引入的"try-with-resources"语句来自动关闭文件输出流。这样可以确保即使在发生异常的情况下,文件输出流也会被正确关闭,以避免文件被损坏。
青岛的软件大部分集中在软件园,这些还都比较正规的,一年开发经验大概3000~4000吧,我原来的公司主要做项目,还有项目提成,分到每个人手里每个月差不多有500~1000快,年底有红包1000左右。软件远景也不错。
‍
import javaawtColor;//界面不是很高大上档次,但是能满足你的基本需求,希望对你有用import javaawtFont;
import javaawtGridLayout;
import javaawteventActionEvent;
import javaawteventActionListener;
import javaxswingJButton;
import javaxswingJFrame;
import javaxswingJOptionPane;
import javaxswingborderBorder;
import javaxswingborderLineBorder;
public class 抽奖游戏 extends JFrame {
static 抽奖游戏 frame;
public 抽奖游戏() {
setLayout(new GridLayout(3, 3, 3, 3));
Border border = new LineBorder(ColorBLUE, 4);
JButton l1 = new JButton();
JButton l2 = new JButton();
JButton l3 = new JButton();
JButton l4 = new JButton();
JButton l5 = new JButton();
JButton l6 = new JButton();
JButton l7 = new JButton("祝你好运");
JButton l8 = new JButton("中奖规则");
JButton l9 = new JButton("再次抽奖");
l1setBorder(border);
l2setBorder(border);
l3setBorder(border);
l4setBorder(border);
l5setBorder(border);
l6setBorder(border);
l7setBorder(border);
l8setBorder(border);
l9setBorder(border);
String[] num2 = { "1", "2", "3", "4", "5", "6" };
l8addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
JOptionPaneshowMessageDialog(null, "游戏规则:\n" + "特等奖:\n"
+ "第一行或者第二行出现的数字全部相同\n"
+ "第一第二行出现升序的1,2,3,4,5,6或者降序的6,5,4,3,2,1\n" + "一等奖\n"
+ "1:第一行或第二行的数字降序排列或者升序排列\n"
+ "2:第一行或者第二行相邻的按钮出现一样的数字\n");
}
});
l9addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
l1setText("");
l2setText("");
l3setText("");
l4setText("");
l5setText("");
l6setText("");
l7setBackground(ColorlightGray);
l7setText("离中奖不远了!");
}
});
l6addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
int j1 = (int) (Mathrandom() 10) % 6;
l1setText(num2[j1]);
int j2 = (int) (Mathrandom() 10) % 6;
l2setText(num2[j2]);
int j3 = (int) (Mathrandom() 10) % 6;
l3setText(num2[j3]);
int j4 = (int) (Mathrandom() 10) % 6;
l4setText(num2[j4]);
int j5 = (int) (Mathrandom() 10) % 6;
l5setText(num2[j5]);
int j6 = (int) (Mathrandom() 10) % 6;
l6setText(num2[j6]);
if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1
&& j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6
|| j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2
&& j6 == 1) {
l7setBackground(Colorred);
l7setText("特等奖");
} else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5
&& j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2
&& j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2
&& j4 == j5 || j5 == j6 && j2 == j3) {
l7setBackground(ColorYELLOW);
l7setText("一等奖");
} else {
l7setBackground(ColorlightGray);
l7setText("未中奖,加油!");
}
}
});
l5addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
int j1 = (int) (Mathrandom() 10) % 6;
l1setText(num2[j1]);
int j2 = (int) (Mathrandom() 10) % 6;
l2setText(num2[j2]);
int j3 = (int) (Mathrandom() 10) % 6;
l3setText(num2[j3]);
int j4 = (int) (Mathrandom() 10) % 6;
l4setText(num2[j4]);
int j5 = (int) (Mathrandom() 10) % 6;
l5setText(num2[j5]);
int j6 = (int) (Mathrandom() 10) % 6;
l6setText(num2[j6]);
if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1
&& j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6
|| j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2
&& j6 == 1) {
l7setBackground(Colorred);
l7setText("特等奖");
} else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5
&& j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2
&& j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2
&& j4 == j5 || j5 == j6 && j2 == j3) {
l7setBackground(ColorYELLOW);
l7setText("一等奖");
} else {
l7setBackground(ColorlightGray);
l7setText("未中奖,加油!");
}
}
});
l4addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
int j1 = (int) (Mathrandom() 10) % 6;
l1setText(num2[j1]);
int j2 = (int) (Mathrandom() 10) % 6;
l2setText(num2[j2]);
int j3 = (int) (Mathrandom() 10) % 6;
l3setText(num2[j3]);
int j4 = (int) (Mathrandom() 10) % 6;
l4setText(num2[j4]);
int j5 = (int) (Mathrandom() 10) % 6;
l5setText(num2[j5]);
int j6 = (int) (Mathrandom() 10) % 6;
l6setText(num2[j6]);
if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1
&& j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6
|| j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2
&& j6 == 1) {
l7setBackground(Colorred);
l7setText("特等奖");
} else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5
&& j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2
&& j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2
&& j4 == j5 || j5 == j6 && j2 == j3) {
l7setBackground(ColorYELLOW);
l7setText("一等奖");
} else {
l7setBackground(ColorlightGray);
l7setText("未中奖,加油!");
}
}
});
l3addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
int j1 = (int) (Mathrandom() 10) % 6;
l1setText(num2[j1]);
int j2 = (int) (Mathrandom() 10) % 6;
l2setText(num2[j2]);
int j3 = (int) (Mathrandom() 10) % 6;
l3setText(num2[j3]);
int j4 = (int) (Mathrandom() 10) % 6;
l4setText(num2[j4]);
int j5 = (int) (Mathrandom() 10) % 6;
l5setText(num2[j5]);
int j6 = (int) (Mathrandom() 10) % 6;
l6setText(num2[j6]);
if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1
&& j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6
|| j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2
&& j6 == 1) {
l7setBackground(Colorred);
l7setText("特等奖");
} else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5
&& j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2
&& j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2
&& j4 == j5 || j5 == j6 && j2 == j3) {
l7setBackground(ColorYELLOW);
l7setText("一等奖");
} else {
l7setBackground(ColorlightGray);
l7setText("未中奖,加油!");
}
}
});
l2addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
int j1 = (int) (Mathrandom() 10) % 6;
l1setText(num2[j1]);
int j2 = (int) (Mathrandom() 10) % 6;
l2setText(num2[j2]);
int j3 = (int) (Mathrandom() 10) % 6;
l3setText(num2[j3]);
int j4 = (int) (Mathrandom() 10) % 6;
l4setText(num2[j4]);
int j5 = (int) (Mathrandom() 10) % 6;
l5setText(num2[j5]);
int j6 = (int) (Mathrandom() 10) % 6;
l6setText(num2[j6]);
if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1
&& j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6
|| j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2
&& j6 == 1) {
l7setBackground(Colorred);
l7setText("特等奖");
} else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5
&& j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2
&& j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2
&& j4 == j5 || j5 == j6 && j2 == j3) {
l7setBackground(ColorYELLOW);
l7setText("一等奖");
} else {
l7setBackground(ColorlightGray);
l7setText("未中奖,加油!");
}
}
});
l1addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
int j1 = (int) (Mathrandom() 10) % 6;
l1setText(num2[j1]);
int j2 = (int) (Mathrandom() 10) % 6;
l2setText(num2[j2]);
int j3 = (int) (Mathrandom() 10) % 6;
l3setText(num2[j3]);
int j4 = (int) (Mathrandom() 10) % 6;
l4setText(num2[j4]);
int j5 = (int) (Mathrandom() 10) % 6;
l5setText(num2[j5]);
int j6 = (int) (Mathrandom() 10) % 6;
l6setText(num2[j6]);
if (j1 == j2 && j2 == j3 || j4 == j5 && j5 == j6 || j1 == 1
&& j2 == 2 && j3 == 3 && j4 == 4 && j5 == 5 && j6 == 6
|| j1 == 6 && j2 == 5 && j3 == 4 && j4 == 3 && j5 == 2
&& j6 == 1) {
l7setBackground(Colorred);
l7setText("特等奖");
} else if (j1 > j2 && j2 > j3 || j3 > j2 && j2 > j1 || j4 > j5
&& j5 > j6 || j6 > j5 && j5 > j4 || j1 == j2
&& j5 == j4 || j1 == j2 && j5 == j6 || j3 == j2
&& j4 == j5 || j5 == j6 && j2 == j3) {
l7setBackground(ColorYELLOW);
l7setText("一等奖");
} else {
l7setBackground(ColorlightGray);
l7setText("未中奖,加油!");
}
}
});
Font font = new Font("", FontBOLD, 20);
l1setFont(font);
l2setFont(font);
l3setFont(font);
l4setFont(font);
l5setFont(font);
l6setFont(font);
l7setFont(font);
l8setFont(font);
l9setFont(font);
add(l1);
add(l2);
add(l3);
add(l4);
add(l5);
add(l6);
add(l7);
add(l8);
add(l9);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
frame = new 抽奖游戏();
framesetTitle("抽奖大战");
framesetSize(500, 500);
framesetLocationRelativeTo(null);
framesetVisible(true);
framesetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
}
}
前言:package-game,我直接在父类中声明了参数构造器,其实这样不太好,以后你学好了可以改进。代码如下
package game;public class Hero {
// 姓名
private String name;
// 攻击力
private double aggressivity;
// 防御力
private double defensive;
// 生命力
private double lifeValue;
public Hero(String name, double aggressivity, double defensive, double lifeValue) {
super();
thisname = name;
thisaggressivity = aggressivity;
thisdefensive = defensive;
thislifeValue = lifeValue;
}
public Hero() {
super();
// TODO Auto-generated constructor stub
}
public String getName() {
return name;
}
public void setName(String name) {
thisname = name;
}
public double getAggressivity() {
return aggressivity;
}
public void setAggressivity(double aggressivity) {
thisaggressivity = aggressivity;
}
public double getDefensive() {
return defensive;
}
public void setDefensive(double defensive) {
thisdefensive = defensive;
}
public double getLifeValue() {
return lifeValue;
}
public void setLifeValue(double lifeValue) {
thislifeValue = lifeValue;
}
@Override
public String toString() {
return "Hero [name=" + name + ", aggressivity=" + aggressivity + ", defensive=" + defensive + ", lifeValue=" + lifeValue + "]";
}
}
package game;
/
技能接口
@author remind
/
public interface Skill {
// 被动技能
public void passiveSkill();
// 技能1
public void skill1();
// 技能2
public void skill2();
// 技能3
public void skill3();
}
package game;
/
自定义异常
@author remind
/
public class HeroException extends Exception {
public HeroException() {
super();
}
public HeroException(String message, Throwable cause) {
super(message, cause);
}
public HeroException(String message) {
super(message);
}
public HeroException(Throwable cause) {
super(cause);
}
}
package game;
/
Master英雄类
@author remind
/
public class Master extends Hero implements Skill {
@Override
public void passiveSkill() {
Systemoutprintln("Master 被动技能");
}
@Override
public void skill1() {
Systemoutprintln("Master 技能1");
}
@Override
public void skill2() {
Systemoutprintln("Master 技能2");
}
@Override
public void skill3() {
Systemoutprintln("Master 技能3");
}
public Master() {
super();
}
public Master(String name, double aggressivity, double defensive, double lifeValue) {
super(name, aggressivity, defensive, lifeValue);
}
}
package game;
/
Warrior英雄类
@author remind
/
public class Warrior extends Hero implements Skill {
@Override
public void passiveSkill() {
Systemoutprintln("Warrior 被动技能");
}
@Override
public void skill1() {
Systemoutprintln("Warrior 技能1");
}
@Override
public void skill2() {
Systemoutprintln("Warrior 技能2");
}
@Override
public void skill3() {
Systemoutprintln("Warrior 技能3");
}
public Warrior() {
super();
}
public Warrior(String name, double aggressivity, double defensive, double lifeValue) {
super(name, aggressivity, defensive, lifeValue);
}
}
package game;
/
测试类
@author remind
/
public class TestHero {
// 程序入库测试
public static void main(String[] args) {
try {
test(new Master("山丘之王", 0, 200, 400));
test(new Warrior("黑暗游侠", 300, 200, 400));
} catch (Exception e) {
eprintStackTrace();
}
}
/
test方法,调用英雄执行技能
@param hero
@throws Exception
/
public static void test(Hero hero) throws Exception {
Systemoutprintln("英雄信息:" + hero);
if (herogetAggressivity() == 0) {
throw new HeroException("攻击力不能为0");
}
// 类型转换
if (hero instanceof Skill) {
Skill skill = (Skill) hero;
// 被动技能
skillpassiveSkill();
// 技能1
skillskill1();
// 技能2
skillskill2();
// 技能3
skillskill3();
}
}
}
以上就是关于用java写一个程序全部的内容,包括:用java写一个程序、请问青岛现在的软件业怎样,一年经验的java程序员工资能有多少、用swing编写一个java抽奖的程序,至少有5个按钮,显得高大上一点。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)