java编程50_java经典50编程题(1-10)
1.有一對兔子從出生后第三個(gè)月起,每個(gè)月都生一對小兔子,小兔子長到三個(gè)月后每個(gè)月又生一對兔子,假設(shè)兔子不死亡,問每個(gè)月兔子的總數(shù)為多少?
分析過程
圖片發(fā)自簡書App
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:一開始我以為這就是菲波那切數(shù)列問題,后來看了看,好像不是,仔細(xì)分析以后,有了那個(gè)思考過程,發(fā)現(xiàn)又是菲波那切數(shù)列。2.請輸出101-202之間所有的素?cái)?shù)。
分析過程:素?cái)?shù)是它只能因式分解為1和它本身的乘積。也就是說素?cái)?shù)不能被2到它本身的這些數(shù)整除。其中它的根方到它本身這些數(shù)不用計(jì)算,只需要判斷它能否被2到它的根方這些數(shù)整除即可。
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:在邏輯控制輸出部分,用到了布爾值的變化來控制。值得借鑒3.輸出所有的水仙花數(shù)。
分析過程:水仙數(shù)首先是一個(gè)三位數(shù),每個(gè)數(shù)位上的立方的和恰好等于這個(gè)數(shù)。從100遍歷到999即可判斷出來。
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:java里面的Math里面的函數(shù),真像c需要里面。4.將一個(gè)正整數(shù)分解質(zhì)因數(shù)如30=2×3×5
分析過程:正整數(shù),首先它是非質(zhì)數(shù),從2開始除起,能夠整除,再返回從2整除,不能夠整除,除數(shù)變?yōu)?+1=3,重復(fù)上面步驟。后面的除數(shù)4等等的非質(zhì)數(shù)的除數(shù),因?yàn)樵诖酥岸家呀?jīng)將它們的質(zhì)因子除盡,在判斷它們是僅僅一帶而過。
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:在最后一個(gè)質(zhì)因子輸出,直接判斷是否與n相等。完美的將分解式表達(dá)出來。5.利用條件運(yùn)算符的嵌套完成對應(yīng)成績等級的輸出。大于等于90為A,60到89為B,小于60為C.
分析過程:Java種的條件運(yùn)算符是指如下表達(dá)式: 關(guān)系表達(dá)式 ? 表達(dá)式1 : 表達(dá)式2,用來進(jìn)行邏輯判斷。
求解關(guān)系表達(dá)式,根據(jù)關(guān)系表達(dá)式的布爾值決定取值:關(guān)系表達(dá)式的值為true時(shí)取表達(dá)式1的值;關(guān)系表達(dá)式的值為false時(shí)取表達(dá)式2的值。
1、條件運(yùn)算符的優(yōu)先級低于關(guān)系運(yùn)算符和算術(shù)運(yùn)算符,高于賦值運(yùn)算符。
2、JAVA中條件運(yùn)算表達(dá)式中的關(guān)系表達(dá)式值的類型必須為布爾類型,只能是true或false。
3、結(jié)合性也是右結(jié)合性。
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:運(yùn)算符的優(yōu)先性問題,表達(dá)式的嵌套問題。在本題中,score>=90選擇'A',否則則執(zhí)行score>=60?'B':'C'這語句,這樣就分出等級了。6.求兩個(gè)數(shù)的最大公約數(shù)和最小公倍數(shù)。
分析過程:輾轉(zhuǎn)相除法可以求得最大公約數(shù)。舉個(gè)例子演示一下這個(gè)算法的操作流程,如求1515和600的最大公約數(shù).
第一次:用1515除以600,商2余315;
第二次:用600除以315,商1余285;
第三次:用315除以285,商1余30;
第四次:用285除以30,商9余15;
第五次:用30除以15,商2余0。
1515和600的最大公約數(shù)是15。
最大公倍數(shù)為兩數(shù)之積除以最大公倍數(shù)。
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:古人智慧,發(fā)現(xiàn)了輾轉(zhuǎn)相除法這么牛逼的算法。仰望。7.輸入一行字符,統(tǒng)計(jì)其中的數(shù)字,字母,空格以及其他字符。
分析過程:將輸入的字符串轉(zhuǎn)化為字符數(shù)組,遍歷即可啊
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:java內(nèi)置api還是好用誒。這簡單的api能寫的出來,那么以后得復(fù)雜的api自己也能夠?qū)懗鰜韱?#xff1f;不如看看源碼。
你有沒有注意到eclipse在給出提示時(shí),多個(gè)方法相似,但又有那么一點(diǎn)不同,這叫做方法重載吧,和多態(tài)真尼瑪混亂。8.求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個(gè)數(shù)字。例2+22+222+2222+22222(此時(shí)共有5個(gè)數(shù)相加),幾個(gè)數(shù)相加有鍵盤控制。
分析過程:這個(gè)應(yīng)該算迭代相加吧。
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:說實(shí)話,這個(gè)我反思不到什么,我最近做了一個(gè)夢,夢見我想分析數(shù)據(jù),然后沒數(shù)據(jù),接著去弄數(shù)據(jù),去學(xué)了黑帽子。差不多這個(gè)流程吧。9.如果一個(gè)數(shù)的除了它本身以外所有因子的和恰好等于這個(gè)數(shù),我們能稱它為完全數(shù)。試輸出1000以內(nèi)的完全數(shù)。
分析過程:遍歷,遍歷,沒什么好方法
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:像肖申克的救贖里面的人,一刻都不能停下來。最最無聊以及沒狀態(tài)的時(shí)候,找些簡單的事來做。狀態(tài)好的時(shí)候,各種復(fù)雜的東西搞起啊。哈哈哈哈10.一球從100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地時(shí),共經(jīng)過多少米?第10次反彈多高?
分析過程:等比數(shù)列走起,結(jié)果為路程s=100(3-(1/2)^(n-2))高度為h=100*(1/
2)^n
示例代碼
圖片發(fā)自簡書App
運(yùn)行結(jié)果
圖片發(fā)自簡書App
反思拓展:在以后的有規(guī)律的表達(dá)式,數(shù)學(xué)研究工作者早就研究好相關(guān)公式,等你來調(diào)用。你要做的是理解這個(gè)公式。如果可以的話,你可以自己充當(dāng)數(shù)學(xué)研究人員。前者一般水平,后者才是科學(xué)工作者。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的java编程50_java经典50编程题(1-10)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 楼梯在哪个方位最吉利
- 下一篇: 奔驰glc冷却液标准电脑如何检查