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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Re: Ayuda, Necesito ponerle inteligencia. en: 11 Julio 2012, 17:09 pm
   Mmmm y un metodo mas normal? es que soy novato aun  :rolleyes:
2  Programación / Programación C/C++ / Ayuda, Necesito ponerle inteligencia. en: 11 Julio 2012, 05:09 am
  Resulta que estoy haciendo el juego

http://www.subeimagenes.com/img/tic-tac-toe-326706.html

Pero necesito integrarle las tacticas para que no solo juegue al azar

Aqui esta el codigo: http://www.mediafire.com/?dq1ye1usdobr6t8

  He pensado en integrar jugadas como estas, pero nada me ha resultado :S

n1 hasta n9, son las casillas
el jugador humano marca un 0 y el computador marca con un 1.
Las casillas vacias se denotan con un 9..

Código:
if (n1 == 9){
  if (n2==n3==0 || n5==n9==0 || n4==n7==0 || n2==n3==1 || n5==n9==1 || n4==n7==1)
    n1 = jugador ; }

if (n2 == 9){
  if (n1==n3==0 || n5==n8==0 || n1==n3==1 || n5==n8==1)
    n2 = jugador ; }

if (n3 == 9){
  if (n1==n2==0 || n5==n7==0 || n6==n9==0 || n1==n2==1 || n5==n7==1 || n6==n9==1)
    n3 = jugador ; }

   
  Alguna sugerencia? :O
3  Programación / Programación C/C++ / Re: Cambiar un Switch por un do-while en: 8 Julio 2012, 20:18 pm
No he leido el codigo, pero segun he entendido quieres hacer lo que haria un switch sin hacer un switch. Ademas los casos son 1, 2, 3, 4, 5, 6, ,7 ,8 y 9. Puedes hacer un bucle for para recorrer los casos del 1 al 9, y si el numero es igual haces lo que sea que quieras hacer y pones una sentencia break.

Saludos.

PD: ¿Porque metes srand(time(NULL)) en el while?


  Vaya! no sabia que se podía usar break sin el switch, jajaja siempre se aprende algo nuevo..
                                                                       
                                                                              //Gracias a todos por responder//  ;-)
4  Programación / Programación C/C++ / Re: Cambiar un Switch por un do-while en: 8 Julio 2012, 00:57 am
anonimo3.0, tienes mal planteado el algoritmo. Yo lo que haría sería un array y quedaría algo como esto:

Código
  1. while(fin_juego != 0){
  2.        if (jugador == ficha_c){
  3.            printf ( "Turno del Computador\n" ) ;
  4.            jugada_ok = 1;
  5.            while (jugada_ok != 0)
  6. {
  7.                jugada = rand() % 9;
  8. if (t[jugada] == 9){
  9. t[jugada] = jugador;
  10. jugada_ok = 0;
  11. }
  12. }          
  13.            }
  14. }
  15.  

Más simple, ¿verdad?

Lo que no entiendo es para que haces el bucle while de jugada_ok...

Saludos.



  jugada_ok  se supone que funciona de interruptor entre los distintos casos...la cosa es que no me permiten usar switch :( , y donde meto los if en ese algoritmo?
5  Programación / Programación C/C++ / Re: Cambiar un Switch por un do-while en: 8 Julio 2012, 00:39 am
  No lo copie y pegue porque le tengo otras variables xD, asi que no creo que sea eso

Código
  1. while(fin_juego != 0){
  2.        if (jugador == computador) {
  3.            printf ( "Turno del Computador\n" ) ;
  4.            jugada_ok = 1;
  5.            while (jugada_ok != 0){
  6.                srand(time(NULL));
  7.                jugada = rand()%9 +1;
  8.                   if(jugada==1) {
  9.                    if (n1 == 9){
  10.                      n1 = jugador;
  11.                      jugada_ok = 0; }
  12.                   }
  13.                   else if(jugada==2) {
  14.                    if (n2 == 9){
  15.                        n2 = jugador;
  16.                        jugada_ok = 0; }
  17.                     }
  18.                   else if(jugada==3) {
  19.                    if (n3 == 9){
  20.                        n3 = jugador;
  21.                        jugada_ok = 0; }
  22.                      }
  23.                   else if(jugada==4) {
  24.                    if (n4 == 9){
  25.                        n4 = jugador;
  26.                        jugada_ok = 0; }
  27.                       }
  28.                   else if(jugada==5) {
  29.                    if (n5 == 9){
  30.                        n5 = jugador;
  31.                        jugada_ok = 0; }
  32.                        }
  33.                   else if(jugada==6) {
  34.                    if (n6 == 9){
  35.                        n6 = jugador;
  36.                        jugada_ok = 0; }
  37.                        }
  38.                   else if(jugada==7) {
  39.                    if (n7 == 9){
  40.                        n7 = jugador;
  41.                        jugada_ok = 0; }
  42.                        }
  43.                   else if(jugada==8) {
  44.                    if (n8 == 9){
  45.                        n8 = jugador;
  46.                        jugada_ok = 0; }
  47.                        }
  48.                   else if(jugada==9) {
  49.                    if (n9 == 9){
  50.                        n9 = jugador;
  51.                        jugada_ok = 0; }
  52.                        }
  53.            }
6  Programación / Programación C/C++ / Re: Cambiar un Switch por un do-while en: 8 Julio 2012, 00:29 am
No funciona, cae en un ciclo repetitivo  :o me pide que ingrese el numero de casilla todo el tiempo, pero sin hacer nada


7  Programación / Programación C/C++ / Cambiar un Switch por un do-while en: 7 Julio 2012, 23:47 pm
  Necesito cambiar este switch a un if-else do-while o for si que se puede xD, pero de ninguna forma me a resultado, alguna sugerencia?
Aqui esta el codigo completo...
  http://www.mediafire.com/?kdyjq36v5z62f9y
PD: esta en C (solito).

Código
  1. while(fin_juego != 0){
  2.        if (jugador == ficha_c){
  3.            printf ( "Turno del Computador\n" ) ;
  4.            jugada_ok = 1;
  5.            while (jugada_ok != 0){
  6.                jugada = rand()%9 +1;
  7.                switch ( jugada) {
  8.                    case 1:    if (t1 == 9){
  9.                        t1 = jugador; jugada_ok = 0;
  10.                            }
  11.                            break;
  12.                    case 2: if (t2 == 9){
  13.                                t2 = jugador;
  14.                                jugada_ok = 0;
  15.                            }
  16.                            break;
  17.                    case 3: if (t3 == 9){
  18.                                t3 = jugador;
  19.                                jugada_ok = 0;
  20.                            }
  21.                            break;
  22.                    case 4:    if (t4 == 9){
  23.                                t4 = jugador;
  24.                                jugada_ok = 0;
  25.                            }
  26.                            break;
  27.                    case 5:    if (t5 == 9){
  28.                                t5 = jugador;
  29.                                jugada_ok = 0;
  30.                            }
  31.                            break;
  32.                    case 6:    if (t6 == 9){
  33.                                t6 = jugador;
  34.                                jugada_ok = 0;
  35.                            }
  36.                            break;
  37.                    case 7:    if (t7 == 9){
  38.                                t7 = jugador;
  39.                                jugada_ok = 0;
  40.                            }
  41.                            break;
  42.                    case 8:    if (t8 == 9){
  43.                                t8 = jugador;
  44.                                jugada_ok = 0;
  45.                            }
  46.                            break;
  47.                    case 9:    if (t9 == 9){
  48.                                t9 = jugador;
  49.                                jugada_ok = 0;
  50.                            }
  51.                            break;
  52.                }
  53.            }
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines