Программа не выдает ответ в чем ошибка? С#
Помогите пожалуйста очень нужно
using System;

namespace lab13_14
{
public class Massiv
{
static int Vvod()
{
Console.WriteLine("Введите 1-ый эмемент:");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите 2-oй эмемент:");
int b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите 3-ий эмемент:");
int c = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите 4-ый эмемент:");
int d = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите 5-ый эмемент:");
int i = Convert.ToInt32(Console.ReadLine());
return a + b + c + d + i;
}
static int Summa()
{
int sum = Vvod();
return sum;
}
static string Vivod()
{
int s = Summa();
return $"Сумма равна {s}";

}
static void Main(string[] args)
{
Vvod();
Summa();
Vivod();

}

}
}

Ответы

Ответ дал: 65biso2
0

Что это за дикий п***ец? Даже названия классов, функций непонятно какие, про ввод значений вообще молчу.

А ответ программа не выводит потому что нарушена логика вызова функций. А нарушена по нескольким причинам. Первая - полное непонимания того, что автор пишет, непонимания ООП, что куда возвращается и т.д. Вторая - несоответствие возвращаемых значений назначению функции. Почему функция Vvod() возвращает сумму введенных чисел? Это создает путаницу, она должна возвращать сами числа. Стоит почитать книги про написанию кода, например "Совершенный код", что бы понимать базовые правила. Одна функция - одна задача.

Конкретно в данном случае нужно в мейне вызвать только Console.WriteLine(Vivod()), т.е. отображение возвращаемого значения функции Vivod(), т.к. к ней уже будет вызвана Summa(), а в ней и Vvod().

Ну а вообще - надо по полной переделывать, а то проверяющему будет больно(ментально), тем более сумма 5 веденных чисел находится за 4 строчки кода:

int sum = 0;

for (int i = 1; i < 6; i++){

   Console.WriteLine($"Введите {i}-ий эмемент:");

   sum += int.Parse(Console.ReadLine()); }

Console.WriteLine($"Сумма равна {sum}");

P.S. Это лабораторная по массивам? Но ты массивы даже в своем решении не используешь.

Вас заинтересует