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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Re: Porcentaje de numeros primos en un vector en: 23 Enero 2017, 00:03 am
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,r;
  47.    for(i=0;i<n;i++){
  48.            for(j=2;j<a[i];j++){
  49.                if(a[i]%j==0){
  50.                    acu++;
  51.                    break;
  52.                }
  53.                r=n-acu;
  54.                return (r/n)*100;
  55.            }
  56.    }
  57. }
  58.  

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!!
2  Programación / Programación C/C++ / Re: Porcentaje de numeros primos en un vector en: 22 Enero 2017, 21:58 pm
No se que estare haciendo mal pero no me sale :(
3  Programación / Programación C/C++ / Re: Porcentaje de numeros primos en un vector en: 22 Enero 2017, 08:01 am
Código:
for(j=2;j<a[i];j++){
                if(a[i]%j==0){
                    acu++;
                    break;
                }

            }
                r=n-acu;


Si es que le entendi bien engel lex algo no me sale o le entendi mal no se pero el acumulador se me queda en 0.
4  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