elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Porcentaje de numeros primos en un vector en: 22 Enero 2017, 07:09 am
Hola a todos, resulta que soy principiante en esto de la programación y tengo que hacer un programa en que me genere de forma aleatoria una cantidad n (ingresada por el usuario) de números y que de todos esos números generados me salga el porcentaje de cuantos son números primos. Tengo ya generados los números lo que me falta es el porcentaje pero no me sale porfa ayudenme.
Esto es lo que he hecho hasta ahora:

Código
  1. #include<stdio.h>
  2. #define LONG_VECTOR 20
  3.  
  4. char validar(int n);
  5. void generarValores(int a[],int n);
  6. void imprimirValores(int a[],int n);
  7. float porcentajePrimos(int a[],int n);
  8. int main(){
  9.    int valores[LONG_VECTOR], n;
  10.    printf("Ingrese la dimension: ");
  11.    scanf("%d", &n);
  12.    if(validar(n)=='n'){
  13.        printf("Error: Numero no valido!");
  14.        return -1;
  15.    }
  16.    generarValores(valores, n);
  17.    printf("Valores generados: \n");
  18.    imprimirValores(valores, n);
  19.    printf("\nPorcentaje de numeros primos: %.1f", porcentajePrimos(valores, n));
  20.    return 0;
  21. }
  22. char validar(int n){
  23.    if(n>20){
  24.        return 'n';
  25.    }else{
  26.        return 0;
  27.  
  28.    }
  29. }
  30.  
  31. void generarValores(int a[],int n){
  32.    int i;
  33.    for(i=0;i<n;i++){
  34.        a[i]=rand()%51;
  35.    }
  36. }
  37.  
  38. void imprimirValores(int a[],int n){
  39.    int i;
  40.    for(i=0;i<n;i++){
  41.        printf("%d\t",a[i]);
  42.    }
  43. }
  44.  
  45. float porcentajePrimos(int a[],int n){
  46.    int i,j,acu=0;
  47.    for(i=0;i<n;i++){
  48.            for(j=2;j<a[i];j++){
  49.                if(a[i]%j!=0){
  50.                    acu++;
  51.                }
  52.            }
  53.        return (acu/n)*100;
  54.    }
  55. }
  56.  
  57.  


· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines