java开运算代码 java 运算

怎么用java代码实现开平方算法?这是我应聘时写的算法代码java开运算代码,运行成功java开运算代码:
//这是用java编写的一个求2的平方根的程序,精确度可通过修改weishu参数来改变
public class app
{ //用二分法求2的平方根
public static void main(String args[])
{
int a[],b[],s[],d[],c[],ss[];
int i,j,k;
a=new int[1000];
b=new int[1000];
【java开运算代码 java 运算】s=new int[1000];
d=new int[1000];
c=new int[1000];
ss=new int[1000];
boolean jingque;
jingque=true;
a[0]=b[0]=2;
a[2]=b[2]=1;
a[1]=4;
b[1]=5;
int weishu=200;//定义循环次数
for(i=0;i1000;i)
s[i]=0;
for(k=0;kweishu;k)
{
hanshucheng.cheng(b,b,s);
j=s[0];
while (s[j]=2)
{
hanshuadd.add(a,b,c);
hanshuchu.chu(d,c);
hanshucopy.copy(ss,b);
hanshucopy.copy(b,d);
hanshucheng.cheng(b,b,s);
j=s[0];
// for(i=0;i=s[0];i)
//System.out.println("s[" i "]=" s[i]);
}
hanshucopy.copy(a,b);
hanshucopy.copy(b,ss);
}
for(i=a[0];i=1;i--)
System.out.print(a[i]);
System.out.print("左边计算到" a[0] "位\n");
for(i=b[0];i=1;i--)
System.out.print(b[i]);
System.out.print("右边计算到" b[0] "位\n");
for(i=a[0],j=b[0];jingque==true;i--,j--)
if(a[i]==b[j])
System.out.print(a[i]);
else
jingque=false;
System.out.print("精确到" (a[0]-i-1) "位\n");
}
}
class hanshucheng
{
public static void cheng( int a[],int b[],int s[])//定义两数相乘的函数
{
int flag=0,flag1=0;
int number=b[0];
int c[]=new int[1000];
int i,j,k,u;
for(int i1=0;i11000;i1)
s[i1]=0;
for(i=1;i=number;i)
{
for(int i1=0;i11000;i1)
c[i1]=0;
for(j=i,k=1;jnumber i;j,k)
{
c[j]=(a[k]*b[i] flag);
flag=(a[k]*b[i] flag)/10;
}
if (flag!=0)
{
c[j]=flag;
flag=0;
j=j 1;
}
c[0]=j-1;
//for(k=1;k=c[0];k)
//System.out.println("c=" c[k]);
for(k=1;k=c[0];k)
{ u=s[k];
s[k]=(u c[k] flag1);
flag1=(u c[k] flag1)/10;
}
if(flag1!=0)
{
s[k]=flag1;
k=k 1;
flag1=0;
}
s[0]=k-1;
// for(k=0;k=s[0];k)
//System.out.println(s[k]);
}
}
}
class hanshuadd
{
public static void add(int a[],int b[],int c[])//定义两数相加的函数
{
int flag=0;int i,j,k;
int a1[]=new int[1000];
for(i=1;i=b[0];i)
a1[i]=0;
for(j=b[0]-a[0] 1,k=1;j=b[0];j,k)
a1[j]=a[k];
//for(k=0;k=j;k)
//System.out.println("a1=" a1[k]);
for(i=1;i=b[0];i)
{
c[i]=(a1[i] b[i] flag);
flag=(a1[i] b[i] flag)/10;
}
if(flag!=0)
{
c[i]=flag;
i=i 1;
flag=0;
}
c[0]=i-1;
}
}
class hanshuchu
{
public static void chu(int d[],int a[])//定义任一数除以2的函数
{
int flag=0,i;
for(i=a[0];i=1;i--)
{
d[i 1]=(flag*10 a[i])/2;
flag=(flag*10 a[i])%2;
}
if(flag!=0)
d[1]=5;
if(d[1]==0)
for(i=1;i=a[0] 1;i)
d[i]=d[i 1];
d[i]=0;
d[0]=a[0] 1;
}
}
class hanshucopy
{
public static void copy(int a[],int b[])//定义
{
int i;
for(i=0;i=b[0];i)
a[i]=b[i];
while (i1000)
a[i]=0;
}
}
java如何开根号?JAVA凡是涉及数学java开运算代码的符号前面都要加MATH 。
class A{
public static void main(){
double m=4.0;
double n=Math.sqrt(m);
System.out.println(n);
}
}
扩展资料java开运算代码:
java实现开根号的运算java开运算代码:
public static void main(String[] args) { long start = System.currentTimeMillis(); double
target=9876543212345d; double result =sqrt(target);
System.out.println("sqrt耗时:" (System.currentTimeMillis()-start) ",result:" result);
start=System.currentTimeMillis();
result =SqrtByBisection(target, 0);
System.out.println("SqrtByBisection耗时:" (System.currentTimeMillis()
start) ",result:" result);
start=System.currentTimeMillis();
result = SqrtByNewton(target, 0);
System.out.println("SqrtByNewton耗时:" (System.currentTimeMillis()
start) ",result:" result);
}
制作java计算器时怎样让它实现开平方功能?代码是什么java设计计算器,主要是使用java swing , 对每个按钮进行监听 , 实现相关功能,如下代码:
package com.qiu.lin.he;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
public class Jisuanqi extends JFrame implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
Result result = new Result(); // 定义text的面板
Number_Key number_key = new Number_Key(); // 定义按钮面板
// 当点击按钮 、-、*、/时,com = true
boolean com = false;
// 当i=0时说明是我们第一次输入,字符串text不会累加
int i = 0;
// 存放text的内容
String text = "";
// 存放点击按钮 、-、*、/之前的数值
double defbutton = 0;
//、-、*、/的代号分别为1 , 2,3,4
int symbol = 0;
// 构造函数
Jisuanqi() {
super("WangJiao"); // 设定标题
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设定关闭窗体时退出程序
JPanel pane = new JPanel(); // 定义主面板
pane.setLayout(new BorderLayout());
setBounds(380, 220, 30, 80); // 前两个参数是在屏幕上显示的坐标,后两个是大小
// 替换图标
ImageIcon icon = new ImageIcon("F:1.GIF");
// Jisuanqi.class.getResource("APPLE.GIF")
// );
setIconImage(icon.getImage());
pane.add(result, BorderLayout.NORTH);
pane.add(number_key, BorderLayout.CENTER);
pane.add(number_key.equal, BorderLayout.SOUTH);
number_key.one.addActionListener(this); // 对1按钮添加监听事件
number_key.two.addActionListener(this); // 对2按钮添加监听事件
number_key.three.addActionListener(this); // 对3按钮添加监听事件
number_key.four.addActionListener(this); // 对4按钮添加监听事件
number_key.five.addActionListener(this); // 对5按钮添加监听事件
number_key.six.addActionListener(this); // 对6按钮添加监听事件
number_key.seven.addActionListener(this); // 对7按钮添加监听事件
number_key.eight.addActionListener(this); // 对8按钮添加监听事件
number_key.nine.addActionListener(this); // 对9按钮添加监听事件
number_key.zero.addActionListener(this); // 对0按钮添加监听事件
number_key.ce.addActionListener(this); // 对置零按钮添加监听事件
number_key.plus.addActionListener(this); // 对 按钮添加监听事件
number_key.equal.addActionListener(this); // 对=按钮添加监听事件
number_key.sub.addActionListener(this); // 对-按钮添加监听事件
number_key.mul.addActionListener(this); // 对*按钮添加监听事件
number_key.div.addActionListener(this); // 对/按钮添加监听事件
number_key.point.addActionListener(this); // 对.按钮添加监听事件
setContentPane(pane);
pack(); // 初始化窗体大小为正好盛放所有按钮
}
// 各个按钮触发的事件
public void actionPerformed(ActionEvent e) {
/*
* 如果是点击数字按钮那么先要判断是否在此之前点击了 、-、*、/、=,如果是那么com=true 如果没有com=
* false;或者是否点击数字键 , 如果是i = 1,如果没有 i = 0;
*/
if (e.getSource() == number_key.one) {
if (com || i == 0) {
result.text.setText("1");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"1");
}
} else if (e.getSource() == number_key.two) {
if (com || i == 0) {
result.text.setText("2");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"2");
}
} else if (e.getSource() == number_key.three) {
if (com || i == 0) {
result.text.setText("3");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"3");
}
} else if (e.getSource() == number_key.four) {
if (com || i == 0) {
result.text.setText("4");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"4");
}
} else if (e.getSource() == number_key.five) {
if (com || i == 0) {
result.text.setText("5");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"5");
}
} else if (e.getSource() == number_key.six) {
if (com || i == 0) {
result.text.setText("6");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"6");
}
} else if (e.getSource() == number_key.seven) {
if (com || i == 0) {
result.text.setText("7");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"7");
}
} else if (e.getSource() == number_key.eight) {
if (com || i == 0) {
result.text.setText("8");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"8");
}
} else if (e.getSource() == number_key.nine) {
if (com || i == 0) {
result.text.setText("9");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text"9");
}
}
/*
* 对于0这个按钮有一定的说法,在我的程序里不会出现如00000这样的情况 , 我加了判断条件就是
* 如果text中的数值=0就要判断在这个数值中是否有.存在?如果有那么就在原来数值基础之上添 加0;否则保持原来的数值不变
*/
else if (e.getSource() == number_key.zero) { // result.text.getText()是得到text里内容的意思
if (com || i == 0) {
result.text.setText("0");
com = false;
i = 1;
} else {
text = result.text.getText();
if (Float.parseFloat(text)0 || Float.parseFloat(text)0) { // Float.parseFloat(text)就是类型转换了,下面都是一样
result.text.setText(text"0");
} else {
if (text.trim().indexOf(".") == -1) {
result.text.setText(text);
} else {
result.text.setText(text"0");
}
}
}
} else if (e.getSource() == number_key.ce) {
result.text.setText("0");
i = 0;
com = true;
// text = "";
defbutton = 0;
}
/*
* 本程序不会让一个数值中出现2个以上的小数点.具体做法是:判断是否已经存在.存在就不添加, 不存在就添加.
*/
else if (e.getSource() == number_key.point) {
if (com || i == 0) {
result.text.setText("0.");
com = false;
i = 1;
} else {
text = result.text.getText();
if (text.trim().indexOf(".") == -1) {
result.text.setText(text".");
} else {
result.text.setText(text);
}
}
} // 获得点击 之前的数值
else if (e.getSource() == number_key.plus) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
symbol = 1;
} // 获得点击-之前的数值
else if (e.getSource() == number_key.sub) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
symbol = 2;
} // 获得点击*之前的数值
else if (e.getSource() == number_key.mul) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
System.out.println(defbutton);
symbol = 3;
} // 获得点击/之前的数值
else if (e.getSource() == number_key.div) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
symbol = 4;
} else if (e.getSource() == number_key.equal) {
switch (symbol) {
java开运算代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 运算、java开运算代码的信息别忘了在本站进行查找喔 。

    推荐阅读