elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:34  


Tema destacado: Suscripción al boletín mensual de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (Moderador: [D4N93R])
| | | |-+  C# el ahorcado
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: C# el ahorcado  (Leído 3,805 veces)
Err...

Desconectado Desconectado

Mensajes: 6


Ver Perfil
C# el ahorcado
« en: 10 Enero 2011, 09:50 »

Hola, tengo que hacer el juego del ahorcado en C# i en pseudocodigo, pero no sé como hacer-lo.
Me podéis ayudar?
Gracias!!


En línea
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 2.968


/^$/


Ver Perfil WWW
Re: C# el ahorcado
« Respuesta #1 en: 10 Enero 2011, 10:02 »

Aquí no es el lugar correcto para C#.

Citar
un jugador escribe una palabra(si que el otro vea)y el otro jugador trata de adivinar introduciendo letras individuales:
�COMO deberia FUNCIONAR EL ALGORITMO EN LA PC?
El programa tendra dos cadenas de caracteres,una con la palabra introducida por le primer jugador y la otra cadena en la que se introducira tantos guiones�_� como letras tenga la palabra a adivinar.

Tras leer la palabra, se borrara la pantalla, se creara y se mostrara el la pantalla de la cadena con los guiones.Entonces el ordenador leera una letra introducida por el segundo jugador y comprobara si dicha letra existe en la palabra original:
*SI EXISTE:pondra dicha letra en su pocion correspondiente en la cadena de guiones y escribir� el resultado.Se debera comprobar:
� si existe mas letras que coincidan:
Se deben poner todas la coincidencias para cada letra leida.   
� si ya no existen guiones en la segunda cadena,entonces indicar que se ha acertado la palabra, Montrar el numero de fallos cometidos y terminar.

ALTERNATIVAS
aL INICIAR EL PROGRAMA deben existir dos alternativas de juego:

� La primera en la que hay como maximo 6 posivilidades para adivinar la palabra y en al que a medida en al que se va fallando se va dibujando por la pantalla al "clasico hombresito ahorcado" . Relacionando con cada fallo con una parte del cuerpo del ahorcado (cabeza,cuerpo, brazo der, brazo izquierdo, pierna derecha y pierna izquierda)

� La segunda en la que se define la contidad de errores maxima que se puede cometer la persona que adivina la palabra en un inicio y en la que no hay que dibujar nada.

FINALIZACION

EL programa debe terminar en los siguentes casos:
� Si se acierta a la palabra.
� Si se cometen un cierto numeros de fallos que debe visualizarse previamente dependiendo de la opcion que se escoja a un inicio
El programa permitira "rendirse" por parte del segundo jugador,es decir, que permitira terminar el programa en cualquier momento.

DATOS QUE PUEDE AYUDAR: Puede ser uan funcion que acepte 3 argumentos.
La cadena original,la cadena con guiones y la letra introducida


En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
Err...

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: C# el ahorcado
« Respuesta #2 en: 10 Enero 2011, 10:15 »

Me podeis decir como oculto la palabra que estoy escribiendo?
Gracias
En línea
Err...

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: C# el ahorcado
« Respuesta #3 en: 10 Enero 2011, 10:25 »

*SI EXISTE:pondra dicha letra en su pocion correspondiente en la cadena de guiones y escribir� el resultado.Se debera comprobar:
� si existe mas letras que coincidan:
Se deben poner todas la coincidencias para cada letra leida.   
� si ya no existen guiones en la segunda cadena,entonces indicar que se ha acertado la palabra, Montrar el numero de fallos cometidos y terminar.

Como lo hago?
Ayuda!
Gracias
En línea
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 2.968


/^$/


Ver Perfil WWW
Re: C# el ahorcado
« Respuesta #4 en: 10 Enero 2011, 10:41 »

Todo se basa en "Busqueda secuencial", investiga sobre eso, es algo como:

Código
void busqueda_secuencial(char palabra[], char guiones[], char caracter)
{
   unsigned int i;
   for(i = 0; palabra[i]; i++)       /* Busqueda secuencial */
       if(palabra[i] == caracter)
           guiones[i] = caracter;
}
« Última modificación: 10 Enero 2011, 10:43 por Leo Gutiérrez. » En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
Err...

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: C# el ahorcado
« Respuesta #5 en: 10 Enero 2011, 11:26 »

Hola de nuevo!

