esta solución

Anuncio
Solución al Ejercicio 3.7
#include <stdio.h>
#define FALSO 0
#define CIERTO 1
void main()
{
int A, B, num, i, es_primo, suma;
/* Usamos un do-while para la comprobación de errores. */
do
{
printf("\nIntroduce el valor de A: ");
scanf("%d", &A);
printf("\nIntroduce el valor de B (mayor que A): ");
scanf("%d", &B);
if (A > B)
printf("\nEl valor de A debe ser menor que el de B");
} while (A > B);
/* Inicializamos la suma. */
suma = 0;
/* Analizamos los números en el intervalo [A,B]*/
/* Inicializamos num al primer valor del intervalo*/
num=A;
while (num <= B)
{
/* Comprobamos si "num" es primo o no */
es_primo = CIERTO;
i = 2;
while ( (i <= (num / 2)) && (es_primo==CIERTO) )
{
es_primo = (num % i != 0);
i++;
}
if (es_primo == FALSO)
suma = suma + num;
/*Incrementamos el valor de num para analizar el siguiente
elemento del intervalo*/
num++;
}
printf("\nLa suma de los no-primos entre %d y %d es %d\n",
A, B, suma);
}
Descargar