【问题标题】:Conditionals without actually using any conditional statements?没有实际使用任何条件语句的条件?
【发布时间】:2017-09-19 21:10:42
【问题描述】:

我正在学习入门级 Java 课程,但我们的第一个作业让我难过,主要是因为要求不方便。

如果输入是介于 0 和 4 之间的整数,则输出 y 应等于输入 x 的值的两倍。

如果输入是介于 5 和 9 之间的整数,则输出 y 应等于输入 x 的值。

如果输入 x 是 10 到 14 之间的整数,则输出 y 应等于 0。

代码不得使用“if”语句、“switch-case”语句、“for”循环、“while”循环、布尔变量或布尔表达式

如果不实际使用条件语句,我将如何做到这一点?

【问题讨论】:

  • 只是为了上下文,章节、讲座、部分的标题是什么?
  • 这可以通过查找表轻松解决:int[] lookupTable = { 0, 2, 4, 6, 8, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0 }; return lookupTable[x];
  • int y = x * (2 - (x / 5));
  • @FredLarson:众所周知,规格总是完美的;如果不在规范中,则不会发生;-)
  • 嗯...我想我找了一个模式并找到了一个。

标签: java math


【解决方案1】:

您可以使用一个简单的数学方程式:

int y = x * (2 - (x / 5));

【讨论】:

  • 我喜欢这个,这很聪明。 +1
  • 为了确定,我会输入...((int)x / 5)
  • 如果你想要我的支持,你需要解释为什么这样做。
猜你喜欢
  • 2021-11-16
  • 1970-01-01
  • 2022-11-05
  • 1970-01-01
  • 2016-06-20
  • 1970-01-01
  • 1970-01-01
  • 2021-11-30
  • 2021-01-27
相关资源
最近更新 更多