質問
いるプログラムを書くの整数と1 100る割から6または7 ず.
こちらは自分のコード:
import acm.program.*;
public class Problem4 extends ConsoleProgram
{
public void run()
{
for (int i = 1; i <= 100; i++)
{
boolean num = ((i % 6 == 0) || (i % 7 == 0));
if (num == true)
println(i + " is divisible");
}
}
}
上記のコードでは、以下の回答:6,7,12,14,18,21,24,28,30,35,36,42,48,49,54,56,60,63,66,70,72,77,78,84,90,91,96,98
現在の大胆な数42 84もdivisbile6および7.現在の場に変更したい ||
へ &&
上記のコードをされることに注意してください42 84.
どのような変更すればよいの除去2番から最終的な結果は?
解決
まずは自分の状況のように見え:
boolean num = (i % 6 == 0 || i % 7 == 0) && !(i % 6 == 0 && i % 7 == 0);
これは基本的に転換"ず"Javaコード:)
他のヒント
XORのかかるものと思われます。
import acm.program.*;
public class Problem4 extends ConsoleProgram {
public void run() {
for (int i = 1; i <= 100; i++) {
if ( (i % 6 == 0) ^ (i % 7 == 0) ) {
println(i + " is divisible");
}
}
}
}
必要な追加確認"が".と思うのです:
boolean num=((i%6==0)||(i% 7 == 0)) && (i%42!= 0);
もできます
boolean num = ((i % 6 == 0) != (i % 7 == 0));
どうしたらよいか、というすで割り切れによる6-7---すべての答えを宇宙です。
import acm.program.*;
public class Problem4 extends ConsoleProgram
{
public void run()
{
for (int i = 1; i <= 100; i++)
{
boolean num = ((i % 6 == 0) || (i % 7 == 0));
boolean both = ((i % 6 == 0) && (i % 7 == 0));
if ((num == true) && (both == false))
println(i + " is divisible");
}
}
}
ここでは、スニペットをとてもC++でも変更boolean...
int value;
if ((value % 6 == 0 && value % 7 != 0) || (value % 6 != 0 && value % 7 == 0))
cout << "Is " << value << " divisible by 6 or 7, but not both? true" << endl;
else
cout << "Is " << value << " divisible by 6 or 7, but not both? false" << endl;
少し簡易版
for(int i=1; i<=100; i++) {
// Either Divisible by 6 or 7 but not both
if((i%6==0 && i%7!=0) ||( i%7==0 && i%6!=0)) {
println(i);
所属していません StackOverflow