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 Mensajes
Páginas: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 16
41  Programación / Programación C/C++ / Re: Problema con struct dentro de libreria en: 23 Julio 2010, 16:31 pm
Código:
cbug@laptop:~/Desktop gcc p.c 
cbug@laptop:~/Desktop$ ./a.out
La BANCA gana al 1º jugadorn
El 1º jugador se paso y pierde 2p

Si pruebas el siguiente programa verás que funciona correctamente:
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. struct perfiljugador{
  5.    float jugada;
  6.    int puntos;
  7. };
  8.  
  9.  
  10. struct perfiljugador *reservar(int n){
  11.    struct perfiljugador *p;
  12.    p = (struct perfiljugador *) malloc(n*sizeof(p));
  13.    return p;
  14. }
  15.  
  16. void CalcularPuntos(struct perfiljugador *, int, struct perfiljugador *);
  17.  
  18. int main()
  19. {
  20. struct perfiljugador *players;
  21. players = reservar(2);
  22. players[0].jugada = 10.5;
  23. players[0].puntos = 5;
  24. players[1].jugada = 5.1;
  25. players[1].puntos = 3;
  26. CalcularPuntos(players, 1, &players[0]);
  27. return 0;
  28. }
  29.  
  30. void CalcularPuntos(struct perfiljugador *players, int n, struct perfiljugador *banca){
  31.    do{
  32.        if(players[n].jugada > 7.5){
  33.            printf("El %dº jugador se paso y pierde 2p\n",n + 1);
  34.            players[n].puntos -= 2;
  35.            printf("Puntuacion total: %d",players[n].puntos);
  36.        }else if(players[n].jugada > banca->jugada){
  37.            printf("El %dº jugador gana a la banca, gana 2p\n", n + 1);
  38.            players[n].puntos += 2;
  39.            printf("Puntuacion total: %d", players[n].puntos);
  40.            }
  41.            else {
  42.                printf("La BANCA gana al %dº jugadorn\n",n);
  43.                banca->puntos += 2;
  44.            }
  45.        n--;
  46.    }while(n>=0);
  47. }

De última, o tienes mal configurado netbeans, o directamente estás haciendo cualquier otra cosa que no podemos estar adivinando pues no ponés tu organización de directorio archivos de cabecera, etc.

PD: Utiliza gcc.
42  Programación / Programación C/C++ / Re: Problema con struct dentro de libreria en: 23 Julio 2010, 16:18 pm
Leíste el código? Verás que estás utilizando mal los operadores de acceso a estructura, y al parecer tampoco sabes utilizar tu lista de estructuras... En ningún momento dije que tenías que poner TODO en un solo programa.

Ahora bien, en la función que elaboraste "CalcularPuntos" debes modificar algunas cosas, pero puedes guiarte por como utilizo los accesos a estructuras en main.

Fijate el resultado para que tu función trabaje correctamente:

Código
  1. void CalcularPuntos(struct perfiljugador *players, int n, struct perfiljugador *banca){
  2.    do{
  3.        if(players[n].jugada > 7.5){
  4.            printf("El %dº jugador se paso y pierde 2p\n",n + 1);
  5.            players[n].puntos -= 2;
  6.            printf("Puntuacion total: %d",players[n].puntos);
  7.        }else if(players[n].jugada > banca->jugada){
  8.            printf("El %dº jugador gana a la banca, gana 2p\n", n + 1);
  9.            players[n].puntos += 2;
  10.            printf("Puntuacion total: %d", players[n].puntos);
  11.            }
  12.            else {
  13.                printf("La BANCA gana al %dº jugadorn\n",n);
  14.                banca->puntos += 2;
  15.            }
  16.        n--;
  17.    }while(n>=0); //Acuerdate que se apunta hasta el primer elemento que es 0
  18. }
