fbpx

Módulo 2 / lección 5 tema 8 / duda sobre código

  • Módulo 2 / lección 5 tema 8 / duda sobre código

    Posted by Ricardo Ancelmo Vega Guardado on 9 mayo, 2023 en 8:29 am

    Buenos días profe. Solo una duda o bueno si me ilumina un tanto por favor. En la lección 5 y tema 8 del curso de Programación Orientada a Objetos con C#, seguí el ejemplo 2 tal cual pero en todos se me activa el else, como si no hubiera 1era opción.

    <div>Aquí comparto el código:</div><div>
    </div><div>using System;</div><div>
    </div><div>using System.Linq;</div><div>
    </div><div>namespace Eje2addmetyvaraclasesm2v8</div><div>
    </div><div>{</div><div>
    </div><div> public static class Program</div><div>
    </div><div> {</div><div>
    </div><div> public static void Main()</div><div>
    </div><div> {</div><div>
    </div><div> Carro carro = new Carro();</div><div>
    </div><div> bool resultado = carro.Arrancar(“FORD”);</div><div>
    </div><div> if(resultado)</div><div>
    </div><div> {</div><div>
    </div><div> Console.WriteLine(carro.marca + ” Arranco de manera efectiva”);</div><div>
    </div><div> }</div><div>
    </div><div> else</div><div>
    </div><div> {</div><div>
    </div><div> Console.WriteLine(carro.marca + ” No arranco de manera efectiva”);</div><div>
    </div><div> }</div><div>
    </div><div> if(carro.Acelerar())</div><div>
    </div><div> {</div><div>
    </div><div> Console.WriteLine(carro.marca + ” Acelero de manera efectiva”);</div><div>
    </div><div> }</div><div>
    </div><div> else</div><div>
    </div><div> {</div><div>
    </div><div> Console.WriteLine(carro.marca + ” No acelero de manera efectiva”);</div><div>
    </div><div> }</div><div>
    </div><div> if(carro.Frenar())</div><div>
    </div><div> {</div><div>
    </div><div> Console.WriteLine(carro.marca + ” Freno de manera efectiva”);</div><div>
    </div><div> }</div><div>
    </div><div> else</div><div>
    </div><div> {</div><div>
    </div><div> Console.WriteLine(carro.marca + ” No freno de manera efectiva”);</div><div>
    </div><div> }</div><div>
    </div><div> Console.ReadKey();</div><div>
    </div><div> }</div><div>
    </div><div> }</div><div>
    </div><div> class Carro</div><div>
    </div><div> {</div><div>
    </div><div> public string marca;</div><div>
    </div><div> bool arranco = false;</div><div>
    </div><div> bool acelero = false;</div><div>
    </div><div> bool freno = false;</div><div>
    </div><div> public bool Arrancar(string marca)</div><div>
    </div><div> {</div><div>
    </div><div> this.marca = marca;</div><div>
    </div><div> if (arranco && !acelero && !freno)</div><div>
    </div><div> {</div><div>
    </div><div> this.arranco = true;</div><div>
    </div><div> return true;</div><div>
    </div><div> }</div><div>
    </div><div> else</div><div>
    </div><div> {</div><div>
    </div><div> return false;</div><div>
    </div><div> }</div><div>
    </div><div> }</div><div>
    </div><div> public bool Acelerar()</div><div>
    </div><div> {</div><div>
    </div><div> if(arranco && !acelero && !freno)</div><div>
    </div><div> {</div><div>
    </div><div> this.acelero = true;</div><div>
    </div><div> return true;</div><div>
    </div><div> }</div><div>
    </div><div> else</div><div>
    </div><div> {</div><div>
    </div><div> return false;</div><div>
    </div><div> }</div><div>
    </div><div> }</div><div>
    </div><div> public bool Frenar()</div><div>
    </div><div> {</div><div>
    </div><div> if(arranco && acelero && !freno)</div><div>
    </div><div> {</div><div>
    </div><div> this.freno = true;</div><div>
    </div><div> return true;</div><div>
    </div><div> }</div><div>
    </div><div> else</div><div>
    </div><div> {</div><div>
    </div><div> return false;</div><div>
    </div><div> }</div><div>
    </div><div> }</div><div>
    </div><div> }</div><div>
    </div><div>}</div><div>
    </div><div>
    </div><div>
    </div><div>Gracias sigo pendiente 🙏</div>

    Ricardo Ancelmo Vega Guardado respondido 11 meses, 3 semanas 2 Miembros · 4 Respuestas
  • 4 Respuestas
  • Angel Sánchez

    organizador
    9 mayo, 2023 en 10:49 am

    Hola Ricardo, puedes colocar lo que te pide tu ejercicio y subir algun archivo con tu codigo, ya sea en un txt y otro que se vea mejor. Por favor 😀

    • Ricardo Ancelmo Vega Guardado

      Miembro
      9 mayo, 2023 en 11:40 am

      A caray según yo lo borré y lo acomodé bien. Se me hizo raro como se posteo esto. Pero aquí lo comparto de nuevo. La cosa que solo me aplica los else.

      Gracias profe.

      • Angel Sánchez

        organizador
        10 mayo, 2023 en 4:13 pm

        Hola Ricardo, aquí te dejo unos comentarios:

        1. En el método Arrancar de la clase Carro, estás usando la condición if (arranco && !acelero && !freno) antes de asignar this.arranco = true;. Esto significa que siempre se evaluará como falso y nunca se establecerá arranco en true. Debes cambiar la condición a if (!arranco && !acelero && !freno) para asegurarte de que arranco se establezca correctamente.
        2. En el método Acelerar de la clase Carro, nuevamente tienes una condición incorrecta. Debería ser if (arranco && !acelero && !freno) en lugar de if (arranco && !acelero && !freno).
        3. En el método Frenar de la clase Carro, la condición es incorrecta. Debería ser if (arranco && acelero && !freno) en lugar de if (arranco && acelero && !freno).

        Así se debería de ver tu código:

        using System;

        namespace Eje2addmetyvaraclasesm2v8

        {

        public static class Program

        {

        public static void Main()

        {

        Carro carro = new Carro();

        bool resultado = carro.Arrancar("FORD");

        if (resultado)

        {

        Console.WriteLine(carro.marca + " Arrancó de manera efectiva");

        }

        else

        {

        Console.WriteLine(carro.marca + " No arrancó de manera efectiva");

        }

        if (carro.Acelerar())

        {

        Console.WriteLine(carro.marca + " Aceleró de manera efectiva");

        }

        else

        {

        Console.WriteLine(carro.marca + " No aceleró de manera efectiva");

        }

        if (carro.Frenar())

        {

        Console.WriteLine(carro.marca + " Frenó de manera efectiva");

        }

        else

        {

        Console.WriteLine(carro.marca + " No frenó de manera efectiva");

        }

        Console.ReadKey();

        }

        }

        class Carro

        {

        public string marca;

        bool arranco = false;

        bool acelero = false;

        bool freno = false;

        public bool Arrancar(string marca)

        {

        this.marca = marca;

        if (!arranco && !acelero && !freno)

        {

        this.arranco = true;

        return true;

        }

        else

        {

        return false;

        }

        }

        public bool Acelerar()

        {

        if (arranco && !acelero && !freno)

        {

        this.acelero = true;

        return true;

        }

        else

        {

        return false;

        }

        }

        public bool Frenar()

        {

        if (arranco && acelero && !freno)

        {

        this.freno = true;

        return true;

        }

        else

        {

        return false;

        }

        }

        }

        }

        Se ajunstaron las condiciones de los métodos Arrancar, Acelerar y Frenar para que funcionen correctamente. Nos avisas si quedo todo claro. 😀

  • Ricardo Ancelmo Vega Guardado

    Miembro
    15 mayo, 2023 en 5:00 pm

    Qué tal profe, buenas tardes. Vale muchas gracias de veras. Seguiré practicando esa poo porque si me puso en jaque a modo que esas prácticas de fin de unidad… Sigo en tenebrosa oscuridad. Va gracias profe.

Inicia sesión para responder.

Start of Discussion
0 de 0 respuestas Junio 2018
Ahora