В моей программе ниже я знаю, что произошло, но не знаю, какой цикл я должен использовать. Вот код. Ваша помощь будет оценена по достоинству.Какую петлю я должен использовать, чтобы получить правильный результат ниже. Программа C#
Дайте мне знать, если вам нужна дополнительная информация, чтобы понять мой вопрос.
using System;
// Write a C# program that takes x numbers as input to calculate and print the average.
class Program9
{
int input, i = 1, val, sum;
decimal avg;
public void program9M()
{
Console.Write("How many number(s) you have for an average: ");
input = Convert.ToInt32(Console.ReadLine());
if (input >= 2)
{
do
{
Console.Write("Enter number {0} for an average: ", i);
val = Convert.ToInt32(Console.ReadLine());
sum = sum + val;
i += 1;
} while (i <= input);
avg = (decimal)sum/i;
Console.WriteLine("The average of above {0} number is: {1}", i, avg);
}
else
{
Console.WriteLine("\n\nSorry you can't find average for one number, at least 2 number required\n\n");
}
Console.Write("Press any key to continue further...");
Console.ReadKey();
}
public static void Main()
{
Program9 p9 = new Program9();
p9.program9M();
}
}
Вход:
How many number(s) you have for an average: 3
Enter number 1 for an average: 5
Enter number 2 for an average: 10
Enter number 3 for an average: 15
Токовый выход:
The average of above **4** number is: **7.5**
Ожидаемый результат:
The average of above **3** number is: **10**
'i = 0' вместо' 1'? – Hackerman
Бадди, мы не живые отладчики, начнем использовать вашу функцию отладки и проверьте, в чем проблема. Если у вас есть точная проблема, спросите. – mybirthname
Эй, парень, ты прав !!!, большое спасибо. – user3460246