43  Programación / Programación C/C++ / Re: Problema con struct dentro de libreria en: 23 Julio 2010, 16:06 pm
Tal vez te ayude esto:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. struct perfiljugador{
  5.    float jugada;
  6.    int puntos;
  7. };
  8.  
  9.  
  10. struct perfiljugador *reservar(int n){
  11.    struct perfiljugador *p;
  12.    p = (struct perfiljugador *) malloc(n*sizeof(p));
  13.    return p;
  14. }
  15.  
  16. void CalcularPuntos(struct perfiljugador *, int, struct perfiljugador *);
  17.  
  18. int main()
  19. {
  20. struct perfiljugador *players;
  21. players = reservar(2);
  22. players[0].jugada = 10.5;
  23. players[0].puntos = 5;
  24. players[1].jugada = 5.1;
  25. players[1].puntos = 3;
  26. printf("\nJugadas>%f\n", players->jugada);
  27. printf("\nPuntos>%d\n", players->puntos);
  28. printf("\nJugadas>%f\n", players[1].jugada);
  29. printf("\nPuntos>%d\n", players[1].puntos);
  30. CalcularPuntos(players, 2, &players[1]);
  31. return 0;
  32. }
  33.  
  34. void CalcularPuntos(struct perfiljugador *players, int n, struct perfiljugador *banca){
  35.    do{
  36.        if(players[n].jugada > 7.5){
  37.            printf("El %dº jugador se paso y pierde 2p\n",n);
  38.            players[n].puntos -= 2;
  39.            printf("Puntuacion total: %d",players[n].puntos);
  40.        }else if(players[n].jugada > banca->jugada){
  41.            printf("El %dº jugador gana a la banca, gana 2p\n", n);
  42.            players[n].puntos += 2;
  43.            printf("Puntuacion total: %d", players[n].puntos);
  44.            }
  45.            else {
  46.                printf("La BANCA gana al %dº jugadorn\n",n);
  47.                banca->puntos += 2;
  48.            }
  49.        n--;
  50.    }while(n>0);
  51. }

Para utilizar GeShi, encierra el código entre las etiquetas: [code = c] [/code]
44  Programación / Programación General / Re: que tal es el lenguaje delphi o objet pascal?¿ en: 23 Julio 2010, 15:43 pm
Visual Studio lo que trae consigo, parecido a object pascal o borland delphi, es un diseñador de interfaces, WinForms.
45  Programación / Programación C/C++ / Re: Problema con struct dentro de libreria en: 23 Julio 2010, 15:34 pm
Por favor pon el source completo, y utiliza las etiquetas GeShi.
46  Programación / Programación C/C++ / Re: Problema con un code de Allegro en: 23 Julio 2010, 15:33 pm
Que mejor que consultar:

http://alleg.sourceforge.net/api.html

Nunca he utilizado allegro, pero no es muy difícil de comprender teniendo la documentación a mano, si sabes C/C++ no será muy difícil de entenderlolo, ya que se utilizan estructuras muy sencillas, y funciones con parámetros más que comprensibles.
47  Programación / Programación C/C++ / Re: Sockets en C/C++ en: 23 Julio 2010, 04:11 am
https://foro.elhacker.net/programacion_cc/librospapers_cc-t296234.0.html
48  Programación / Programación C/C++ / Re: Problema con un code de Allegro en: 23 Julio 2010, 03:24 am
Quieres que se te explique línea por línea? O qué cosa?

PD: No te recomiendo allegro para nada... Comienza con sdl:

http://gpwiki.org/index.php/C:SDL_tutorials
http://www.libsdl.org/cgi/docwiki.cgi
49  Programación / Programación C/C++ / Re: Intento compilar el wippien, pero me da errores. (Una ayudita me vendria bien) en: 22 Julio 2010, 15:30 pm
Si tienes los archivos de cabecera en la MISMA carpeta que el main.cpp entonces deberías incluirlas de la siguiente forma:

Código
  1. #include "atlbase.h"
  2. #include "atlapp.h"

En otro caso deberías especificar la ruta de los archivos de cabecera.
50  Programación / Programación General / Re: que tal es el lenguaje delphi o objet pascal?¿ en: 22 Julio 2010, 15:13 pm
Son buenos lenguajes de programación, no por ello más que C. Ahora bien, en C trabajar con GUI's es algo complicado, por lo que te recomendaría pasar a C++, para ese tipo de cosas. Visual Studio en sus versiones trae consigo un diseñador de interfaces, sino tienes otra alternativa, que sería QT.
Páginas: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 16
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines