• Domingo 22 de Diciembre de 2024, 11:56

Autor Tema:  Juego verdugo  (Leído 2337 veces)

C++ BorlFJ

  • Miembro activo
  • **
  • Mensajes: 52
    • Ver Perfil
    • http://www.grafmarc.com.ve/info_lenguajes
Juego verdugo
« en: Jueves 22 de Julio de 2004, 22:35 »
0
Nadie sabrà por acà en que consiste el juego del "Verdugo"
si algien sabe porfavor le agradecerìa que me lo explicara
gracias de antemano...


 :comp:  :hola:
 :unsure:
C++ BorlFJ
La Fuente de la vida es querer hacer las cosas como son
JC Vermudez

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Juego verdugo
« Respuesta #1 en: Viernes 23 de Julio de 2004, 01:13 »
0
¿No sería el ahorcado?
El que tenés que decir las letras de una palabra hasta que la adivines y si fallas se va dibujando un hombrecito para ahorcarlo.

JPVM

  • Miembro activo
  • **
  • Mensajes: 40
    • Ver Perfil
Re: Juego verdugo
« Respuesta #2 en: Domingo 25 de Julio de 2004, 08:43 »
0
Tu debes estar refiriendo al ahorcado por cualquier cosa aqui te dejo uno que yo hice

Código: Text
  1. Program Ahorcado;
  2. Uses crt;
  3. Const
  4.    MaxPalabra = 14;
  5. Type
  6.    t_palabras = record
  7.        palabra:string[MaxPalabra];
  8.    end;
  9. Var
  10.    v_palabras : array[0..9] of t_palabras;
  11.    v_letras   : array[1..100] of char;
  12.    v_anterior, i:integer;
  13.  
  14.    Procedure Marco;
  15.    {Dibuja el marco en la pantalla}
  16.    Var
  17.       i, j :integer;
  18.    Begin
  19.       Clrscr;
  20.       For i := 1 to 79 do begin
  21.           gotoxy(i, 1);
  22.           write('Í');
  23.           gotoxy(i,24);
  24.           write('Í');
  25.       end;
  26.       For j := 1 to 24 do begin
  27.          gotoxy(1,j);
  28.          write('º');
  29.          gotoxy(80,j);
  30.          write('º');
  31.       end;
  32.          gotoxy(80,1);
  33.          write('»');
  34.          gotoxy(1,24);
  35.          write('È');
  36.          gotoxy(80,24);
  37.          write('¼');
  38.          gotoxy(1,1);
  39.          write('É');
  40.     End; {Marco}
  41.     Function Menu(var p_opcion:integer):integer;
  42.     {Dibuja el men£}
  43.     Var
  44.         v_opcion:integer;
  45.  
  46.     Begin
  47.        clrscr;
  48.        marco;
  49.        gotoxy(25,6);
  50.        Writeln('Bienvenido aljuego del AHORCADO');
  51.        gotoxy(25,8);
  52.        writeln('Si tiene m s de 7 fallos pierde');
  53.        gotoxy(25, 14);
  54.        Writeln('1. Jugar');
  55.        Gotoxy(25, 15);
  56.        Writeln('2. Salir');
  57.        Gotoxy(25, 16);
  58.        Write('Opci¢n :');
  59.        Readln(v_opcion);
  60.        p_opcion := v_opcion;
  61.        menu := v_opcion;
  62.     End; {Menu}
  63.     Procedure Dibujo(p_fallo:integer);
  64.     Var
  65.       v_parte:String[7];
  66.       v_fila, v_columna:Integer;
  67.     begin
  68.       v_parte:='O/I\I/\';
  69.       Case p_fallo of
  70.           1 :  begin
  71.                 v_fila:=1;  v_columna:=2;
  72.                end;
  73.           2 :  begin
  74.                 v_fila:=2;  v_columna:=1;
  75.                end;
  76.           3 :  begin
  77.                 v_fila:=2;  v_columna:=2;
  78.                end;
  79.           4 :  begin
  80.                 v_fila:=2;  v_columna:=3;
  81.                end;
  82.           5 :  begin
  83.                 v_fila:=3;  v_columna:=2;
  84.                end;
  85.           6 :  begin
  86.                 v_fila:=4;  v_columna:=1;
  87.                end;
  88.           7 :  begin
  89.                 v_fila:=4;  v_columna:=3;
  90.                end;
  91.        end;
  92.          gotoxy(7+v_columna,18+v_fila);
  93.          write(v_parte[p_fallo]);
  94.    end;
  95.    Procedure Verifica(p_palabraescogida: string;var p_posicion:integer; p_letra:char);
  96.    var
  97.      n:integer;
  98.    begin
  99.      delete(p_palabraescogida,1,p_posicion);
  100.      n:=p_posicion;
  101.      p_posicion :=pos(p_letra,p_palabraescogida);
  102.      if p_posicion<>0 then
  103.         p_posicion:= p_posicion+n;
  104.    end;
  105.    Procedure Jugar;
  106.    Var
  107.        v_palabraformada, v_palabraescogida :String[MaxPalabra];
  108.        v_posicion, v_fallos, j, i, v_indice, v_indiceletras:integer;
  109.        v_letra :char;
  110.        v_evaluada : boolean;
  111.    Begin
  112.        Clrscr;
  113.        Marco;
  114.        v_palabraformada := '';
  115.        v_indiceletras   := 0;
  116.        v_posicion       := 0;
  117.        v_fallos         := 0;
  118.        v_evaluada       := false;
  119.        j := 0;
  120.        randomize;
  121.        repeat
  122.           v_indice := random(9);
  123.        until v_anterior <> v_indice;
  124.        v_anterior := v_indice;
  125.        v_palabraescogida := v_palabras[v_indice].palabra;
  126.        for i:= 1 to length(v_palabraescogida) do begin
  127.           v_palabraformada := v_palabraformada + '_';
  128.        end;
  129.        repeat
  130.           gotoxy(25,16);
  131.           writeln(v_palabraformada);
  132.           gotoxy(2, 2);
  133.           write('Digite una letra: ');
  134.           readln(v_letra);
  135.           v_letra := upcase(v_letra);
  136.           i := 1;
  137.           v_evaluada := false;
  138.           Repeat
  139.              if  v_letras[i] = v_letra then begin
  140.                v_evaluada := true;
  141.              end;
  142.              i := i + 1;
  143.           until (i >= v_indiceletras) or (v_evaluada);
  144.           v_indiceletras := v_indiceletras + 1;
  145.           v_letras[v_indiceletras] := v_letra;
  146.           if (not v_evaluada) then begin
  147.              verifica(v_palabraescogida, v_posicion, v_letra);
  148.              if v_posicion <> 0 then begin
  149.                 repeat
  150.                    v_palabraformada[v_posicion]:= v_letra;
  151.                    gotoxy(25,16);
  152.                    write(v_palabraformada);
  153.                    verifica(v_palabraescogida, v_posicion, v_letra);
  154.                    writeln;
  155.                 until (v_posicion=0);
  156.              end
  157.              else begin
  158.                  v_fallos := v_fallos + 1;
  159.                  dibujo(v_fallos);
  160.             end;
  161.           end else begin
  162.              v_fallos := v_fallos + 1;
  163.              dibujo(v_fallos);
  164.           end;
  165.           gotoxy(20,12);
  166.           writeln('Intentos :', v_indiceletras, ' Fallos :', v_fallos);
  167.           gotoxy(3,5);
  168.           writeln('Letras evaluadas: ');
  169.           for j := 1 to v_indiceletras do begin
  170.              gotoxy(5+(j*2),6);
  171.              write(v_letras[j]);
  172.           end;
  173.        until (v_fallos = 8) or (v_palabraformada = v_palabraescogida);
  174.        if v_palabraformada = v_palabraescogida then begin
  175.           gotoxy(25, 17);
  176.           textcolor(Green);
  177.           writeln('FELICIDADES HAS GANADO!!!!!!');
  178.        end
  179.        else begin
  180.           gotoxy(25, 17);
  181.           textcolor(red);
  182.           writeln('LO SIENTO HAS PERDIDO!!!!!!!!');
  183.       end;
  184.       Normvideo;
  185.       READKEY;
  186.     End;{Jugar}
  187.     Procedure LlenaArreglo;
  188.     {Llena la lista de palabras}
  189.     Begin
  190.         v_palabras[0].palabra:= 'AHORCADO';
  191.         v_palabras[1].palabra:= 'EXTRAORDINARIO';
  192.         v_palabras[2].palabra:= 'USUARIO';
  193.         v_palabras[3].palabra:= 'TELEVISOR';
  194.         v_palabras[4].palabra:= 'TELEFONO';
  195.         v_palabras[5].palabra:= 'EXCELENTE';
  196.         v_palabras[6].palabra:= 'JARDINERO';
  197.         v_palabras[7].palabra:= 'INFORMACION';
  198.         v_palabras[8].palabra:= 'DICCIONARIO';
  199.         v_palabras[9].palabra:= 'PARTIDO';
  200.     End;{LlenaArreglo}
  201.  
  202.  
  203. BEGIN
  204.   v_anterior := 0;
  205.   Marco;
  206.   LlenaArreglo;
  207.   repeat
  208.      Case  i of
  209.        1: begin
  210.              Jugar;
  211.           end;
  212.     end;
  213.   until menu(i) = 2;
  214. END.
  215.  

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Juego verdugo
« Respuesta #3 en: Domingo 25 de Julio de 2004, 18:04 »
0
JPVM :
         cuando pegues tu código te recomiendo que antes de hacerlo hagas click en el "boton CODE " para lograr este efecto(es parte de tu programa)
