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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  No me reconoce Variable! Ayuda
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: No me reconoce Variable! Ayuda  (Leído 2,355 veces)
fercho17

Desconectado Desconectado

Mensajes: 4


Ver Perfil
No me reconoce Variable! Ayuda
« en: 21 Mayo 2013, 20:48 pm »

Hola Amigos!! Tengo el siguiente código y funciona bien, lo que pasa es que las variables pro y pro2 no me las reconoce para hacer la suma que esta en la variable resultadototal; le agradeceria el que pueda ayudarme!! Desde ya Gracias.

Aqui el codigo:
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include <string.h>
  5. #include <pthread.h>
  6.  
  7.  
  8. int P[100];
  9. int H[25],A[25], F[25], G[25];
  10. int i,sum = 0,sum2 = 0,sum3 = 0,sum4 = 0;
  11. float pro,pro1,pro2,pro3,pro4, resultadofinal ;
  12.  
  13.  
  14. void sacaraleatorios(){
  15.  
  16. for(i=0;i<100;i++)
  17.        P[i]=rand()%1000;
  18.        printf("Numeros Aleatorios \n" );
  19.    for(i=0;i<100;i++){
  20.        printf("%d",P[i]);
  21.        printf(",");
  22.  
  23.        }
  24.       printf("\n");
  25. }
  26.  
  27. void *usaSacaraleatorios(void *arg){
  28.    sacaraleatorios();
  29.    return NULL;
  30. }
  31.  
  32. void imprimealeatoriosparte1(){
  33.  
  34. memcpy (H,P,100*sizeof(int));
  35. printf("\n");
  36. //printf("Numeros Aleatorios 25  de H \n" );
  37.    for(i=0;i<25;i++){
  38.        //printf("%d ",H[i]);
  39.        //printf("\n");
  40.        sum=sum+H[i];
  41.        }
  42.        pro=sum/25;
  43.        printf("El promedio del Hilo1 es %.2f",pro );
  44.        printf("\n");
  45.  
  46.  
  47.  
  48. }
  49. void *usaImprimealeatorios(void *arg){
  50.    imprimealeatoriosparte1();
  51.    return NULL;
  52. }
  53.  
  54. void imprimealeatoriosparte2(){
  55. memcpy (A,P + 25, 100*sizeof(int));      
  56. //printf("Numeros Aleatorios 25  de A \n" );
  57.    for(i=0;i<25;i++){
  58.        //printf("%d ",A[i]);
  59.        //printf("\n");
  60.        sum2=sum2+A[i];
  61.        }
  62.        pro2=sum2/25;
  63.        printf("El promedio del hilo2 es %.2f",pro2 );
  64.        printf("\n");
  65.  
  66.  
  67.  }
  68. void *usaImprimealeatorios2(void *arg){
  69.    imprimealeatoriosparte2();
  70.    return NULL;
  71. }
  72. void imprimealeatoriosparte3(){
  73. memcpy (F,P + 50,100*sizeof(int));  
  74. //printf("Numeros Aleatorios 25  de F \n" );
  75.    for(i=0;i<25;i++){
  76.        //printf("%d ",F[i]);
  77.        //printf("\n");
  78.        sum3=sum3+F[i];
  79.        }
  80.        pro3=sum3/25;
  81.        printf("El promedio del Hilo3 es %.2f",pro3 );
  82.        printf("\n");
  83.  
  84. }
  85. void *usaImprimealeatorios3(void *arg){
  86.    imprimealeatoriosparte3();
  87.    return NULL;
  88. }
  89. void imprimealeatoriosparte4(){
  90. memcpy (G,P+75,100*sizeof(int));      
  91. //printf("Numeros Aleatorios 25  de G \n" );
  92.    for(i=0;i<25;i++){
  93.        //printf("%d ",G[i]);
  94.        //printf("\n");
  95.        sum4=sum4+G[i];
  96.        }
  97.        pro4=sum4/25;
  98.        printf("El promedio del Hilo4 es %.2f",pro4 );
  99.        printf("\n");  
  100.  
  101. }
  102. void *usaImprimealeatorios4(void *arg){
  103.    imprimealeatoriosparte4();
  104.  
  105.  
  106.  
  107.    return NULL;
  108. }
  109.  
  110.  
  111.  
  112. int main(int argc, char* argv[]){
  113.  
  114. srand(time(NULL));
  115. sacaraleatorios();
  116.  
  117.    pthread_t hiloHijo1;
  118.    pthread_t hiloHijo2;
  119.    pthread_t hiloHijo3;
  120.    pthread_t hiloHijo4;
  121.  
  122.    pthread_create(&hiloHijo1,NULL,usaImprimealeatorios,NULL) ;
  123.    pthread_join(hiloHijo1, NULL);
  124.  
  125.    pthread_create(&hiloHijo2,NULL,usaImprimealeatorios2,NULL) ;
  126.    pthread_join(hiloHijo2, NULL);
  127.  
  128.    pthread_create(&hiloHijo3,NULL,usaImprimealeatorios3,NULL) ;
  129.    pthread_join(hiloHijo3, NULL);
  130.  
  131.    pthread_create(&hiloHijo4,NULL,usaImprimealeatorios4,NULL) ;
  132.    pthread_join(hiloHijo4, NULL);
  133.  
  134.  
  135.     printf(" Hilo1 es %.2f",pro);
  136.     printf(" Hilo2 es %.2f",pro2 );
  137.     printf(" Hilo3 es %.2f",pro3 );
  138.     printf(" Hilo4 es %.2f",pro4 );
  139.  
  140.       resultadofinal = (pro + pro2 + pro3 + pro4 )/4;
  141.       printf("El promedio total  es: %f\n", resultadofinal);
  142.  
  143. return 0;
  144. }
  145.  
  146.  
  147.  


