1
resposta

Ficou diferente do Instrutor. Está Correto?

private void button1_Click(object sender, EventArgs e)
        {
            double valorDaNotaFiscal;
            double imposto;

            valorDaNotaFiscal = 900;

            if(valorDaNotaFiscal < 1000)
            {
                imposto = 0.02;
                MessageBox.Show("O valor do imposto a ser pago é 2%: " + imposto);
            }
            else if (valorDaNotaFiscal >= 1000 && valorDaNotaFiscal < 3000)
            {
                imposto = 0.025;
                MessageBox.Show("O valor do imposto a ser pago é 2.5%: " + imposto);
            }
            if(valorDaNotaFiscal >= 3000 && valorDaNotaFiscal < 7000)
            {
                imposto = 0.028;
                MessageBox.Show("O valor do imposto a ser pago é 2.8%: " + imposto);
            }
            else if(valorDaNotaFiscal >= 7000)
            {
                imposto = 0.03;
                MessageBox.Show("O valor do imposto a ser pago é 3%: " + imposto);
            }
1 resposta

Olá Lucas,

está correto sim, o resultado dará o mesmo que do instrutor. A diferença é que como o instrutor usou sempre else if para fazer as condições novas, não seria necessário verificar a condições de maior igual, pois o else já indica que será o caso contrário do if anterior.

            if(valorDaNotaFiscal < 1000)
            {
                imposto = 0.02;
            }
            // já sei que com certeza é maior ou igual a 1000
            else if (valorDaNotaFiscal < 3000)
            {
                imposto = 0.025;
            }
            // já sei que com certeza é maior ou igual a 3000
            else if(valorDaNotaFiscal < 7000)
            {
                imposto = 0.028;
            }
            // já sei que com certeza é maior ou igual a 7000
            else
            {
                imposto = 0.03;
            }