Código: Text
  1.  
  2. repeat
  3.     v_palabraformada[v_posicion]:= v_letra;
  4.     gotoxy(25,16);
  5.     write(v_palabraformada);
  6.     verifica(v_palabraescogida, v_posicion, v_letra);
  7.     writeln;
  8. until (v_posicion=0);
  9.  
  10.  
Despues de pegar tu codigo hacé de vuelñta click en el mismo botón.

o sino encerá tu codigo entre los tags [CODE,]  [/CODE,] Nota que se escriben sin la coma, la tuve que colocar para "engañar" a la lógica de este foro.

C++ BorlFJ

  • Miembro activo
  • **
  • Mensajes: 52
    • Ver Perfil
    • http://www.grafmarc.com.ve/info_lenguajes
Re: Juego verdugo
« Respuesta #4 en: Lunes 26 de Julio de 2004, 17:56 »
0
Gracias amigos. gracias a ambos. me ayudaron mucho en la soluciòn a mi problema. en realidad no era el ahorcado pero se basa en casi lo mismo de todas formas su còdigo me sirviò para hacerle algfunas correcciones al mìo. lamentablemente lo tengo en Borland C. si pudiera mandarselos por este post se los mandarìa pero...
mil gracias compañeros se les agradece mucho..






C++ BorlFJ
 :rolleyes:  :comp:  :hola:
La Fuente de la vida es querer hacer las cosas como son
JC Vermudez