« Última modificación: 21 Mayo 2013, 21:09 pm por fercho17 » En línea

CCross

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: No me reconoce Variable! Ayuda
« Respuesta #1 en: 21 Mayo 2013, 21:00 pm »

Hola fercho17 debes incluir tu codigo entre las etiquetas geSHI de C por que asi
algunos caracteros simplemente no aparecen, es muy incomodo y confuso leer un
codigo asi.

Saludos  ;D


« Última modificación: 21 Mayo 2013, 21:03 pm por CCross » En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: No me reconoce Variable! Ayuda
« Respuesta #2 en: 21 Mayo 2013, 21:03 pm »

Hola fercho17 debes incluir tu codigo entre las etiquetas GeSHi de C++ porque asi
algunos caracteros simplemente no aparecen, y es muy incomodo leer un codigo asi.




Idem y de paso incluir las librerías que has usado e indentar un poco más el código.

Saluditos!.... ...


REEDITO: Así está mejor.
« Última modificación: 21 Mayo 2013, 21:22 pm por leosansan » En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: No me reconoce Variable! Ayuda
« Respuesta #3 en: 21 Mayo 2013, 21:57 pm »

Puse /25. en los /25 y ....     :-)   me ha dado una salida correcta:

Código
  1. Numeros Aleatorios
  2. 376,875,513,530,611,726,646,772,457,743,906,590,220,316,37,99,419,87,849,345,581
  3. ,472,912,66,128,439,559,486,187,82,484,927,672,387,911,693,894,742,869,643,486,8
  4. 65,651,410,132,725,161,20,121,957,660,252,679,133,616,852,636,540,598,743,682,35
  5. 6,91,16,630,962,497,75,544,729,250,506,914,660,689,874,989,500,428,792,576,334,6
  6. 63,694,211,817,730,434,147,670,183,289,366,665,852,944,482,951,800,211,
  7.  
  8. El promedio del Hilo1 es 491.04
  9. El promedio del hilo2 es 540.12
  10. El promedio del Hilo3 es 532.40
  11. El promedio del Hilo4 es 584.08
  12. Hilo1 es 491.04 Hilo2 es 540.12 Hilo3 es 532.40 Hilo4 es 584.08
  13. El promedio total  es: 536.91
  14.  
  15. Process returned 0 (0x0)   execution time : 0.053 s
  16. Press any key to continue.
  17.  
  18. ]

Tampoco estaría de más poner /4. en lugar de /4, no es que sea imprescindible pero tratando con flotantes no me fio nada.

Saluditos!. .... ..
« Última modificación: 21 Mayo 2013, 22:14 pm por leosansan » En línea

fercho17

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: No me reconoce Variable! Ayuda
« Respuesta #4 en: 22 Mayo 2013, 03:04 am »

Puse /25. en los /25 y ....     :-)   me ha dado una salida correcta:

Código
  1. Numeros Aleatorios
  2. 376,875,513,530,611,726,646,772,457,743,906,590,220,316,37,99,419,87,849,345,581
  3. ,472,912,66,128,439,559,486,187,82,484,927,672,387,911,693,894,742,869,643,486,8
  4. 65,651,410,132,725,161,20,121,957,660,252,679,133,616,852,636,540,598,743,682,35
  5. 6,91,16,630,962,497,75,544,729,250,506,914,660,689,874,989,500,428,792,576,334,6
  6. 63,694,211,817,730,434,147,670,183,289,366,665,852,944,482,951,800,211,
  7.  
  8. El promedio del Hilo1 es 491.04
  9. El promedio del hilo2 es 540.12
  10. El promedio del Hilo3 es 532.40
  11. El promedio del Hilo4 es 584.08
  12. Hilo1 es 491.04 Hilo2 es 540.12 Hilo3 es 532.40 Hilo4 es 584.08
  13. El promedio total  es: 536.91
  14.  
  15. Process returned 0 (0x0)   execution time : 0.053 s
  16. Press any key to continue.
  17.  
  18. ]

Tampoco estaría de más poner /4. en lugar de /4, no es que sea imprescindible pero tratando con flotantes no me fio nada.

Saluditos!. .... ..


Amigo hice lo que tu colocaste pero no me ha funcionado!!
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: No me reconoce Variable! Ayuda
« Respuesta #5 en: 22 Mayo 2013, 08:57 am »


Amigo hice lo que tu colocaste pero no me ha funcionado!!

El código que me ha funcionado, no recuerdo si hice alguna modificación más es:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include <string.h>
  5. #include <pthread.h>
  6.  
  7. /*******************************************************/
  8. int P[100];
  9. int H[25],A[25], F[25], G[25];
  10. int i,sum = 0,sum2 = 0,sum3 = 0,sum4 = 0;
  11. float pro=0,pro1=0,pro2=0,pro3=0,pro4=0, resultadofinal=0 ;
  12.  
  13. /*******************************************************/
  14. void sacaraleatorios(){
  15. printf("Numeros Aleatorios \n" );
  16. for(i=0;i<100;i++)
  17.        P[i]=rand()%1000;
  18.    for(i=0;i<100;i++){
  19.        printf("%d",P[i]);
  20.        printf(",");
  21.        }
  22.       printf("\b\n");
  23. }
  24. /*******************************************************/
  25. void *usaSacaraleatorios(void *arg){
  26.    sacaraleatorios();
  27.    return NULL;
  28. }
  29. /*******************************************************/
  30. void imprimealeatoriosparte1(){
  31.    memcpy (H,P,100*sizeof(int));
  32.    printf("\n");
  33.    //printf("Numeros Aleatorios 25  de H \n" );
  34.    for(i=0;i<25;i++){
  35.        //printf("%d ",H[i]);
  36.        //printf("\n");
  37.        sum=sum+H[i];
  38.        }
  39.        pro=sum/25.;
  40.        printf("El promedio del Hilo1 es %.2f",pro );
  41.        printf("\n");
  42. }
  43. /*******************************************************/
  44. void *usaImprimealeatorios(void *arg){
  45.    imprimealeatoriosparte1();
  46.    return NULL;
  47. }
  48. /*******************************************************/
  49. void imprimealeatoriosparte2(){
  50.    memcpy (A,P + 25, 100*sizeof(int));
  51.    //printf("Numeros Aleatorios 25  de A \n" );
  52.    for(i=0;i<25;i++){
  53.        //printf("%d ",A[i]);
  54.        //printf("\n");
  55.        sum2=sum2+A[i];
  56.        }
  57.        pro2=sum2/25.;
  58.        printf("El promedio del hilo2 es %.2f",pro2 );
  59.        printf("\n");
  60.  }
  61. /*******************************************************/
  62. void *usaImprimealeatorios2(void *arg){
  63.    imprimealeatoriosparte2();
  64.    return NULL;
  65. }
  66. /*******************************************************/
  67. void imprimealeatoriosparte3(){
  68.    memcpy (F,P + 50,100*sizeof(int));
  69.    //printf("Numeros Aleatorios 25  de F \n" );
  70.    for(i=0;i<25;i++){
  71.        //printf("%d ",F[i]);
  72.        //printf("\n");
  73.        sum3=sum3+F[i];
  74.        }
  75.        pro3=sum3/25.;
  76.        printf("El promedio del Hilo3 es %.2f",pro3 );
  77.        printf("\n");
  78. }
  79. /*******************************************************/
  80. void *usaImprimealeatorios3(void *arg){
  81.    imprimealeatoriosparte3();
  82.    return NULL;
  83. }
  84. /*******************************************************/
  85. void imprimealeatoriosparte4(){
  86.    memcpy (G,P+75,100*sizeof(int));
  87.    //printf("Numeros Aleatorios 25  de G \n" );
  88.    for(i=0;i<25;i++){
  89.        //printf("%d ",G[i]);
  90.        //printf("\n");
  91.        sum4=sum4+G[i];
  92.        }
  93.        pro4=sum4/25.;
  94.        printf("El promedio del Hilo4 es %.2f",pro4 );
  95.        printf("\n");
  96.  
  97. }
  98. /*******************************************************/
  99. void *usaImprimealeatorios4(void *arg){
  100.    imprimealeatoriosparte4();
  101.    return NULL;
  102. }
  103. /*******************************************************/
  104. /*******************************************************/
  105. int main(int argc, char* argv[]){
  106.    srand(time(NULL));
  107.    sacaraleatorios();
  108.    pthread_t hiloHijo1;
  109.    pthread_t hiloHijo2;
  110.    pthread_t hiloHijo3;
  111.    pthread_t hiloHijo4;
  112.    pthread_create(&hiloHijo1,NULL,usaImprimealeatorios,NULL) ;
  113.    pthread_join(hiloHijo1, NULL);
  114.    pthread_create(&hiloHijo2,NULL,usaImprimealeatorios2,NULL) ;
  115.    pthread_join(hiloHijo2, NULL);
  116.    pthread_create(&hiloHijo3,NULL,usaImprimealeatorios3,NULL) ;
  117.    pthread_join(hiloHijo3, NULL);
  118.    pthread_create(&hiloHijo4,NULL,usaImprimealeatorios4,NULL) ;
  119.    pthread_join(hiloHijo4, NULL);
  120.    printf(" Hilo1 es %.2f",pro);
  121.    printf(" Hilo2 es %.2f",pro2 );
  122.    printf(" Hilo3 es %.2f",pro3 );
  123.    printf(" Hilo4 es %.2f",pro4 );
  124.    resultadofinal = (pro + pro2 + pro3 + pro4 )/4.;
  125.    printf("\nEl promedio total  es: %.2f\n", resultadofinal);
  126. return 0;
  127. }
  128. /*******************************************************/
  129. /*******************************************************/
  130.  

