Idea de resolución de problemas: puede ver el problema, 4、7、10、1000余3的余数全部为1
y
luego puede obtener la condición de juicio :,
if(i%3==1) {减} else {加}
Luego comience a escribir nuestro código:
int count = 0;
for (int i = 1; i <= 1000; i++) {
if (i % 3 == 1) {
count = count - i;
} else {
count = count + i;
}
}
System.out.println("count:" + count);
结果:166166
Parece que se ha encontrado un problema, ¡pero el resultado parece incorrecto! Tomemos un descanso y echemos un vistazo.
i=1
El 余3
resultado es 1
que no necesitamos 1
restar, sino agregar, el código optimizado:
int count = 0;
for (int i = 1; i <= 1000; i++) {
if ((i % 3 == 1) && i != 1) {
count = count - i;
} else {
count = count + i;
}
}
System.out.println("count:" + count);
Condición de juicio agregada :, i != 1
resultado:166168
正确!
还有一种写法:
int count = 0;
for (int i = 1; i <= 1000; i++) {
if (((i - 1) % 3 == 0) && i > 1) {
count = count - i;
} else {
count = count + i;
}
}
System.out.println("count:" + count);