更新時(shí)間:2020-08-04 16:00:12 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2278次
題目:古典問(wèn)題:有一對(duì)兔子,從出生后第3個(gè)月起每個(gè)月都生一對(duì)兔子,小兔子長(zhǎng)到第三個(gè)月后每個(gè)月又生一對(duì)兔子,假如兔子都不死,問(wèn)每個(gè)月的兔子總數(shù)為多少?
public?class?Example1{
public?static?void?main(String?args[]){
//i是表示月份的,這里計(jì)算了36個(gè)月,也就是三年,兔子的數(shù)量
int?i;
long?arr[]=new?long[36];???//這個(gè)數(shù)組時(shí)用來(lái)計(jì)算每月有兔子的對(duì)數(shù)
arr[0]=arr[1]=1;
System.out.println("第1個(gè)月有兔子1對(duì)"+",?"+"總數(shù)是"+2);
System.out.println("第2個(gè)月有兔子1對(duì)"+",?"+"總數(shù)是"+2);
for(i=2;i<=35;i++){
arr[i]=arr[i-1]+arr[i-2];
System.out.println("第"+i+"個(gè)月有兔子"+arr[i]+"對(duì)"+",?"+"總數(shù)是"+2*arr[i]);
//規(guī)律是?每個(gè)數(shù)字都是前面兩個(gè)數(shù)字之和
}
}
}
題目:判斷101-200之間有多少個(gè)素?cái)?shù),并輸出所有素?cái)?shù)。
素?cái)?shù)又叫質(zhì)數(shù),就是除了1和它本身之外,再也沒(méi)有整數(shù)能被它整除的數(shù)。也就是素?cái)?shù)只有兩個(gè)因子。
public?class?Example2?{
public?static?void?main(String?args[]){
????int?i,j,n,m,x;??????//n是用來(lái)存儲(chǔ)余數(shù)的;m是用來(lái)統(tǒng)計(jì)具體一個(gè)數(shù)的因子;
????n=0;m=0;x=0;????????//x是用來(lái)統(tǒng)計(jì)101~200之前素?cái)?shù)的個(gè)數(shù)
????for(i=101;i<=200;i++){?????????????//兩重循環(huán)
???? for(j=1;j<=i;j++){
????????????n=i%j;????????????????????//去余數(shù),如果余數(shù)為零,就是該數(shù)的因子
????????????if(n==0)??{?m=m+1;?}??????//統(tǒng)計(jì)某數(shù)有多少個(gè)因子
????????????}?
?????if(m==2){System.out.print(i+"?");?x=x+1;}?//如果某數(shù)的因子只有兩個(gè),那它就一定是素?cái)?shù),那這個(gè)數(shù)就應(yīng)該輸出
???? ??m=0;????????????//一定要清零,不然會(huì)繼續(xù)累加
???? }
???????System.out.println();
???????System.out.println("在101~200之間一共有素?cái)?shù):"+x+"個(gè)");
???? }
???}
題目:打印出所有的"水仙花數(shù)",所謂"水仙花數(shù)"是指一個(gè)三位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如:153是一個(gè)"水仙花數(shù)",因?yàn)?53=1的三次方+5的三次方+3的三次方。想當(dāng)年,做這些題都是網(wǎng)上找答案,如今事過(guò)境遷,不會(huì)也得會(huì)。
public?class?Example3?{
public?static?void?main(String?args[]){
int?a,sum;?????//表示100~999
int?i,j,k;//分別表示百位、十位、各位
for(a=100;a<=999;a++){
i=a/100;
j=(a-i*100)/10;
k=a-i*100-j*10;
sum=i*i*i+j*j*j+k*k*k;
//java的運(yùn)算符,立方要這樣寫(xiě),寫(xiě)成i^3這樣,竟然運(yùn)算不出來(lái)
//如果遇到高次的話可以使用循環(huán)算出來(lái)
if(sum==a)
{?System.out.println(sum);
}
}
還是有學(xué)到點(diǎn)東西,應(yīng)該還有別的方法。那我就試試吧。
public?class?Example4?{
public?static?void?main(String?args[]){?
???????int?sum;????
???????int?i,j,k;//分別表示百位、十位、各位
??????for(i=1;i<=9;i++){
???? ??for(j=0;j<=9;j++){
???? ??for(k=0;k<=9;k++){
???? ??sum=i*i*i+j*j*j+k*k*k;
???? ??if(i*100+j*10+k==sum){
???? ??System.out.println(sum);
???? ??}
???? ??}
???? ??}
??????}
???????
???}
}
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“幾道Java初學(xué)者編程練習(xí)題分享”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743