No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende Ingl茅s, Programaci贸n, AI, Ciberseguridad y mucho m谩s.

Antes: $249

Currency
$209
Suscr铆bete

Termina en:

3 D铆as
20 Hrs
41 Min
14 Seg

Ciclos For

18/20
Recursos

Aportes 36

Preguntas 2

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

Para el ejercicio de convertir String a Int, aparte de la soluci贸n de Celis, tambien se puede usar esta:

    platziCoins = Convert.ToInt32(Console.ReadLine());

Tambi茅n existe una funci贸n para indentar u organizar el c贸digo
con:
CTRL + K, D

CICLOS FOR

El bucle for se utiliza con frecuencia en C#. Ejemplo:

for (int index = 0; index < 10; index++)
{
    Console.WriteLine($"Hello World! The index is {index}");
}

El c贸digo anterior funciona de la misma forma que los bucles while y do que ya ha usado. La instrucci贸n for consta de tres partes que controlan su funcionamiento.

La primera parte es el inicializador de for: int index = 0; declara que index es la variable de bucle y establece su valor inicial en 0.

La parte central es la condici贸n de for: index < 10 declara que este bucle for debe continuar ejecut谩ndose mientras que el valor del contador sea menor que diez.

La 煤ltima parte es el iterador de for: index++ especifica c贸mo modificar la variable de bucle despu茅s de ejecutar el bloque que sigue a la instrucci贸n for. En este caso, especifica que index debe incrementarse en uno cada vez que el bloque se ejecuta.

Ejemplos:

Convert.ToInt32 (Console.ReadLine());

Quisiera agregar algo al c贸digo en la 煤ltima parte en el default cuando nos dice valor ingresado no v谩lido en el casino, tenemos que poner abajo un switchControl = "menu"; para que nos devuelva al menu y no se nos buguee spameando el mensaje de "Valo4 ingresado no v谩lido en el casino".

*se帽al

Yo para identar uso Ctrl K D
Lo uso cada segundo jejeee

entonces una manera de solucionarlo, espero la siguiente clase a ver si esta correcta

Lo resolv铆, aunque puede que en alg煤n lado te cobren coins por eso.

Complementando la posible opci贸n para la conversi贸n de string a int ser铆a:

Convert.ToInt32 (Console.ReadLine());

despu茅s de 2 d铆as lo consegu铆

