Adivina el número: para un número entero positivo entre 1 y 100, da el resto del número dividido por 3, 4 y 7, y adivina cuál es el número.

Esta es una pregunta en la plataforma ACM de la escuela. Encontré este problema antes y no sabía cómo diseñar el algoritmo, así que encontré un artículo similar sobre csdn. El código es muy corto, pero el algoritmo es un poco difícil y requiere algunas habilidades matemáticas, lo cual no es fácil de entender. El algoritmo se explicará en menos espacio.
El siguiente es el código que escribí. La idea es muy simple. Es usar el bucle for para juzgar uno por uno, y generar si se cumple la condición. Al mismo tiempo, use la bandera para grabar una vez. Si todos los números están marcados uno por uno y la bandera = 0, significa que no se puede encontrar ningún número elegible.

Pregunta:
Para un número entero positivo entre 1 y 100, dé el resto de dividir el número entre 3, 4 y 7, y adivine cuál es este número. Ingrese los tres restantes de dividir el número por 3, 4 y 7 en una línea. Si la respuesta es única, envíe el número entero adivinado por la computadora en una línea. Si la respuesta no es única, envíe cada número entero que cumpla con esta condición en una línea, separado por un punto y coma (también hay un punto y coma después del último número entero). Si no hay un entero calificado, la salida "no hay solución".
Entrada de muestra
1 0 5
Salida de muestra
40;
implementación de código:

#include<stdio.h>
int main()
{
    
    
    int t, f, s, i = 1,sum = 0;
    int flag = 0;
    scanf("%d%d%d", &t, &f, &s);
    for (i; i <= 100; i++)
    {
    
    
        if (i % 3 == t && i % 4 == f && i % 7 == s)
        {
    
    
            printf("%d;", i);
            flag = 1;
        }
        else
        {
    
    
            flag = 0;
        }
        sum += flag;
    }
    if (sum == 0)
    {
    
    
        printf("no solution");
    }

    return 0;
}

Por primera vez escribiendo un blog, si hay algunos errores, por favor comprenda.

Supongo que te gusta

Origin blog.csdn.net/qq_46541463/article/details/105398914
Recomendado
Clasificación