Algoritmo: escriba un algoritmo para calcular el resultado de 1 + 2 + 3-4 + 5 + 6-7 + 8 + 9-10 ... + 998 + 999-1000.

Idea de resolución de problemas: puede ver el problema, 4、7、10、1000余3的余数全部为1y
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.
Inserte la descripción de la imagen aquí
i=1El 余3resultado es 1que no necesitamos 1restar, 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 != 1resultado: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);

Supongo que te gusta

Origin blog.csdn.net/weixin_42825651/article/details/108595977
Recomendado
Clasificación