necesito ayuda con el ahorcado en pascal

Iniciado por savag, 7 Octubre 2011, 18:07 PM

0 Miembros y 1 Visitante están viendo este tema.

savag

Hola,buenas;necesito ayuda con el ahorcado en pascal,tengo hecho el codigo y solamente quiero si alguien puede corregirmelo haber que tal esta lo tengo que entregar,y es muy importante que este bien,el codigo compila lo que quisiera saber es que no he hecho ninguna barbaridad.Soy nuevo en el foro como puedo hacer para insertar el codigo aqui el compilador que he usado es Free Pascal.
Gracias.

$Edu$

Copia y pega el codigo aca simplemente, o es mucho? si es asi tienes que subir los archivos de tu proyecto y nos dejas un link para descargarlo

savag

He intentado copiar y pagar y no me deja,como lo hago de la otra forma como pongo el link.

$Edu$

Como no te va a dejar pegar el codigo?, el codigo me refiero al texto, el que escribes cuando programas por ejemplo:

Código (vb) [Seleccionar]

MsgBox "hola"


Y para subir tu proyecto, entras a mediafire.com y buscas donde diga para subir archivo, y subes tus archivos que ya estaran comprimidos en winrar antes, y luego te daran un link el cual tienes que dejar aca.

savag

No me deja pegar el texto me pone y nada mas,y si dou a copiar y pegar tampoco,y no es demasiado grande 92 lineas.


savag

  Este es ,¿que tal esta  ?son dos jugadores cada uno tiene que dar una palabra y gana el primero que hacierte,la partida se debe poder guardar y cargar,en modo texto no en binario.Si hacierta con la letras sigues tirando si no pierdes turno.



 
  program ahorcado;
  uses crt;
  type
    cadena=string[9];
  var
    fich:text;

    palabra1,adivinar1:cadena;
    palabra2,adivinar2:cadena;
    letra:char;
    posicion1,posicion2,longuitud1,longuitud2:integer;
    {en el procedimiento las cadenas palabra,aux,adivinar las pasamos por referencia
    porque las modificaciones que vamos a efectuar en el parametro formal las realizaremos sobre
    el parametro real lo mismo sucede con la longuitud porque varia segun sea la palabra}
  procedure inicializarvector (var palabra,adivinar:cadena;var longuitud:integer);
  var
   i:integer;
   begin
   writeln('Escribe la palabra que quiere que adivinen: ');
   readln(palabra);
   {Calculamos la loguitud de la palabra introducida}
   longuitud:=lenght(palabra);

   for i:=1 to longuitud do
   {Inicializamos la palabra con guiones}
      adivinar:='_';
      end;
  {Pasamos todo los argumentos por referencia salvo "palabra" que la pasamos por valor porque no la vamos a modificar}
   procedure comprobarletra (var letra:char;var posicion:integer;var adivinar:cadena;palabra:cadena);
      var
      i:integer;

      begin
      repeat
      writeln('¿Que letra crees que esta en la palabra?');
      readln(letra);
      {Vemos en que posicion se encuentra la letra dada en la palabra que tenemos que adivinar}
      posicion:=pos(letra,palabra);
      if posicion<>0 then
      begin
      writeln('La posición es:',posicion);
      {Cambiamos en la palabra que tenemos que adivinar el guion por la letra dada}
          adivinar[posicion]:=letra;
      {Y mostramos por pantalla los cambios efectuados}
          writeln(adivinar);
          end
       {si no se encuentra la letra en la palabra}
        else
         begin
         writeln('La letra dada no se encuentra en la palabra.');
         writeln('¡¡¡PIERDES TURNO!!!');
         writeln('Lista de letras que no estan en la palabra que tienes que adivinar:');
         writeln(letra);
         end;
         until (posicion=0) ;
         end;

         {----------------------CUERPO DEL PROGRAMA-------------------------}
         begin
         clrscr;
         writeln('=================================JUEGO DEL AHORCADO============================');
         {$I-}{Desactivamos el control automático de errores de E/S.}
          assign(fich,'C:\juego.txt');
          append(fich);
          {$I+}{Activamos el control automático de errores de E/S.}
          if IOResult<>0 then {Comprobamos si ha habido errores}
          writeln('Error:',IOResult,'al abrir el fichero.')
          else
          begin
         writeln('Comencemos el juego del ahorcado,con el jugador 1.');
         inicializarvector(palabra1,adivinar1,longuitud1);
         clrscr;
         writeln('jugador 2 es su turno');
         clrscr;
         inicializarvector(palabra2,adivinar2,longuitud2);
         repeat
            writeln('Jugador 1');
            comprobarletra(letra,posicion2,adivinar2,palabra2);
            clrscr;
            writeln('Su turno,jugador 2');
            comprobarletra(letra,posicion1,adivinar1,palabra1);
            clrscr;
            until
             (adivinar1=palabra1) or (adivinar2=palabra2);
             if(adivinar2=palabra2)then
               writeln('¡¡¡¡GANASTE JUGADOR 1!!!')
               else
                writeln('¡¡¡GANASTE JUGADOR 2!!!');
          close(fich);
          end;
          end.
                                               

savag

Por favor si alguien le puede hechar un vistazo,l tengo que entregar mañana.