error: cada vez q entra al men煤 se cuenta como un juego m谩s
Como consejo, para poder tabular de manera f谩cil y r谩pida puedes usar la combinaci贸n: Alt+Shift+F
`namespace helloWorld` `{` ` class Program` ` {` ` const int LIMIT = 21;` ` static void Main(string[] args)` ` {` ` Console.WriteLine($"Bienvenido al Juego de {LIMIT} cuantas fichas desea?");` ` System.Random random = new System.Random();` ` var token = Convert.ToInt32(Console.ReadLine());` ` for(int i=0; i< token; i++)` ` {` ` int cards = getCards(random);` ` int dealerCards = random.Next(1,21);` ` string message = "";` ` if(cards > dealerCards && cards<= 21)` ` {` ` message= $"Le has gando a la casa con {cards} contra {dealerCards}";` ` }` ` if(cards> 21)` ` {` ` message= $"Has perdido porque tienes mas de 21 cartas, tienes {cards}";` ` }` ` if(dealerCards > cards)` ` {` ` message= $"La casa gan贸 porque tiene {dealerCards} y tu {cards}";` ` }` ` if (cards == dealerCards)` ` {` ` message = "Es un empate";` ` }` ` Console.WriteLine(message);` ` if (i < token)` ` {` ` Console.WriteLine("Empezando el juego nuevamente");` ` }` ` ` ` }` ` }` ` static int getCards(Random random)` ` {` ` int cards = 0;` ` ` ` string option = "si";` ` while (cards<=21)` ` {` ` Console.WriteLine($"Desea sacar una carta? Tienes {cards} cartas");` ` option = Console.ReadLine().ToLower();` ` if(option == "no")` ` {` ` break;` ` }` ` cards += random.Next(1, 12);` ` }` ` return cards;` ` }` ` }` `}`
```c# for (int i = 0; i < creditos; i++) { switch (switchControl) { case "menu": Console.WriteLine("escriba 21 para jugar 21"); switchControl = Console.ReadLine(); i--; break; ```for (int i = 0; i < creditos; i++) { switch (switchControl) { case "menu": Console.WriteLine("escriba 21 para jugar 21"); switchControl = Console.ReadLine(); i--; break;
done !!!!
Hola, lo resolv铆, me parece muy interesante el an谩lisis que se hace para resolver este error

Una pista de como resolver el problema es fijandose en el switch case y modificando el for

Ventajas y desventajas del ciclo for

Ventajas

  • Control preciso de la iteraci贸n: El ciclo for permite especificar exactamente cu谩ntas veces se debe repetir el bloque de c贸digo. Esto proporciona un control preciso sobre la iteraci贸n y permite realizar tareas repetitivas de manera eficiente.

  • Sintaxis clara y concisa: La sintaxis del ciclo for en C# es clara y concisa, lo que facilita su lectura y comprensi贸n . Es f谩cil de entender incluso para programadores principiantes.

  • Flexibilidad en la inicializaci贸n, condici贸n y actualizaci贸n: El ciclo for permite especificar una expresi贸n de inicializaci贸n, una condici贸n de finalizaci贸n y una expresi贸n de actualizaci贸n. Esto brinda flexibilidad para controlar los valores iniciales, las condiciones de finalizaci贸n y los cambios en cada iteraci贸n.

Desventajas

  • Limitado a un n煤mero fijo de repeticiones: El ciclo for est谩 dise帽ado para repetir un n煤mero fijo de veces. Si no se conoce de antemano el n煤mero exacto de iteraciones, puede ser m谩s apropiado utilizar otras estructuras de control, como el ciclo while o do while.

  • Puede ser propenso a errores: Si no se maneja correctamente, el ciclo for puede conducir a errores como bucles infinitos o fuera de l铆mites. Es importante asegurarse de que la condici贸n de finalizaci贸n sea correcta y que las variables utilizadas en el ciclo se actualicen correctamente en cada iteraci贸n.

  • Menos legible en casos complejos: A medida que aumenta la complejidad del bloque de c贸digo dentro del ciclo for, puede volverse menos legible y m谩s dif铆cil de entender. En estos casos, puede ser preferible utilizar estructuras de control m谩s simples o dividir el c贸digo en funciones m谩s peque帽as y legibles.

encontre en el 鈥<鈥

Hola!, yo lo hice as铆.

int.TryParse(Console.ReadLine(), out coins);

Encontr茅 el error.

Listo, 隆lo logr茅!

Investigue en Chat GPT y esto fue lo que me arrojo:

Para convertir la entrada le铆da por Console.ReadLine() a un tipo de dato int en C#, puedes utilizar el m茅todo int.Parse() o int.TryParse(). Aqu铆 tienes un ejemplo de c贸mo hacerlo:

using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("Ingrese un n煤mero entero:");
        string input = Console.ReadLine();

        int number;

        // M茅todo 1: Utilizando int.Parse()
        try
        {
            number = int.Parse(input);
            Console.WriteLine("El n煤mero ingresado es: " + number);
        }
        catch (FormatException)
        {
            Console.WriteLine("El valor ingresado no es un n煤mero entero v谩lido.");
        }

        // M茅todo 2: Utilizando int.TryParse()
        if (int.TryParse(input, out number))
        {
            Console.WriteLine("El n煤mero ingresado es: " + number);
        }
        else
        {
            Console.WriteLine("El valor ingresado no es un n煤mero entero v谩lido.");
        }
    }
}

lo que no agarro muy bien es como utilizar bien la keyborring,como ajustar bien el trabajo.

Hola, s铆 logr茅 resolverlo!

Buenas, para identar todo el documento en VS pueden hacer

ctrl + k , ctrl + d

creo que encontr茅 el error.

Logre descubrir que era, basicamente algo dentro de las condicionales interrumpia el for al ganar o perder

Pues鈥 encontr茅 el lugar del c贸digo que causa el error

fue algo negativo al i

Si

El ciclo recorre las n veces, y tenemos un do while, que siempre sera verdadero, pero aqui tendriamos que validar que sea verdadero siempre y cuando nuestro ciclo acabe esto sin importar si hayamos ganado o perdido,
saluldos

encontr茅 el error solo falta que lo solucione xd

Encontr茅 el error y lo solucione de una manera

Lo logr茅. Resuleto el error de la diferencia de los platziCoins y otro que tenia de evaluar a tiempo si me pase de 21.