Řešené úlohy k 8.-9. lekci C# .NET - Chyba ve Vyhodnocovači

Zde je kód který jsem použil, zkusil jsem různé varianty ve vašem kódu i v mém a chová se identicky. Funguje se zápornými, různě dlouhými vstupy i velkými rozdíly v číslech. Kde mám tedy chybu? Použil jsem metody, které si myslím že by měli být použity z předchozích lekcí a s mediánem jsem si nechal trochu pomoct od AI neb nevím jak jej v C# spočítat.

using System; using System.Collec­tions.Generic; using System.Linq; using System.Text; using System.Threadin­g.Tasks;

namespace OnlineApp {
class Program
{
static void Main(string[] args)
{
Console.Write­Line("Zadej počet čísel:");
int pocet = int.Parse(Con­sole.ReadLine());
int[] vstup = new int[pocet];
for (int i = 0; i < pocet; i++)
{
Console.Write("Za­dej {0}. číslo: ", i + 1);
vstup[i] = int.Parse(Con­sole.ReadLine());
}
double[] cisla = Array.ConvertA­ll(vstup, item => (double)item);
var serazena = cisla.OrderBy(x => x).ToArray();
double median;
int n = serazena.Length;

if (n % 2 == 1)
{
median = serazena[n / 2];
}
else
{
median = (serazena[n / 2 - 1] + serazena[n / 2]) / 2.0;
}

for (int i = 0; i < vstup.Length; i++)
{
Console.Write­Line($"{vstup[i]} se od mediánu odchyluje o {vstup[i] - median}");
}

Console.ReadKey();
}
} }

Přidáno Autor Stav
22. května 22:18 Avatar Jakub Páv Čekající
Aktivity