Y te pongo otra salida como comprobación de que furula:




Saluditos!... ..
« Última modificación: 22 Mayo 2013, 09:54 am por leosansan » En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: No me reconoce Variable! Ayuda
« Respuesta #6 en: 22 Mayo 2013, 09:50 am »


¡Lo que faltaba!, publicidad en el foro. A lo peor se anima la gente a subir los códigos fotografiados, como el otro día, en vez de escribirlos  :laugh:.

¡Vamos hombre!, hay mejores medios donde hacer propaganda.

Saluditos!. ....



P.D: REEDITO. Este comentario iba por un post anterior con propaganda de compra de móviles. Los de "arriba" han estado rápidos y lo han borrado  ;-) ;-) ;-). Por cierto, pueden borrar  este post que ya no tiene sentido.
« Última modificación: 22 Mayo 2013, 13:48 pm por leosansan » En línea

fercho17

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: No me reconoce Variable! Ayuda
« Respuesta #7 en: 22 Mayo 2013, 21:23 pm »


¡Lo que faltaba!, publicidad en el foro. A lo peor se anima la gente a subir los códigos fotografiados, como el otro día, en vez de escribirlos  :laugh:.

¡Vamos hombre!, hay mejores medios donde hacer propaganda.

Saluditos!. ....



P.D: REEDITO. Este comentario iba por un post anterior con propaganda de compra de móviles. Los de "arriba" han estado rápidos y lo han borrado  ;-) ;-) ;-). Por cierto, pueden borrar  este post que ya no tiene sentido.



Gracias leosansan ya me funciono!! Te lo agradezco   ;-)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
AYUDA. Una variable con mas de un valor
Programación Visual Basic
Poyson 5 2,141 Último mensaje 30 Septiembre 2005, 00:16 am
por Slasher-K
AYUDA CON VARIABLE EN VBS
Scripting
ignorantev1.1 0 1,981 Último mensaje 21 Julio 2006, 01:06 am
por ignorantev1.1
Ayuda con una variable
Programación Visual Basic
BorecK 2 1,707 Último mensaje 15 Enero 2007, 09:12 am
por NYlOn
Como imprimir el valor de una variable definida en una variable...
Scripting
nhaalclkiemr 5 6,471 Último mensaje 3 Mayo 2007, 17:58 pm
por sirdarckcat
La variable de tipo Object o la variable de bloque With no está establecida
Programación Visual Basic
rubeng 5 12,069 Último mensaje 17 Septiembre 2007, 00:04 am
por rubeng
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines