我試圖寫一個遞歸函數會得到一些字符串,以及該字符串作爲其參數的lenght,然後打印出原始字符串在字符串中的元音,以及該字符串中元音的相反順序。例如,如果字符串是'Horse',那麼輸出將是'Horse eo'。打印原始字符串以及遞歸
什麼我遇到的麻煩是如何獲得,同時還得到了元音以相反的順序打印的原始字符串。我正在用僞代碼編寫這個函數,我只打印出反轉的元音如下。
MODULE VowelRecursion(String, n)
IF n != 0 THEN
letter := first letter of String
vowel := ""
IF letter == vowel THEN
vowel := letter
ENDIF
VowelRecursion(remainder of String, n-1)
Print(vowel)
ENDIF
ENDMODULE
就像我提到的,我的問題是,我無法弄清楚如何讓印刷原始字符串元音發現已經完成後,作爲原始字符串需要先打印,並這樣做是不是必須先返回n變爲0?但問題是,既然我們正在調用其餘串的功能,這將只是一個空字符串,當n == 0,對不對?
由於這是我需要解決學校的問題,我不找任何現成的解決方案,但我想聽到這裏我的思維過程是怎麼了,我可以用它來什麼樣的方法實現需要的東西。
謝謝。
謝謝。通過一些測試,看起來我可以立即開始工作。 – user1290164 2012-03-24 17:05:09