No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Reto: bug entre ciclos

19/20
Recursos

Aportes 35

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Muy buena la solución propuesta.

Esta es otra:

   i--;

todavía no veo como salir del juego o cerrar el programa

Yo le puse algo equivalente.

<platziCoins++> 

21 con graficos en unity

Mi solución fue no incluir la operación de suma en el for si no en el while do del case 21 para que solo sume cuando jugamos ![](https://static.platzi.com/media/user_upload/image-0d17cf41-3f13-43f1-a9f5-4637b8bda98f.jpg)

seria chévere un curso de programación orientada a objetos solo para c#

![](<file:///home/esteb/Imágenes/blackjack with c%23.png>)Esta es mi versión: ![](https://static.platzi.com/media/user_upload/blackjack%20with%20c%23-da2c5b63-f67d-46c0-b90b-6c920cf438ca.jpg)

Para mi la clave fue imprimir en pantalla cada vez que la variable de los creditos se iba derementando y así darme cuenta que el problema estaba en la secuencia del Switch, hay que eliminar el case del menu y llevar lo que esta adentro de él hacia el ciclo for.

Esta es ni versión, talvez esta muy largo pero funciona, tiene varias validaciones por si acaso.

//Console.WriteLine("Hello, World!");
            int totalJugador = 0;
            int totalDealer = 0;
            int num = 0;
            int apuesta = 0;
            int platziCoins = 0;
            bool puedeApostar;
            int coinsRestantes=0;
            string seguirApostando;
            string message = "";
            string controlOtraCarta = "";
            string switchControl;

            System.Random random = new System.Random();

            //Blackjack, Juntar 21 pidiendo, en casa de pasarte de 21 pierdes.
            //cartas o en caso de tener menos
            //de 21 igual tener mayor puntuación que el dealer

            do
            {
                Console.WriteLine("===WELCOME AL P L A T Z I N O===");
                Console.WriteLine("¿***Cuántos PlatziCoins deseas?***");
                platziCoins = int.Parse(Console.ReadLine());
                platziCoins = platziCoins +coinsRestantes;

                do
                {
                    do {
                        totalJugador = 0;
                        totalDealer = 0;
                        Console.WriteLine("Tienes " + platziCoins + " platziCoins");
                        Console.WriteLine("***¿Cuantos PlatziCoins deseas apostar?***");
                        apuesta = int.Parse(Console.ReadLine());
                        if (apuesta > platziCoins)
                        {
                            Console.WriteLine("!!!NO TIENES SUFICIENTES CREDITOS!!!");
                            puedeApostar = false;
                        }
                        else
                        {
                            puedeApostar = true;
                        }

                    } while (puedeApostar != true);
                    Console.WriteLine("---Escriba ‘21’ para jugar al 21---");
                    switchControl = Console.ReadLine();
                    if (switchControl == "21")
                    {
                        do
                        {
                            num = random.Next(1, 12);
                            totalJugador = totalJugador + num;
                            Console.WriteLine($"Te salió el número: {num} ");
                            Console.WriteLine("¿Deseas otra carta ?");
                            controlOtraCarta = Console.ReadLine();

                        } while (controlOtraCarta == "Si" ||
                                    controlOtraCarta == "si" ||
                                    controlOtraCarta == "yes");
                    }

                    totalDealer = random.Next(14, 23);
                    Console.WriteLine($"El dealer tiene {totalDealer}");

                    if (totalJugador > totalDealer && totalJugador < 22)
                    {
                        message = "Venciste al dealer, felicidades";
                        platziCoins += apuesta;
                        Console.WriteLine(message);
                    }
                    else if (totalJugador >= 22)
                    {
                        message = "Perdiste vs el dealer, te pasaste de 21";
                        platziCoins -= apuesta;
                        Console.WriteLine(message);
                    }
                    else if (totalJugador <= totalDealer)
                    {
                        message = "Perdiste vs el dealer, lo siento";
                        platziCoins -= apuesta;
                        Console.WriteLine(message);
                    }
                    else
                    {
                        message = "condición no válida";
                    }
                    Console.WriteLine("Tienes " + platziCoins + " creditos");

                    Console.WriteLine("¿DESEAS SEGUIR APOSTANDO?");
                    seguirApostando = Console.ReadLine();
                    
                    coinsRestantes = +platziCoins;
                    Console.Clear();
                    if (platziCoins == 0)
                    {
                        Console.WriteLine("SIN CREDITOS, POR FAVOR COMPRE MAS...");
                        break;
                    }
                } while (seguirApostando == "si" || seguirApostando == "SI");
                Console.WriteLine("¿QUIERES SALIR DEL P L A T Z I N O ?");
                seguirApostando=Console.ReadLine();
                if(seguirApostando == "si" || seguirApostando == "SI")
                {
                    Console.WriteLine("GRACIAS POR JUGAR");
                    Console.ReadKey();
                }
                else
                {
                    Console.Clear();
                }
            } while (seguirApostando == "no" || seguirApostando == "NO");
Completé el juego con el número de fichas a apostar en cada jugada, sumando o restándolas según el resultado. <https://github.com/ElisabethRuizM/Juego21/blob/master/HelloWorld2/Program.cs>
Muy buen curso la programación en unit me guastaría

Les muestro mi solución a las tareas extra, tiene mucha oportunidad de mejora, cualquier persona que desee sugerir algún cambio o mejora es bienvenida de hacerlo.

int creditos = 0;
int apuesta = 0;
int totalJugador = 0;
int totalDealer = 0;
int num = 0;
string message = "";
string controlOtraCarta = "";
string switchControl = "menu";
System.Random random = new System.Random();

//Blackjack, Juntar 21 pidiendo, en casa de pasarte de 21 pierdes.
//cartas o en caso de tener menos
//de 21 igual tener mayor puntuación que el dealer
while (true)
{
    Console.WriteLine("Hello, welcome to K-sino!");
    Console.WriteLine("¿Cuántos creditos deseas comprar?\n" +
        "*Ingresa un número entero*\n" +
        "*Cada partida de juego tiene un costo de 1 credito*");
    creditos = Convert.ToInt32(Console.ReadLine());

    

    for (int i = 0; i < creditos*2; i++)
    {
        totalJugador = 0;
        totalDealer = 0;

        switch (switchControl)
        {
            case "menu":
                Console.WriteLine("\nEscriba ‘21’ para jugar al 21.\n" +
                                  "        ‘S’  para salir y guardar sus creditos.");
                switchControl = Console.ReadLine();

                if (switchControl == "21")
                {
                    Console.WriteLine($"Ingrese la cantidad de creditos que desee apostar\n" +
                        $"  Cantidad de creditos disponibles: {creditos}");
                    apuesta = Convert.ToInt32(Console.ReadLine());
                    break;
                } 
                else if (switchControl == "S" || switchControl == "s")
                {
                    Environment.Exit(1);
                }
                break;

            case "21":
                do
                {
                    num = random.Next(1, 12);
                    totalJugador = totalJugador + num;
                    Console.WriteLine("Toma tu carta, jugador,");
                    Console.WriteLine($"Te salió el número: {num} ");
                    Console.WriteLine("¿Deseas otra carta?");
                    controlOtraCarta = Console.ReadLine();

                } while (controlOtraCarta == "Si" ||
                         controlOtraCarta == "si" ||
                         controlOtraCarta == "yes");

                totalDealer = random.Next(14, 23);
                Console.WriteLine($"\nTu puntuaje fue: {totalJugador}");
                Console.WriteLine($"El dealer obtuvo: {totalDealer}\n");

                if (totalJugador > totalDealer && totalJugador < 22 || totalDealer > 21)
                {
                    creditos += apuesta;
                    message = "Felicidades, venciste al dealer\n" +
                        $"   Conseguiste: {apuesta} creditos!!!\n" +
                        $"Total de creditos: {creditos}";
                    switchControl = "menu";
                }
                else if (totalJugador >= 22)
                {
                    creditos -= apuesta;
                    message = "Te pasaste de 21 vs el dealer\n" +
                        $"   Perdiste: {apuesta} creditos!\n" +
                        $"Total de creditos: {creditos}";
                    switchControl = "menu";
                }
                else if (totalJugador < totalDealer)
                {
                    creditos -= apuesta;
                    message = "Lo siento, perdiste vs el dealer\n" +
                        $"   Perdiste: {apuesta} creditos!\n" +
                        $"Total de creditos: {creditos}";
                    switchControl = "menu";
                }
                else if (totalJugador == totalDealer)
                {
                    message = "Empataste vs el dealer\n" +
                        "   Conservas tus creditos!";
                    switchControl = "menu";
                }
                else
                {
                    message = "Condición no válida, intentalo de nuevo";
                    switchControl = "menu";
                }
                Console.WriteLine(message);
                break;

            default:
                Console.WriteLine("Valor ingresado no válido en el K-sino");
                switchControl = "menu";
                break;
        }
    }
    Console.WriteLine("\n     Tus creditos se han terminado!!!\n" +
        "Presione cualquier tecla para continuar...");
    Console.ReadLine();
    Console.Clear();
    
}
El uso de `<=` en un bucle `for` se refiere a la comparación del índice de iteración. Por ejemplo, en `for (int i = 0; i <= n; i++)`, el bucle continuará ejecutándose mientras `i` sea menor o igual a `n`. Esto significa que el bucle incluirá el valor `n` en su ejecución. Si solo quisieras iterar hasta `n - 1`, utilizarías `<` en lugar de `<=`. Recuerda que elegir correctamente el operador de comparación es clave para el flujo correcto de tu programa.
Si quieren borrar todo lo de la consola lo que yo haria es Console.Clear(); Asi se borraria todo lo anterior
Yo quiero ver como se hace el 21 en unity, estaría cool. please
El problema es cuando te topas lideres de equipo que porque no escribes el código como ellos lo escriben dicen que esta mal, aunque funcione tu lógica, algunos no son de mente abierta son obtusos.
Mi versión light de Blackjack <https://github.com/cesarforall/Blackjack/tree/master> ![](https://static.platzi.com/media/user_upload/image-baf19dab-6b3e-4ddd-bdaf-c9ab15200710.jpg)
PODRIAMOS AGREGAR UN LINEA DONDE INDIQUE EL INTENTO EN QUE VAS algo asi FICHA 1 FICHA 2 FICHA 3 .....
Yo nada mas pase el contador de i++ cuando se escribe 21 y no en otras partes asegurándose que se juegue solo 5 veces `using System.Drawing;` `//Console.WriteLine("Hello, World!");` `int totalJugador = 0;` `int totalDealer = 0;` `int num = 0;` `int platziCoins = 0;` `string message = "";` `string controlOtraCarta = "";` `string switchControl = "menu";` `System.Random random = new System.Random();` `//Blackjack, Juntar 21 pidiendo, en casa de pasarte de 21 pierdes.` `//cartas o en caso de tener menos` `//de 21 igual tener mayor puntuación que el dealer` `while (true)` `{` ` Console.WriteLine("Welcome al P l a t z i n o");` ` Console.WriteLine("¿Cuántos PlatziCoins deseas? \n" +` ` "Ingresa un número entero \n" +` ` "Recuerda que necesitas 1 por ronda");` ` platziCoins = int.Parse(Console.ReadLine());` ` for (int i = 0; i < platziCoins;)` ` {` ` totalJugador = 0;` ` totalDealer = 0;` ` switch (switchControl)` ` {` ` case "menu":` ` Console.WriteLine("Escriba ‘21’ para jugar al 21");` ` switchControl = Console.ReadLine();` ` i++;` ` break;` ` case "21":` ` do` ` {` ` num = random.Next(1, 12);` ` totalJugador = totalJugador + num;` ` Console.WriteLine("Toma tu carta, jugador,");` ` Console.WriteLine($"Te salió el número: {num} ");` ` Console.WriteLine("¿Deseas otra carta ?");` ` controlOtraCarta = Console.ReadLine();` ` } while (controlOtraCarta == "Si" ||` ` controlOtraCarta == "si" ||` ` controlOtraCarta == "yes");` ` totalDealer = random.Next(14, 23);` ` Console.WriteLine($"El dealer tiene {totalDealer}");` ` if (totalJugador > totalDealer && totalJugador < 22)` ` {` ` message = "Venciste al dealer, felicidades";` ` switchControl = "menu";` ` }` ` else if (totalJugador >= 22)` ` {` ` message = "Perdiste vs el dealer, te pasaste de 21";` ` switchControl = "menu";` ` }` ` else if (totalJugador <= totalDealer)` ` {` ` message = "Perdiste vs el dealer, lo siento";` ` switchControl = "menu";` ` }` ` else` ` {` ` message = "condición no válida";` ` }` ` Console.WriteLine(message);` ` break;` ` default:` ` Console.WriteLine("Valor ingresa no válido en el C A S I N O");` ` break;` ` }` ` Console.WriteLine(platziCoins);` ` Console.WriteLine(i);` ` }` `}`
los recursos no aparece el codigo terminado, si me gustaia que lo puedan tener ahi para verificar el codigo de cada estudiante y puedan validar su ejercicio aprendido, en mi caso tengo alguna falla en mi codigo ya que no me resulta igual que el tutor.

Yo lo resolví eliminando el case de “menu” y coloqué lo que había dentro de este case después de la entrada platziCoins

Console.WriteLine("Escriba '21' para jugar al 21");
    switchControl = Console.ReadLine();

Curso de POO c#, sería muy relevante en este nivel.

Yo puse puntos de interrupción y de esta manera fue mas sencillo identificar el error. 😃 ❤️

// BlackJack

using System.ComponentModel.DataAnnotations;

int yourCards = 0;
int dealersCards = 0;
string message = “”;
string switchControl = “menu”;
int coins = 0;
System.Random random = new System.Random();
int randomNum;
string conti = “”;

while (true){
yourCards = 0;
dealersCards = 0;

Console.WriteLine("Welcome!");
Console.WriteLine("How many coins do You want? remember you need one coin per round: ");
coins = int.Parse(Console.ReadLine());

for (int i = 0; i < coins; i++)

{ 


    switch (switchControl)

    {
    case "menu":
        Console.WriteLine("Enter '21' to Start! ");
        switchControl = Console.ReadLine();
            i--;
        break;

    case "21":
        do
        {
            randomNum = random.Next(1, 12);
            Console.WriteLine($"Your card is: {randomNum}");
            Console.WriteLine("Do You want to take another card? 'yes' or 'no' ");
            yourCards += randomNum;
            Console.WriteLine($"Your current score is: {yourCards}");



        }   while (Console.ReadLine() == "yes");

        dealersCards = random.Next(14, 22);
        Console.WriteLine($"Dears finally score was: {dealersCards}");

        if (yourCards == dealersCards)

        {
            message = "It's a draw!";
            switchControl = "menu";
        }

        else if (yourCards > dealersCards && yourCards < 22)
        {
            message = "Great! You Win!";
            switchControl = "menu";
        }

        else if (yourCards > 21)
        {
            message = "Sorry! You lose. Your score is over 21.";
            switchControl = "menu";
        }

        else if (dealersCards > yourCards && dealersCards < 22)
        {
            message = "Dealer Win!";
            switchControl = "menu";
        }

        else if (dealersCards > 21)
        {
            message = "You Win! Dealers score is over 21.";
            switchControl = "menu";
        }

        if (yourCards == 21)
        {
            message = $"BlackJack! You got {yourCards}";
            switchControl = "menu";
        }

        else if (dealersCards == 21)
        {
            message = $"BlackJack! Dealer got {yourCards}";
            switchControl = "menu";
        }

        Console.WriteLine(message);
        break;
        default:
        Console.WriteLine("Sorry Enter an other option.");
        break;  

    }
}
Console.WriteLine("Sorry! Coins insuficient.");
Console.WriteLine("You want to buy more? 'yes' or 'no': ");
conti = Console.ReadLine();
if( conti == "yes" )
{
    switchControl = "menu";
}

}

// See https://aka.ms/new-console-template for more information
//Console.WriteLine(“Hello, World!”);

int totalJugador = 0;
int totalDealer = 0;
int num = 0;
string message = “”;
int credito = 0;
string controlOtraCarta = “”;
string switchControl = “menu”;
System.Random random = new System.Random();

//Blackjack, Juntar 21 pidiendo, en caso de pasarte de 21 pierdes, cartas o en caso de tener menos
// de 21 igual tener mayor puntuacion que el dealer

while (true)

{

Console.WriteLine("¿CUANTOS CREDITOS DESEAS apostar? \n" + "Ingresa un numero entero \n" + "Recuerda que necesitas 1 por ronda de juego");
credito = int.Parse(Console.ReadLine());


for (int i = 0; i < credito; i++)
{

    Console.WriteLine("Welcome al casino");



    totalJugador = 0;
    totalDealer = 0;
    switch (switchControl)
    {
        case "menu":

            Console.WriteLine("Escriba '21' para juagar al 21");
            Console.WriteLine($"Has usado {i}" + $" de los creditos que compraste que son  {credito}");
            i = i - 1;
            switchControl = Console.ReadLine();

            

            break;

        case "21":

            
            do
            {
                num = random.Next(1, 12);
                totalJugador = totalJugador + num;
                Console.WriteLine("Toma tu primera carta, jugador");
                Console.WriteLine($"te salio el numero: {num} ");
                Console.WriteLine($"Tienes acumulado {totalJugador}");
                Console.WriteLine($"Has usado {i}" + $" de los creditos que compraste que son  {credito}");
                Console.WriteLine("Deseas otra carta? ");
                controlOtraCarta = Console.ReadLine();


            } while (controlOtraCarta == "si" || controlOtraCarta == "Si" || controlOtraCarta == "yes");

            totalDealer = random.Next(12, 23);
            Console.WriteLine($"El dealer tiene {totalDealer}!!!");


            if (totalJugador > totalDealer && totalJugador < 22)
            {
                message = "Venciste al Dealer, felicidades";
                switchControl = "menu";
                credito = credito + credito;
            }
            else if (totalJugador >= 22)
            {
                message = "Perdiste vs el dealer, te pasaste de 21";
                switchControl = "menu";
                credito = credito - credito;
            }
            else if (totalJugador <= totalDealer && totalDealer < 22)
            {
                message = "Perdiste vs el dealer, lo siento";
                switchControl = "menu";
                credito = credito - credito;
            }
            else if (totalDealer >= 22)
            {
                message = "El dealer perdio y tu ganaste";
                switchControl = "menu";
                credito = credito + credito;
            }
            else
            {
                message = "condicion no válida";

            }

            Console.WriteLine(message);
            break;

        default:
            Console.WriteLine("Valor ingresado no válido en el CASINO");
            break;
    }
}

}

Bueno le quite el ciclo for y lo deje así

int totalJugador = 0;
int totalDealer = 0;
int num = 0, i=0;
int platziCoins = 0;
string message = "";
string controlOtraCarta = "";
string switchControl = "menu";

System.Random random = new System.Random();

//Blackjack, Juntar 21 pidiendo, en casa de pasarte de 21 pierdes.
//cartas o en caso de tener menos
//de 21 igual tener mayor puntuación que el dealer

while (true)
{
    Console.Clear();
    Console.WriteLine("Welcome al P l a t z i n o");
    Console.WriteLine("¿Cuántos PlatziCoins deseas? \n" +
                       "Ingresa un número entero \n" +
                       "Recuerda que necesitas 1 por ronda");
    platziCoins = int.Parse(Console.ReadLine());
    i = 1;
    do
    {
        totalJugador = 0;
        totalDealer = 0;
        switch (switchControl)
        {
            case "menu":
                Console.WriteLine("-------------------------------");
                Console.WriteLine($"Ronda numero: {i}");
                Console.WriteLine("Escriba ‘21’ para jugar al 21");
                switchControl = Console.ReadLine();
                break;
            case "21":
                
                do
                {
                    num = random.Next(1, 12);
                    totalJugador = totalJugador + num;
                    Console.WriteLine("Toma tu carta, jugador,");
                    Console.WriteLine($"Te salió el número: {num} ");
                    Console.WriteLine($"llevas un total de {totalJugador}");
                    Console.WriteLine("¿Deseas otra carta ?");
                    controlOtraCarta = Console.ReadLine();

                } while (controlOtraCarta == "Si" ||
                         controlOtraCarta == "si" ||
                         controlOtraCarta == "yes");

                totalDealer = random.Next(14, 23);
                Console.WriteLine($"El dealer tiene {totalDealer}");

                if (totalJugador > totalDealer && totalJugador < 22)
                {
                    message = "Venciste al dealer, felicidades";
                    switchControl = "menu";
                }
                else if (totalJugador >= 22)
                {
                    message = "Perdiste vs el dealer, te pasaste de 21";
                    switchControl = "menu";
                }
                else if (totalJugador <= totalDealer)
                {
                    message = "Perdiste vs el dealer, lo siento";
                    switchControl = "menu";
                }
                else
                {
                    message = "condición no válida";
                }

                Console.WriteLine(message);
                Console.ReadKey();
                i++;

                break;
            default:
                Console.WriteLine("Valor ingresa no válido en el  C A S I N O");
                break;
        }
    } while (i <= platziCoins);
}

La verdad me emocionaria un curso de Programacion Orientada a Objetos (POO) con C#, siento que seria un buen curso y mas para los que estamos empezando en el mundo de la programacion 😉

Mi solucion “for(int i = -1; i < monedas; i+=1)”

Lo resolví sin el for

using System.Drawing;
int totalJugador = 0;
int totalDealer = 0;
int num = 0;
int platziCoins = 0;
int platziCoinsApostados = 0;
string message = "";
string controlOtraCarta = "";
string switchControl = "menu";

System.Random random = new System.Random();

//Blackjack, Juntar 21 pidiendo, en casa de pasarte de 21 pierdes.
//cartas o en caso de tener menos
//de 21 igual tener mayor puntuación que el dealer

while (true)
{

    Console.WriteLine("Welcome al P l a t z i n o");
    Console.WriteLine("¿Cuántos PlatziCoins deseas? \n" +
                       "Ingresa un número entero \n" +
                       "Recuerda que necesitas 1 por ronda");
    platziCoins = int.Parse(Console.ReadLine());

    
    while (platziCoins !=0)
    {

        totalJugador = 0;
        totalDealer = 0;

        switch (switchControl)
        {
            case "menu":

                Console.WriteLine("Escriba ‘21’ para jugar al 21");
                switchControl = Console.ReadLine();
                break;
            case "21":
                Console.WriteLine($"¿Cuántos PlatziCoins deseas apostar? tienes {platziCoins} platziCoins");
                platziCoinsApostados= int.Parse(Console.ReadLine());
                do
                {
                    num = random.Next(1, 12);
                    totalJugador = totalJugador + num;
                    Console.WriteLine("Toma tu carta, jugador,");
                    Console.WriteLine($"Te salió el número: {num} ");
                    Console.WriteLine("¿Deseas otra carta ?");
                    controlOtraCarta = Console.ReadLine();

                } while (controlOtraCarta == "Si" ||
                         controlOtraCarta == "si" ||
                         controlOtraCarta == "yes");

                totalDealer = random.Next(14, 23);
                Console.WriteLine($"El dealer tiene {totalDealer}");

                if (totalJugador > totalDealer && totalJugador < 22)
                {
                    platziCoins = (platziCoins - platziCoinsApostados) + (platziCoinsApostados * 2);
                    message = $"Venciste al dealer, felicidades, tienes {platziCoins} platziCoins";
                    Console.Clear();
                }
                else if (totalJugador >= 22)
                {
                    platziCoins = platziCoins - platziCoinsApostados;
                    message = $"Perdiste vs el dealer, te pasaste de 21, tienes {platziCoins} platziCoins, ya que perdiste {platziCoinsApostados}";
                    switchControl = "menu";
                    Console.Clear();
                }
                else if (totalJugador <= totalDealer)
                {
                    platziCoins = platziCoins - platziCoinsApostados;
                    message = $"Perdiste vs el dealer, lo siento tienes {platziCoins} platziCoins, ya que perdiste {platziCoinsApostados}";
                   
                    switchControl = "menu";
                    Console.Clear();
                }
                else
                {
                    message = "condición no válida";
                }
                Console.WriteLine(message);
                break;
            default:
                Console.WriteLine("Valor ingresa no válido en el  C A S I N O");
                switchControl = "menu";
                break;
        }
    }
}

Esta es mi version del BlackJack o 21

//Variables globales
string message = "";
string switchControl = "menu";
int carta, totalJugador, totaldealer;
System.Random random = new System.Random();
//Otorga cartas al Dealer & Jugador
void otraCartaDealer()
{
    carta = random.Next(1, 11);
    totaldealer = carta + totaldealer;
}
void otraCartaJugador()
{
    carta = random.Next(1, 11);
    totalJugador = carta + totalJugador;
}

/*Blackjack*/
while (true)
{
    switch (switchControl)
    {
        case "menu":
            Console.WriteLine("Bienvenido a BlackJack");
            Console.WriteLine("Escriba 21 para jugar al BlackJack" +
                              "\nO escribe 'Salir' para cerrar BlackJack:");
            switchControl = Console.ReadLine();
            break;

        case "21":
            int playcount = 0, win = 0;
            Console.WriteLine("\nIngresa la cantidad de tokens quieres para jugar: " +
                              "\n(Se consumira un token por ronda) ");
            int blackJack_token = Convert.ToInt32(Console.ReadLine());
            for (int i = 0; i < blackJack_token; i++)
            {
                totalJugador = 0;
                totaldealer = 0;
                carta = random.Next(1, 11);
                totalJugador = carta;
                carta = random.Next(1, 11);
                totaldealer = carta;
                otraCartaDealer();

                //Dealer AI
                do
                {
                    if (totaldealer < 11)
                    {
                        otraCartaDealer();
                    }
                    else if (totaldealer < 21)
                    {
                        double probabilidad = 1.0 - ((double)(totaldealer - 11) / 10.0);
                        if (random.NextDouble() < probabilidad)
                        {
                            otraCartaDealer();
                        }
                        else { message = "Pasar"; }
                    }
                    else if (totaldealer == 21)
                    {
                        message = "Pasar";
                        break;
                    }
                    else { message = "Pasar"; }
                } while (message != "Pasar");

                //Jugador
                int token_aux = blackJack_token - i;
                Console.WriteLine($"\nComienza la ronda {i + 1}" +
                                  $"\nToken restantes: {token_aux}");
                do
                {
                    otraCartaJugador();
                    Console.WriteLine($"\nPuntaje Jugador: {totalJugador}");
                    if (totalJugador == 21)
                    {
                        message = "";
                        break;
                    }
                    else if (totalJugador > 21)
                    {
                        message = "";
                        break;
                    }
                    Console.WriteLine("\nDeseas agarrar otra carta?" +
                                      "\n- Si\n- Pasar");
                    message = Console.ReadLine();
                } while (message == "Si");
                playcount++;

                if (totalJugador <= totaldealer && totaldealer <= 21 || totalJugador > 21)
                {
                    message = $"\nMejor suerte a la proxima" +
                              $"\nPuntaje del Jugador: {totalJugador}" +
                              $"\nPuntaje del Dealer: {totaldealer}";
                    Console.WriteLine(message);
                    switchControl = "menu";
                    Console.ReadKey();
                }
                else if (totalJugador > totaldealer || totaldealer > 21)
                {
                    message = $"\nVenciste al dealer. Ganaste!" +
                              $"\nPuntaje del Jugador: {totalJugador}" +
                              $"\nPuntaje del Dealer: {totaldealer}";
                    Console.WriteLine(message);
                    switchControl = "menu";
                    Console.ReadKey();
                    win++;
                }
                else
                {
                    message = "\nCondicion no valida\n";
                    switchControl = "menu";
                    Console.ReadKey();
                    break;
                }
            }
            Console.WriteLine($"\nGame Over" +
                              $"\nHas ganado {win}/{playcount} rondas\n");
            break;
            
        default:
            Console.WriteLine("\nOpcion seleccionada no es valida\n");
            switchControl = "menu";
            break;
    }
}

Muy buen material en todo el curso, junto con buena explicación – felicidades a todo el equipo. Una idea: – aunque tal vez ya lo tienen pensado para más adelante – agregar un video extra demostrando el funcionamiento del depurador, sería buen complemento del ultimo video –

Espero que mi aporte pueda ayudar.
System.Random random = new System.Random();

int apuesta = 0;
int platziCoins = 0;
int num = 0;
string message = “”;
string controlOtraCarta = “”;
string switchControl = “menu”;
while (true){
Console.Clear();
Console.WriteLine(" Welcome al P l a z i n o");
Console.WriteLine(" cuantos PlatziCoins deseas? \n" +
"Ingresa un número entero \n " +
“Recuerda que necesitas una por ronda”);
platziCoins = int.Parse(Console.ReadLine());

for (int i = 0; i < platziCoins; i++)
{
    //sin int pero afuera con int tendrian que estar
    int totalJugador = 0;
    int totalDealer = 0;

    switch (switchControl)
    {
        case "menu":
            Console.WriteLine(" Escriba '21' para jugar al 21 ");
            switchControl = Console.ReadLine();
            Console.WriteLine("Ingrese su Apuesta");
            apuesta = int.Parse(Console.ReadLine());
            i = i - 1;
            
            break;
        case "21":
            do
            {
                num = random.Next(1, 12);
                totalJugador = totalJugador + num;
                Console.WriteLine($"Su Apuesta es de {apuesta}");
                Console.WriteLine("Toma tu Primera Carta Compañero");
                Console.WriteLine($"Te salio el numero : {num} ");
                Console.WriteLine("¿ Deseas otras carta ?");
                controlOtraCarta = Console.ReadLine();

            } while (controlOtraCarta == "Si" || controlOtraCarta == "si" || controlOtraCarta == "yes");
                totalDealer = random.Next(14, 21);
                Console.WriteLine($"El Dealer tiene : {totalDealer} !!");
            if (totalJugador > totalDealer && totalJugador < 22)
            {
                message = "Venciste al dealer, felicidades";
                apuesta = apuesta * 2;
                Console.WriteLine($"Saldo de apuesta {apuesta}");
                platziCoins = platziCoins + 1;
                switchControl = "menu";
                
            }
            else if (totalJugador >= 22)
            {
                message = "Perdiste contra el Dealer pasaste 21";
                switchControl = "menu";
            }
            else if (totalJugador <= totalDealer)
            {
                message = "Perdiste vs el dealer, lo siento";
                switchControl = "menu";
            }
            else
            {
                message = "Condición no válida";
            }

            Console.WriteLine(message);
            break;
        default:
            Console.WriteLine("Valor ingresado no valido en el C a S i N o");
            break;
    }
}

}

M I P R O Y E C T O :

<code> Console.WriteLine("---------------------------------------------------");
Console.WriteLine("| *- W E L C O M E  T O  | L A S  V E G A S | -*  |");


int totalJugador = 0;
int totalDealer = 0;
int num = 0;
int apuesta = 0;
int  HYCOINS = 0;
bool puedeApostar;
int FICHAS_RESTANTES = 0;
string seguirApostando;
string message = "";
string controlOtraCarta = "";
string switchControl;

System.Random random = new System.Random();


do
{
    Console.WriteLine("---------------------------------------------------");
    Console.WriteLine("|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|$|");
    Console.WriteLine("---------------------------------------------------");
    Console.WriteLine("\n ¿ C U A N T A S  F I C H A S  Q U I E R E S ?");
    Console.WriteLine("");
    HYCOINS  = int.Parse(Console.ReadLine());
    HYCOINS = HYCOINS + FICHAS_RESTANTES ;

    do
    {
        do
        {
            totalJugador = 0;
            totalDealer = 0;
            Console.WriteLine("");
            Console.WriteLine("-----------------------------------------------------------------");
            Console.WriteLine("| T I E N E S  U N  T O T A L  D E " + " | " 
            + HYCOINS + " $ " + " H Y C O I NS (^_^)  |");
            Console.WriteLine("-----------------------------------------------------------------");
            Console.WriteLine("\n ¿ C U A N T O S  $ HYCOINS $  Q U I E R E S  A P O S T A R ? (O_o)");
            Console.WriteLine("");
            apuesta = int.Parse(Console.ReadLine());
            if (apuesta > HYCOINS)
            {
                Console.WriteLine("");
                Console.WriteLine(" N O  T I E N E S  S U F I C I E N T E S  C R E D I T O S  (>.<) ");
                puedeApostar = false;
            }
            else
            {
                puedeApostar = true;
            }

        } while (puedeApostar != true);
        Console.WriteLine("");
        Console.WriteLine("------------------------------------------------------------------");
        Console.WriteLine("| E S C R I B A |21| P A R A  E M P E Z A R  A  J U G A R  (^_^) |");
        Console.WriteLine("------------------------------------------------------------------");
        Console.WriteLine("");
        switchControl = Console.ReadLine();

        if (switchControl == "21")
        {
            do
            {
                num = random.Next(1, 12);
                totalJugador = totalJugador + num;
                Console.WriteLine("");
                Console.WriteLine("----------------------------------------");
                Console.WriteLine($"| T E  S A L I O  E L  N U M E R O : {num} |");
                Console.WriteLine("----------------------------------------");
                Console.WriteLine("\n ¿ D E S E A S  O T R A  C A R T A ? ");
                Console.WriteLine("");
                controlOtraCarta = Console.ReadLine();

            } while (controlOtraCarta == "SI" ||
                     controlOtraCarta == "si" ||
                     controlOtraCarta == "yes");
        }

        totalDealer = random.Next(15, 23);
        Console.WriteLine("");
        Console.WriteLine("--------------------------------------------------------");
        Console.WriteLine($"| E L  D E A L E R  T I E N E | {totalDealer} | C A R T A S (>.<) |");
        Console.WriteLine("--------------------------------------------------------");
        Console.WriteLine("");

        if (totalJugador > totalDealer && totalJugador < 22)
        {
            message = " V E N C I S T E  A L  D E A L E R, F E L I C I D A D E S  (^_^) ";
            HYCOINS += apuesta;
            Console.WriteLine(message);
        }
        else if (totalJugador >= 22)
        {
            message = " P E R D I S T E  VS  E L  D E A L E R, L O  S I E N T O  (>.<) ";
            HYCOINS -= apuesta;
            Console.WriteLine(message);
        }
        else if (totalJugador <= totalDealer)
        {
            message =  "P E R D I S T E  VS  E L  D E A L E R, L O  S I E N T O  (>.<) ";
            HYCOINS -= apuesta;
            Console.WriteLine(message);
        }
        else
        {
            message = " C O N D I C I O N  N O  V A L I D A (>.<) ";
        }
        Console.WriteLine("");
        Console.WriteLine("------------------------------");
        Console.WriteLine("| T I E N E S " + HYCOINS + " F I C H A S |");
        Console.WriteLine("------------------------------");
        Console.WriteLine("");
        Console.WriteLine("---------------------------------------------------");
        Console.WriteLine("| ¿ D E S E A S  S E G U I R  A P O S T A N D O ? |");
        Console.WriteLine("---------------------------------------------------");
        Console.WriteLine("");
        seguirApostando = Console.ReadLine();

        FICHAS_RESTANTES  = + HYCOINS;
        Console.Clear();
        if (HYCOINS == 0)
        {
            Console.WriteLine("");
            Console.WriteLine("-------------------------------------------------------------------");
            Console.WriteLine("| S I N  C R E D I T O S, P O R  F A V O R  C O M P R A  M A S... |");
            Console.WriteLine("-------------------------------------------------------------------");
            Console.WriteLine("");
            break;
        }
    } while (seguirApostando == "si" || seguirApostando == "SI");
    Console.WriteLine("");
    Console.WriteLine("----------------------------------------------------");
    Console.WriteLine("| ¿ Q U I E R E S  S A L I R  D E L  C A S I N O ? |");
    Console.WriteLine("----------------------------------------------------");
    Console.WriteLine("");
    seguirApostando = Console.ReadLine();
    if (seguirApostando == "si" || seguirApostando == "SI")
    {
        Console.WriteLine("");
        Console.WriteLine("------------------------------------------");
        Console.WriteLine("| G R A C I A S  P O R  J U G A R  (^_^) |");
        Console.WriteLine("------------------------------------------");
        Console.WriteLine("");
        Console.ReadKey();
    }
    else
    {
        Console.Clear();
    }
} while (seguirApostando == "no" || seguirApostando == "NO");

En el if donde le ganamos al Platzino le sumo un platzi más y le mando un msj que diga Tienes una vida mas 😄

Aquí mi proyecto, con algunas modificaciones para evitar errores

System.Random random = new Random();

int coins = 0;
string cart = "";
string des = "";
int player = 0;
int num = 0;
int dealer = 0;

Console.WriteLine("Bienvenido a Platzino");

try
{

    do
    {
        Console.WriteLine("¿Cuántos platzicoins deseas?");
        coins = Convert.ToInt32(Console.ReadLine());

        for (int i = 1; i <= coins; i++)
        {

            do
            {
                Console.WriteLine("Presiona enter para tomar una carta");
                cart = Console.ReadLine();

                num = random.Next(1, 12);
                player = player + num;
                dealer = random.Next(14, 23);

                Console.WriteLine("Tu carta es: " + num);
                Console.WriteLine("Llevas: " + player);

                Console.WriteLine("\n¿Deseas otra carta? \nEscribe 2 para detener.");
                cart = Console.ReadLine();

            } while (cart != "2");

            if (player > dealer && player < 22)
            {
                Console.WriteLine("Ganaste contra el dealer. Obtienes un platzicoin extra\n");
                Console.WriteLine("Jugador: " + player);
                Console.WriteLine("Dealer: " + dealer);
                Console.WriteLine($"Llevas {i} partidas\n");
                coins++;
            }
            else if (player <= dealer)
            {
                Console.WriteLine("Perdiste contra el dealer");
                Console.WriteLine("Jugador: " + player);
                Console.WriteLine("Dealer: " + dealer);
                Console.WriteLine($"Llevas {i} partidas \n");
            }
            else if (player >= 22)
            {
                Console.WriteLine("Perdiste contra el dealer, te pasaste de los 21");
                Console.WriteLine("Jugador: " + player);
                Console.WriteLine("Dealer: " + dealer);
                Console.WriteLine($"Llevas {i} partidas \n");
            }
            player = 0;
        }


        Console.WriteLine("Se terminaron tus platzicoins");

        Console.WriteLine("Quieres volver a jugar? Escribe SI o NO");
        des = Console.ReadLine();

    } while (des == "SI");



}
catch (FormatException)
{
    Console.WriteLine("Ingresó mal un dato. Vuelva a intentarlo");
}