Java純乾貨分享:面試過程中遇到的那些經典邏輯問題
古典問題:一對兔子,從現在開始算起,到第3個月之後,每個月都生一對兔子,而出生的小兔子等到了第四個月,又會生一對小兔子,假設兔子都長生不死,求每個月兔子的數量。
分析問題,不難發現,兔子總數的規律為數列1,1,2,3,5,8,13,21....規律就是從第三個月開始,這個月的兔子數量等於上個月與上上個月的兔子總和,於是程式碼就不難了。

題二:判斷101-200之間有多少個素數,並且打印出來!
這是個簡單的演算法題,這裡只需要用一個for循壞,然後用一個判斷語句看看變數i是否能夠被2整除,不能則打印出 i。

題三:打印出所有的水仙花數
首先要明確一下水仙花數是什麼:水仙花數是指一個 3 位數,它的每個位上的數字的 3次冪之和等於它本身,就好比153,1^3 + 5^3+ 3^3 = 153。既然能夠找出規律,就不難設計出程式碼,設定三個變數,取一個三位數的百位十位各位數賦值給它們,然後設定這個數的冪並且相加的函式,只要符合則為turn,輸出即可。

題四::將一個正整數分解質因數。例:輸入90,打印出90=2*3*3*5。
這個也很簡單,首先輸入一個大一點的數,再設定一個逐漸增大的不為1的變數,讓這個大一點的數除以這個變數,能夠整除則返回這個變數的值,之後在迴圈相除,之後吧所有的變數用一定格式打印出來即可。

題五:利用條件運算子的巢狀來完成此題:學習成績=90分的同學用A表示,60-89分之間的用B表示,60分以下的用C表示。
這個是最簡單的,只需要讓使用者從控制檯輸入一個不大於100的值,然後用一些if和else語句判斷這個值在哪個區間裡,然後打印出來就可以了

其實,很多的問題都是類似的邏輯,只是相對來說更加複雜罷了,但是一個一個細細的拆分下來,不難發現,無非就是一些簡單的演算法和邏輯,而新手入門,最難改變的就是這種先天性的邏輯,只要清楚這些邏輯思想,那麼接下來程式設計界的大門就一直為你而開。