Olá, Tainá!
O código faz o mesmo que a opinião do instrutor, porém vou deixar algumas observações:
1)
O código abaixo está incorreto quando valorDaNotaFiscal == 3000
:
else if (valorDaNotaFiscal >= 1000 && valorDaNotaFiscal <= 3000)
{
imposto = 1000 * 2.5 / 100;
x = imposto.ToString();
MessageBox.Show("valor do imposto: " + x);
}
Pois a regra diz que o valor tem que ser menor que 3000:
Se o valor for maior ou igual a 1000 e menor do que 3000, o imposto deve ser de 2.5%
2) Você poderia simplificar as condições, pois existe redundância:
Em vez de:
if (valorDaNotaFiscal < 1000)
{
}
else if (valorDaNotaFiscal >= 1000 && valorDaNotaFiscal <= 3000)
{
}
else if (valorDaNotaFiscal >= 3000 && valorDaNotaFiscal < 7000)
{
}
else
{
}
Poderia ser:
if (valorDaNotaFiscal < 1000)
{
}
else if (valorDaNotaFiscal < 3000)
{
}
else if (valorDaNotaFiscal < 7000)
{
}
else
{
}
3) Pelo princípio DRY (Don't Repet Yourself, ou Não Repita a Si Mesmo), você deveria evitar duplicação do código abaixo, deixando no final:
x = imposto.ToString();
MessageBox.Show("valor do imposto: " + x);
E então ficaria assim:
if (valorDaNotaFiscal < 1000)
{
imposto = 1000 * 2/100;
}
else if (valorDaNotaFiscal < 3000)
{
imposto = 1000 * 2.5 / 100;
}
else if (valorDaNotaFiscal < 7000)
{
imposto = 1000 * 2.8 / 100;
}
else
{
imposto = 1000 * 3 / 100;
}
x = imposto.ToString();
MessageBox.Show("valor do imposto: " + x);
É isso aí. Boa sorte e bons estudos!