2013-10-27 142 views
1

我的教授給我提供了一堆方法來填寫羅馬數字程序(以加法的格式,所以4 = IIII,9 = VIIII等)這兩種方法有什麼區別? JAVA

我很難理解有什麼區別在這兩種方法:

** 
    * This method prints, to the standard output and in purely additive 
    * notation, the Roman numeral corresponding to a natural number. 
    * If the input value is 0, nothing is printed. This 
    * method must call the method romanDigitChar(). 
    * @param val ? 
    */ 

    public void printRomanNumeral(int val) 
    { 

    } 

    ** 
    * This method returns the Roman numeral digit corresponding 
    * to an integer value. You must use a nested-if statement. 
    * This method cannot perform any arithmetic operations. 
    * @param val ? 
    * @return  ? 
    */ 

    public char romanDigitChar(int val) 

    { 

    } 

是romanDigitChar應該閱讀數字的數位,並且每次只返回一個數字嗎?如果是這樣,我不明白printRomanNumeral如何去調用它。

我研究過其他羅馬數字程序,但我似乎無法找到任何使用其他方法中調用的方法,就像我可以比較的其他方法。

任何意見是讚賞!

+1

這問題似乎更適合問你的教授。 – nhgrif

+1

沒錯,但我現在想做一些工作,現在是星期天。 – coinbird

回答

5

我假設romanDigitChar返回一個字符以獲得完全匹配的數字,例如,只有1,5,10,50,100等。 printRomanNumeral會重複調用這個已知值作爲數字來將它們轉換爲字符。我建議兩個嵌套循環,一個用於減少值的特定字符數量和一個提取每個值的數量。內部循環調用第二種方法。

我認爲他/她期望ASCII字符,儘管羅馬數字有特殊的Unicode字符。

+0

因此,對於romanDigitChar我可以這樣做:if(val <5){someString = someString + I}等等? – coinbird

+0

不,因爲那麼返回類型不是char(它可能是字符串),或者它是毫無意義的,因爲someString將是一個全局變量。這個想法是,你每次都會返回一個字符,而不是你問我。 –

+0

@CoinBird romainDigitChar返回一個羅馬數字字符。 –

1

對於初學者來說,romanDigitchar返回一個char(與給定的自然數對應的羅馬數字)。 printRomanNumeral不返回任何內容,但應打印羅馬數字。

0

Is romanDigitChar supposed to read a number digit by digit, and only return one digit at a time?是的,例如,如果你想打印兩個羅馬數字:IIII,VIIII。在您的 void printRomanNumeral(int val)方法,你需要做的:

public void printRomanNumeral(int val) 
{ 
     System.out.println(romanDigitChar(4)); 
     System.out.println(romanDigitChar(9));   
} 

但在你char romanDigitChar(int val)方法,你需要有一些種類的算法的自然數轉換成羅馬數字,像:

public char romanDigitChar(int val) 
    { 

     if(val == 4) { 
      //Return a roman digit 4. 
     } 
     if(val == 9) { 
      //Return a roman digit 9. 
     } 

     } 
+0

romanDigitChar說'這種方法不能執行任何算術運算。 ' –

+0

沒有一個char代表4的值,也沒有一個代表9的值... –

+0

@GermannArlington我向他提供了一個提示。如果我給他確切的答案,你認爲這會是一個好主意,因爲這是一項任務。 – MinGW

相關問題