public static void main(String[] args){
成都創(chuàng)新互聯(lián)公司是一家專(zhuān)業(yè)提供盤(pán)錦企業(yè)網(wǎng)站建設(shè),專(zhuān)注與成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、HTML5、小程序制作等業(yè)務(wù)。10年已為盤(pán)錦眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
//獲取一個(gè)輸入流存入Scanner,按回車(chē)結(jié)束
Scanner input = new Scanner(System.in);
//從Scanner中讀出輸入的數(shù)
int num = input.nextInt();
//定義一個(gè)用來(lái)存放乘積的變量
int val = 1;
//將輸入值循環(huán)那么多次
for(int i = 1 ; i = num ; i++){
//每次將val*num賦給val
val *= num;
}
//在屏幕上顯示結(jié)果
System.out.println(val);
}
給你MAIN()函數(shù)
記住鍵盤(pán)輸入的值不要太大
我這個(gè)是在控制臺(tái)中操作
1. temp=new ComplexN();這句話是在初始化一個(gè)ComplexN對(duì)象,并且調(diào)用ComplexN的無(wú)參數(shù)構(gòu)造方法,但是你只在類(lèi)中定義了有參數(shù)的構(gòu)造方法,這樣至少是行不通的。只有在你沒(méi)寫(xiě)構(gòu)造函數(shù)的時(shí)候java虛擬機(jī)才會(huì)自動(dòng)給你加個(gè)構(gòu)造函數(shù)。
2.ComplexN temp;
temp=new ComplexN();
在方法中定義的對(duì)象在定義的時(shí)候必須被初始化,只有類(lèi)中的成員可以不在聲明的時(shí)候初始化,所以你可以這樣寫(xiě):
ComplexN temp = null;
temp=new ComplexN();
如:
//創(chuàng)建一個(gè)BigInteger對(duì)象可以傳其他類(lèi)型具體請(qǐng)查JDK_API文檔。
BigInteger bigInt = new BigInteger("2");
//調(diào)用bigInt中pow方法參數(shù)表示你想求多少次方。
BigInteger bigPow = bigInt.pow(2);
//最后將得到的結(jié)果轉(zhuǎn)成Long類(lèi)型,注意這里是向下轉(zhuǎn)型,可以會(huì)出現(xiàn)異常。
long bigLong = bigPow.longValue();
java中10的n次方的表示方式:
方法聲明:Math.pow(double ? m, ? double ?n)
參數(shù)說(shuō)明:m為要求方的數(shù),n為次方數(shù)
當(dāng)然如果你愿意也可以自己寫(xiě)個(gè)方法來(lái)實(shí)現(xiàn)m的n次方,實(shí)現(xiàn)起來(lái)也相當(dāng)簡(jiǎn)單。
下面是自己寫(xiě)的例子,我覺(jué)得用整數(shù)做參數(shù)就行了,一般都是整數(shù)去求方的。
public static long pow(long m, long n){
long result = 1L; ? ? ? ?//0次方時(shí)為1
for(int=0;in;i++){
result *= m; ? ? ? ? ?//每次乘上次計(jì)算次方的結(jié)果
}
return result; ? ? ? ? ? ?//計(jì)算好了,返回值
}
計(jì)算2的N次方
時(shí)間限制: 1000ms內(nèi)存限制: 65536kB
描述
任意給定一個(gè)正整數(shù)N(N=100),計(jì)算2的N次方的值。
輸入
輸入只有一個(gè)正整數(shù)N。
輸出
輸出2的N次方的值。
樣例輸入
5
樣例輸出
32
參考代碼
[java] view plain copy print?
import java.util.*;
public class Main {
public final static int SIZE = 30;
public static void main(String[] args) throws Exception {
Scanner cin = new Scanner(System.in);
int n = cin.nextInt();
int res[] = new int[SIZE + 1];
int i;
for(i = 0;i SIZE;++ i){
res[i] = 0;
}
res[0] = 1;
while(n 0){
for(i = 0;i SIZE;++ i){
res[i] *= 2;
}
for(i = 0;i SIZE;++ i){
if(res[i] 9){
res[i + 1] += res[i] / 10;
res[i] %= 10;
}
}
n --;
}
boolean bl = false;
StringBuffer bf = new StringBuffer();
for(i = SIZE;i = 0;-- i){
if(res[i] != 0 || bl){
bf.append(res[i]);
bl = true;
}
}
System.out.println(bf);
}
}
根據(jù)高位低位改進(jìn)的代碼:
[java] view plain copy print?
/*
* Title :power 2
* From :
* Time :2011-10-11 21:10PM
* Author :Eric Zhou,binfeihan
* Email :binfeihan@126.com
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader cin = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(cin.readLine().trim());
System.out.println(my_power_2(n));
//System.out.println(Long.MAX_VALUE);
//System.out.println(Long.MIN_VALUE);
}
public static StringBuffer my_power_2(int N){
StringBuffer v = new StringBuffer("");
long num[] = new long[2];
num[1] = 1;
if(N 62){
num[0] = 1;
num[0] = num[0](N - 62);
num[1] = num[1]62;
String s = String.valueOf(num[1]);
int size = 30,i = 0,j = 0;
long n[] = new long[size + 1];
//System.out.println(num[0]+" "+s);
for(i = s.length() - 1;i = 0;-- i){
n[j ++] = (long) (num[0] * (s.charAt(i) - '0'));
//System.out.println(n[j - 1]);
}
for(i = 0;i size;++ i){
while(n[i] 9){
n[i + 1] += n[i] / 10;
n[i] %= 10;
}
}
boolean bl = false;
for(i = size;i = 0;-- i){
if(n[i] != 0 || bl){
v.append(n[i]);
bl = true;
}
}
}else{
num[1] = num[1] N;
v.append(String.valueOf(num[1]));
}
return v;
}
}