实验10.1:计算机科学任务

时间:2013-10-17 04:39:42

标签: java if-statement for-loop printing system.out

如果我还没有问过这个问题,请按照以下说明进行操作:

int t包含1到50(含)之间的整数。编写输出
的代码     单词中的数字并将结果存储在字符串中。例如,如果t为35则为
    inwords应该包含“三十五”。

这是我的代码:

int t = ; 
String inwords;
String[] Numbers = 49;

for (int i = 0; i < 50; i++){
    if (i % 10 = 0)
    if (i / 10 == 1)
            System.out.println("ten")
        else if (i / 10 == 2)
            System.out.println("twenty")
        else if (i / 10 == 3)
            System.out.println("thirty")
        else if (i / 10 == 4)
            System.out.println("
}

我所假设的问题是我没有办法缩短它。我可能错了,但是有更多可实施的模式比我已经看到的更多吗?我知道我的代码不完整,但我需要知道是否有一种我在这里看不到的模式。我的意思是,如果我已经发现自己输入每个分区符号,我将如何实现它。你看到代码得到了多长时间,不是吗?

所有帮助表示赞赏

PS,希望我对学校实验室的要求不高。

1 个答案:

答案 0 :(得分:0)

你可以这样做......

  1. 将数字转换为字符串,并检查其长度。
  2. 如果您的字符串长度为2,那么您知道您的号码中将包含2个单词,但数字10除外。

    一个。您检查字符串是什么,并附加相应的单词(十,二十等)。

    湾然后移动到字符串中的下一个数字,并将等效字符附加到字符串(一,二等)。

  3. 如果另一方面,您有1位数字,那么您只需重复步骤2b。
  4. 这种方法在处理10到12之间的数字时需要一些思考,但它应该做你需要的。

    此外,我不知道您的示例是否是您的编码方式,但您需要在Java中的if语句之后放置{},因此:if(boolean){ your logic }。在if语句之后不使用花括号只会使第一个语句执行。