Código (c) [Seleccionar]
#include<stdio.h>
#define LONG_VECTOR 20
char validar(int n);
void generarValores(int a[],int n);
void imprimirValores(int a[],int n);
float porcentajePrimos(int a[],int n);
int main(){
int valores[LONG_VECTOR], n;
printf("Ingrese la dimension: ");
scanf("%d", &n);
if(validar(n)=='n'){
printf("Error: Numero no valido!");
return -1;
}
generarValores(valores, n);
printf("Valores generados: \n");
imprimirValores(valores, n);
printf("\nPorcentaje de numeros primos: %.1f", porcentajePrimos(valores, n));
return 0;
}
char validar(int n){
if(n>20){
return 'n';
}else{
return 0;
}
}
void generarValores(int a[],int n){
int i;
for(i=0;i<n;i++){
a[i]=rand()%51;
}
}
void imprimirValores(int a[],int n){
int i;
for(i=0;i<n;i++){
printf("%d\t",a[i]);
}
}
float porcentajePrimos(int a[],int n){
int i,j,acu=0,r;
for(i=0;i<n;i++){
for(j=2;j<a[i];j++){
if(a[i]%j==0){
acu++;
break;
}
r=n-acu;
return (r/n)*100;
}
}
}
No se que es lo que estará mal...le intenté hacer tambien con una función aparte que me de los primos y los no primos pero tampoco me salio!!