给定:如果一个数字可以被3整除,那么它就被认为是嘶嘶作响。如果它能被5整除,就被认为是嗡嗡声。如果它可以被3和5整除,就被认为是嘶嘶作响。嘶嘶声既不是嘶嘶声也不是嗡嗡声。给定两个数字n1和n2,使n2
计算并返回3*f 5*b-15*fb的值?
我的方法:
我使用了问题中给出的所有条件,但我不知道如何使用这个条件“嘶嘶声既不是嘶嘶声也不是嗡嗡声”
我得到了错误的输出可能是因为这一点,任何人都可以指导我如何解决这个问题。
public int calcFB (int n1, int n2)
{
int f=0;
int b=0;
int fb=0;
for(int i=n1;i<=n2;i++)
{
if((i%3==0)&&(i%5==0))
{
fb++;
}
else if(i%3==0)
{
f++;
}
else if(i%5==0)
{
b++;
}
}
return 3*f+5*b+15*fb;
}
对于输入:
Parameters Actual Output Expected Output
'1' '21' 56 18
你的方法基本上是正确的。短语"A fizzbuzz is not fizz or buzz"
只是指在计算中不要重复计算数字。
这是因为早期的定义本身:
可以读取(例如)将数字15
作为fizz
、buzz
和fizzbuzz
,因为15
肯定可以被3
和5
整除
额外的短语阐明了这一点,15
的倍数仅为fizzbuzz
(既不是fizz
也不是buzz
)。事实上,你的代码已经解释了这个短语,因为它首先会检查fizzbuzz
,如果找到,就会直接转到下一个数字。
你得到错误答案的原因很简单,你在添加15*fb
,而规范明确指出你需要减去这个术语:
3*f+5*b-15*fb
^
here
如果你在做加法,你会得到48的结果(而不是你在问题中说的56,这需要范围的上端是25,而不是21)。减法会得到18的正确答案。
在你的返回声明中,你添加了15*fb,在你对问题的描述中,你说公式是3*f5*b-15*fb。所以你需要用这个返回语句减去15*fb:
return 3*f+5*b-15*fb
问题内容: 在Java中,尝试{…}最终{…}在我看来有点不直观。如另一个问题所示,“最终是否总是在Java中执行?,如果try块中有return语句,则在定义了finally块的情况下将忽略该语句。例如功能 将始终返回false。我的问题:这是为什么?Java做出的这种设计决策背后是否有特定的哲学?我感谢任何见解,谢谢。 编辑:我对“为什么” Java认为可以违反我定义的语义特别感兴趣。如果我在
有时它可以返回多个结果。因此,我不认为会起作用。 如何在Python中计算行数?就像在PHP中一样,我可以使用。 我找不到任何方法来做这件事。我正在使用Python3。 我对python MySQL绝对是新手。我对PHP中的MySQL真的很熟悉。 您可以使用来实现。但是,出于我的好奇:有没有方法直接使用pymysql来实现它?
我需要从类B中的方法C返回一个值。 我希望我的代码像这样处理:1 - 2 - 3 - 4 - 5 但它的处理方式是:1-4-5-2-3 (如您所见,我在代码中添加了一些日志。) 我已经处理这个问题一个多星期了,但我找不到问题。 我在这个问题中删除了一些无用的代码。 问题是什么?我如何解决这个问题? 我重写了这篇文章,因为有人说我把代码缩短得太多了。 希望足够了! 提前谢谢你!
问题内容: 我的JSON有问题。它可以在PHP 5.3中正确返回(因此我不能使用json_last_error()),并且在我将字符串显式复制到json_decode(json_decode(’{…}’)中时成功返回。结果作为变量,我正在使用php 5.2,这是我需要的。 输出来自PHPUnit中的JSON日志记录: 编辑:这些是我一直在探索的路径-也许您是一个更好的探索者。.三种可能的路径可以帮
我的JavaFX/Java计算器有问题。当我输入一个方程式时,它(计算器)工作正常,答案也正确。但是,当我在另一个操作中按下/键,然后再按下另一个数字时,结果/和/等将不正确,除非我按下/键的运算符与之前相同。下面是一个例子: 工程量:26=82=10 不起作用:26=8-2=10 工程:6x2=12x2=26 不起作用:6x2=12÷2=26 我想知道有没有办法解决这个问题。 这是我的FXML控
正在尝试检索mp3信息(唱片名,…)使用MediaMetadataRetriever。在模拟器中,它运行良好。在我的设备上,大多数方法都返回null。 MediaMetadataRetriever mmr=新的MediaMetadataRetriever();嗯。setDataSource(songPath); 字符串albumName=mmr。extractMetadata(MediaMetad