Bom dia, eu gostaria de uma ajuda em um exercício que o professou passou na faculdade. Já tentei fazer de várias maneiras, mas eu não consigo encaixar essa linha no programa " O numero que encerrará a leitura será zero".
Exercício:
Escreva uma função que leia uma sequência de 50 valores reais, calcule e imprima a média aritmética dos valores lidos, a quantidade de valores positivos, a quantidade de valores negativos e o percentual de valores negativos e positivos. Mostre os resultados. O número que encerrará a leitura será zero. A função deve retornar a quantidade de números lidos. Chame a função no método principal (Main) e imprima o retorno.
Eu tentei fazer desse jeito, só que eu tive que usar a função break, gostaria de saber se tem um outro jeito de fazer usando só as estruturas de repetição básicas, for, while e if else. ( creio eu que esteja errado da forma que eu fiz)
for (i = 1; i < 6; i++)
{
Console.Write("Digite um numero: ");
num = Convert.ToInt32(Console.ReadLine());
if (num != 0)
{
if (num > 0)
{
quant_positivo++;
}
else if (num < 0)
{
quant_negativo++;
}
soma_geral = soma_geral + num;
cont++;
}
else{
break;
}
}
Console.WriteLine("Media: {0}", (soma_geral / cont));
Console.WriteLine("Quantidade numeros positivos: {0}", quant_positivo);
Console.WriteLine("Quantidade numeros negativos: {0}", quant_negativo);
Console.WriteLine("Porcentagem negativos: {0}%", (quant_negativo / cont) * 100);
Console.WriteLine("Porcentagem positivos: {0}%", (quant_positivo / cont) * 100);
return cont;
}
}
}