Files
Curso_de_Programacion_C/5. Arreglos unidimensionales/Programas/Programa 5.8/Programa 5.8.c
2022-11-16 18:28:01 -04:00

47 lines
904 B
C

#include <stdio.h>
/* Primos.
El programa almacena en un arreglo unidimensional los primeros 100 números primos. */
#define TAM 100
void Imprime(int, int); /* Prototipos de funciones. */
void Primo(int, int*);
void main(void)
{
int P[TAM] = { 1,2 };
int FLA, J = 2, PRI = 3;
while (J <= TAM)
{
FLA = 1;
Primo(PRI, &FLA); /* Se llama a la función que determina si PRI es primo. */
if (FLA) /* Si FLA es 1, entonces PRI es primo. */
{
P[J] = PRI;
J++;
}
PRI += 2;
}
Imprime(P, TAM);
}
void Primo(int A, int* B)
/* Esta función determina si A es primo, en cuyo caso el valor de *B no se altera. */
{
int DI = 3;
while (*B && (DI < (A / 2)))
{
if ((A % DI) == 0)
*B = 0;
DI++;
}
}
void Imprime(int Primos[], int T)
/* Esta función imprime el arreglo unidimensional de números primos. */
{
int I;
for (I = 0; I < T; I++)
printf("\nPrimos[%i]: %d", I, Primos[I]);
}