這是我應(yīng)聘時寫的算法代碼,運行成功:
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、東陽網(wǎng)絡(luò)推廣、成都微信小程序、東陽網(wǎng)絡(luò)營銷、東陽企業(yè)策劃、東陽品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供東陽建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com
//這是用java編寫的一個求2的平方根的程序,精確度可通過修改weishu參數(shù)來改變
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];
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;//定義循環(huán)次數(shù)
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[])//定義兩數(shù)相乘的函數(shù)
{
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)%10;
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)%10;
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[])//定義兩數(shù)相加的函數(shù)
{
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)%10;
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[])//定義任一數(shù)除以2的函數(shù)
{
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代碼實現(xiàn)
private static int demo(int number) {
String numberString = String.valueOf(number);
StringBuilder builder = new StringBuilder();
for (int i=0;inumberString.length();i++) {
int position = Integer.parseInt(numberString.substring(i,i+1));
builder.append((int)Math.pow(position, 2));
}
return Integer.parseInt(builder.toString());
}
資料拓展:
java對象的引用包括
強引用,軟引用,弱引用,虛引用
Java中提供這四種引用類型主要有兩個目的:
第一是可以讓程序員通過代碼的方式?jīng)Q定某些對象的生命周期;
第二是有利于JVM進行垃圾回收。
“java”的平方表達式是pow (double x,double y)。
函數(shù)原型:double pow (double x,double y)。
功能:返回x的y次方。
如要在java中求9的平方,可寫作double pow(double 9,double 9)。
平方是一種運算,比如,a的平方表示a×a,簡寫成a2,也可寫成a×a(a的一次方乘a的一次方等于a的2次方),例如4×4=16,8×8=64,平方符號為2。
Java是一門面向?qū)ο缶幊陶Z言,不僅吸收了C++語言的各種優(yōu)點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。Java語言作為靜態(tài)面向?qū)ο缶幊陶Z言的代表,極好地實現(xiàn)了面向?qū)ο罄碚摚试S程序員以優(yōu)雅的思維方式進行復(fù)雜的編程 。
Java具有簡單性、面向?qū)ο蟆⒎植际?、健壯性、安全性、平臺獨立與可移植性、多線程、動態(tài)性等特點。Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。
JAVA 里平方的用法:
1.直接將同一個數(shù)相乘;
int b=6;
int a = b*b;//兩個數(shù)相乘達到平方的效果
2.使用Math的pow方法求平方
//第一個參數(shù)是底數(shù),第二個數(shù)是指數(shù)
int b=6;
int a = Math.pow(b,2);//表示b的平方
Math.pow(x,2)就是平方。Math.pow(x,3)就是立方。
Math.pow(底數(shù),幾次方),如:double a=2.0,double b=3.0,double c=Math.pow(a,b),就是2的三次方是多少;c最終為8。
擴展資料:
Math.pow()?函數(shù)返回基數(shù)(base)的指數(shù)(exponent)次冪,即?base的exponent次冪。Java是一種簡單的,跨平臺的,面向?qū)ο蟮?,分布式的,解釋的,健壯的安全的,結(jié)構(gòu)的中立的,可移植的,性能很優(yōu)異的多線程的,動態(tài)的語言。
Java編程工具如下:
1、Eclipse:一個開放源代碼的、基于Java的可擴展開發(fā)平臺 。
2、NetBeans:開放源碼的Java集成開發(fā)環(huán)境,適用于各種客戶機和Web應(yīng)用。
3、IntelliJ IDEA:在代碼自動提示、代碼分析等方面的具有很好的功能。
4、MyEclipse:由Genuitec公司開發(fā)的一款商業(yè)化軟件,是應(yīng)用比較廣泛的Java應(yīng)用程序集成開發(fā)環(huán)境 。
5、EditPlus:如果正確配置Java的編譯器“Javac”以及解釋器“Java”后,可直接使用EditPlus編譯執(zhí)行Java程序 。
參考資料:百度百科——java
1、在java語言中求平方根的方法使用的是Math類的sqrt(a)方法;
2、使用的工具是Eclipse;
3、步驟如下:
(1)、在Eclipse中新建一個Java Project工程,輸入工程名;
(2)、在新建的工程中新建一個類,輸入類名;
(3)、在新建的類中編寫求平方根的代碼,如下:
public class Demo1 {
public static void main(String[] args) {
System.out.println(Math.sqrt(4));//求平方根方法
}
}
4、注意事項:需要注意的是使用Math.sqrt(a)返回的是一個double雙精度的值。