Os dejo mi código, esta en catalán porque me obligan a ello.
Decidme donde estan los fallos porfavor
Gracias


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace PENJAT
{
    class Program
    {
        static void Main(string[] args)
        {
            const int MAX = 25;
            int i;
            string cad1, cad2, cadfinal, paraula, continuar, lletra;
            //FI DECLARACIÓ VARIABLES I CONSTANTS
            continuar = "si";
            do
            {
                Console.WriteLine("La paraula només pot tenir 25 lletres");
                do
                {
                    Console.WriteLine("Atenció la paraula és oculta");
                    paraula = Console.ReadLine();
                    Console.Clear();
                    if (paraula.Length > MAX)
                    {
                        Console.WriteLine("La paraula és massa llarga!");
                    }
                }
                while (paraula.Length > MAX || paraula.IndexOf("") == -1);
                Console.WriteLine("Atenció! Comença el Joc!");
                Console.WriteLine("La paraula té: " + " " + paraula.Length + "lletres");
                cad1 = "_";
                cad2 = "_";
                cadfinal = "_";
                while (cadfinal.Length < paraula.Length)
                {
                    cadfinal = cad1 + cad2;
                    cad2 = cadfinal;
                }
                Console.WriteLine(cadfinal);
                i = 11;
                do
                {
                    Console.WriteLine("Tens" + " " + i + " " + "intents");
                    Console.WriteLine("Introdueix lletres, prem <intro> per confirmar-la");
                    lletra = Console.ReadLine();
                    if (paraula.IndexOf(lletra) == -1)
                    {
                        i = i - 1;
                    }
                    else
                    {
                        cadfinal = paraula.Insert('_',lletra);
                    }
                }
                while (i >= 0);
                if (i == 0)
                {
                    Console.WriteLine("Has perdut, no et desanimis!");
                }
                else if (i > 0 && i < 6)
                {
                    Console.WriteLine("Molt bé ets un/a crack!!");
                }
                else
                {
                    Console.WriteLine("Has jugat bé, però t'has de concentrar més");
                }
                Console.WriteLine("Vols tornar a jugar?");
                Console.WriteLine("Prem s, si és que si o prem n si és que no");
                continuar = Console.ReadLine();
                switch (continuar)
                {
                    case "s": continuar = "si"; break;
                    case "n": continuar = "no"; break;
                }
            }
            while (continuar == "si");
       
               
                       

        }
    }
}
 
En línea
Oblivi0n

Desconectado Desconectado

Mensajes: 201


Odio las ranas.


Ver Perfil
Re: C# el ahorcado
« Respuesta #6 en: 10 Enero 2011, 15:14 »

Código
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace PENJAT
{
   class Program
   {
       static void Main(string[] args)
       {
           const int MAX = 25;
           int i;
           string cad1, cad2, cadfinal, paraula, continuar, lletra;
           //FI DECLARACIÓ VARIABLES I CONSTANTS
           continuar = "si";
           do
           {
               Console.WriteLine("La paraula només pot tenir 25 lletres");
               do
               {
                   Console.WriteLine("Atenció la paraula és oculta");
                   paraula = Console.ReadLine();
                   Console.Clear();
                   if (paraula.Length > MAX)
                   {
                       Console.WriteLine("La paraula és massa llarga!");
                   }
               }
               while (paraula.Length > MAX || paraula.IndexOf("") == -1);
               Console.WriteLine("Atenció! Comença el Joc!");
               Console.WriteLine("La paraula té: " + " " + paraula.Length + "lletres");
               cad1 = "_";
               cad2 = "_";
               cadfinal = "_";
               while (cadfinal.Length < paraula.Length)
               {
                   cadfinal = cad1 + cad2;
                   cad2 = cadfinal;
               }
               Console.WriteLine(cadfinal);
               i = 11;
               do
               {
                   Console.WriteLine("Tens" + " " + i + " " + "intents");
                   Console.WriteLine("Introdueix lletres, prem <intro> per confirmar-la");
                   lletra = Console.ReadLine();
                   if (paraula.IndexOf(lletra) == -1)
                   {
                       i = i - 1;
                   }
                   else
                   {
                       cadfinal = paraula.Insert('_',lletra);
                   }
               }
               while (i >= 0);
               if (i == 0)
               {
                   Console.WriteLine("Has perdut, no et desanimis!");
               }
               else if (i > 0 && i < 6)
               {
                   Console.WriteLine("Molt bé ets un/a crack!!");
               }
               else
               {
                   Console.WriteLine("Has jugat bé, però t'has de concentrar més");
               }
               Console.WriteLine("Vols tornar a jugar?");
               Console.WriteLine("Prem s, si és que si o prem n si és que no");
               continuar = Console.ReadLine();
               switch (continuar)
               {
                   case "s": continuar = "si"; break;
                   case "n": continuar = "no"; break;
               }
           }
           while (continuar == "si");
 
 
 
 
       }
   }
}
 
http://foro.elhacker.net/programacion_cc/c_el_ahorcado-t316311.0.html#ixzz1AdqkGtk8

Utiliza las etiquetas GeSHi, ayudan a leer el code, luego lo miro, ahora voy a comer ^^
En línea




Khronos14

Desconectado Desconectado

Mensajes: 285


A lie is a lie


Ver Perfil WWW
Re: C# el ahorcado
« Respuesta #7 en: 10 Enero 2011, 15:24 »

Tuve que hacer el juego del ahorcado en un examen de C# con interfaz gráfica. Te dejo mi juego.



http://www.megaupload.com/?d=PJ5OSA2N

PD: Saqué un 10 :D

Saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
El ahorcado en Lenguaje C « 1 2 »
Programación C/C++
darkxxx 29 20,067 Último mensaje 15 Octubre 2008, 19:25
por JuaN-ThE-HaCKeR
Ahorcado!!
Programación C/C++
Pkñahackersina 7 1,879 Último mensaje 24 Noviembre 2009, 01:05
por SpesMod
El juego del ahorcado...
Programación C/C++
-Digital- 9 2,916 Último mensaje 7 Abril 2010, 22:12
por DarkItachi
Juego del ahorcado C#
.NET
treblatp 3 2,296 Último mensaje 3 Febrero 2011, 20:18
por Khronos14
[consulta] ahorcado :B « 1 2 »
Programación C/C++
Darioxhcx 17 2,860 Último mensaje 3 Febrero 2011, 00:41
por do-while
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines