[ Foro de C# ]

Ejercicio 6.3.5 C# 2015

15-May-2015 22:33
Invitado (Jesus Artunduaga)
1 Respuestas

Hola como estan? Quisiera saber si el ejercicio esta bien o q le faltaria agregar o cambiar y si me pueden explicar un poco mas a fondo lo de las funciones GET q no logro entender su funcion exacta.
Saludos y gracias.


public class Bienvenida
{
    bool salir;
    public bool GetSalir()
    {
        return salir;
    }
    public void LanzarB()
    {
        Console.Write("Bienvenido a D GAME!\nPulsa \"intro\" para jugar o \"ESC\" para salir.\n");
        ConsoleKeyInfo tecla = Console.ReadKey();
        if (tecla.Key==ConsoleKey.Escape)
        {
            salir = true;
        }
        else
        {
            salir = false;
        }
    }
}

public class Partida
{
    public void LanzarP()
    {
        Console.Write("******************************\n");
        Console.Write("******************************\n");
        Console.Write("******************************\n");
        Console.Write("******************************\n");
        Console.Write("Esta seria la pantalla para jugar.\nPulsa \"intro\" para irte.\n");
        Console.ReadKey();
    }
}

public class Juego
{
    public void Lanzar()
    {
        Bienvenida hola = new Bienvenida();
        Partida game = new Partida();
        while (hola.GetSalir()==false)
        {
            hola.LanzarB();
            game.LanzarP();
        }
        
    }
    public static void Main()
    {
        Juego el = new Juego();
        el.Lanzar();

    }
}




16-May-2015 11:05
Nacho Cabanes (+83)

Imagino que el ejercicio 6.3.5 es

Ejercicio propuesto 6.3.5: Amplía el esqueleto del ConsoleInvaders (ejercicio 6.3.4): El método Lanzar de la clase Bienvenida escribirá en pantalla "Bienvenido a Console Invaders. Pulse Intro para jugar o ESC para salir". Puedes comprobar si se pulsa ESC con "ConsoleKeyInfo tecla = Console.ReadKey(); if (tecla.Key == ConsoleKey.Escape) salir = true;". El código de la tecla Intro es " ConsoleKey.Enter". También puedes usar "Console.Clear();" si quieres borrar la pantalla. Añade un método "GetSalir" a la clase Bienvenida, que devuelva "true" si el usuario ha escogido Salir o "false" si ha elegido Jugar. El método Lanzar de la clase Juego repetirá la secuencia Bienvenida-Partida hasta que el usuario escoja Salir.

Si es así, en general está bien. Apenas un par de correcciones:

- No uses tanto "\n", es un arcaísmo de los tiempos de C, que hace el código poco legible, y que no necesariamente va a ser portable entre plataformas.

- Usa métodos Lanzar, no les cambies el nombre a "LanzarB", "LanzarP", etc., porque ya aparecerá delante el nombre del objeto que estás lanzando.

Pero la lógica parece correcta y el uso del GetSalir es bueno.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)