num = [] //num es un array
funcion primo(n)
c = 0 //contador de divisores
para i = 1 hasta n
si n mod i == 0
c = c+1 //si es divisor incrementamos
fin-si
fin-para
si c == 2 //si el numero de divisores es 2, entonces el numero es primo
r = T //devuelve verdadero
sino
r = F //devuelve falso
fin-si
fin-primo
//principal
para i = 1 hasta 100
si primo(i)
num[i] = i //si el numero es primo lo agregamos al array
fin-si
fin-para
#include<stdio.h>
int PRIMO(int numero);
int main(){
int i, numero,cont=0,x;
printf("Digite un numero: ");
scanf("%i",&numero);
int PRIMO(int numero);
x = PRIMO(numero);
if (x==0){
printf("\nEl Numero es Compuesto");
}
else{
printf("\nEl Numero es Primo");
}
return 0;
}
int PRIMO(int numero){
int I=0;
int cont=0;
for(I=1;I<=numero;I++){
if(numero%I==0){
cont++;
}
}
if(cont>2){
return 0;
}
else{
return 1;
}
}
#include <stdio.h>
int main (){
int i, x, con=0, slot=0; double res=0;
int v[100];
for (i=0 ; i<=100; i ++){ // i = nominador
for(x=0; x<=100; x++){ //x = denominador
res=i%x;
if(res==0){ // x varia 100 veces. si el modulo de i y x es 0 con se eleva en 1
con++;
}
} // termina este For
if(con==2){ // si con es igual a 2, es que i solo tiene 2 divisores posibles,
v[slot]=i; // slot determina la pocision 0 del vector y i como es primo le asigna el valor.
slot++; //slot se incrementa en 1 para la proxima vez que entre el if.
}
}
printf("%i",v[100]); //imprime en pantalla los valores del vector
system("Pause");
return 0;
}
// Compilation results...
//--------
//- Errors: 0
//- Warnings: 0
//- Output Filename: C:\Users\Emanuel\Desktop\Practicas C\Array y numeros primos.exe
//- Output Size: 128,126953125 KiB
//- Compilation Time: 0,48s
// al compilarlo y ejecutarlo me tira una ventana que dice que Array y numeros primos.exe dejo de funcionar
#include <stdio.h>
int main()
{
int i, x,slot = 0;//Contadores y slot para posicion del número primo en el vector
int v[100];//Vector que almacenará los números primos
int res, con;//variable que alamacenará el resto y 'con' será una variable de salida
for(i = 2; i <= 100; i++)
{
con = 1;
for(x = 2; x < i && con; x++)//Si 'x' llega al número 'i' sin que el resto de la division sea 0 es primo
{
res = i%x;//Almacena el resto de la división
if(res == 0)//Si el resto de la división da 0 antes de llegar al número 'i' saldrá del bucle
{
con = 0;
}
}
if(con == 1)//Si el número es primo, es decir, 'con' siempre mantuvo el valor de 1
{
v[slot] = i;
slot++;//Aumentamos 'slot', es decir le damos un espacio extra al vector
}
}
/*Ejemplo i = 5 -> Cuando i sea dicho valor
* i % x
* res = 5 % 2; -> res = 1
* res = 5 % 3; -> res = 2
* res = 5 % 4; -> res = 1
*
* cuando x llegue e icremente y dirá 5 < 5 pues NO, y como el resto nunca fue 0 el número será primo
* */
for(i = 0; i < slot; i++)
{
printf("%i, ",v[i]);
}
return 0;
}