Loading...
Danihr23 avatar Danihr23 0 Точки

7. Student Academy C#

Здравейте,

Имам проблем със сортинга на следния код: 

https://pastebin.com/BdD0Xc4W

Ще съм благодарен, ако някой ми помогне.

 

Благодаря!

Тагове:
0
Module: C# Advanced
kkaraivanov avatar kkaraivanov 486 Точки

Заповядай

namespace StudentAcademy
{
    using System;
    using System.Collections.Generic;
    using System.Linq;

    class Program
    {
        static void Main(string[] args)
        {
            int line = int.Parse(Console.ReadLine());
            var students = new Dictionary<string, List<double>>();

            for (int i = 0; i < line; i++)
            {
                string student = Console.ReadLine();
                double grade = double.Parse(Console.ReadLine());

                if (!students.ContainsKey(student))
                    students[student] = new List<double>();

                students[student].Add(grade);
            }

            Console.WriteLine(string.Join($"{Environment.NewLine}",students
                .Where(x => (x.Value.Sum() / x.Value.Count) >= 4.50)
                .OrderByDescending(x => x.Value.Sum() / x.Value.Count)
                .Select(x => $"{x.Key} -> {x.Value.Sum() / x.Value.Count():f2}")));
        }
    }
}

 

0
11/03/2020 15:52:29
Danihr23 avatar Danihr23 0 Точки

Благодаря,

Но все пак исках да видя къде ми е грешката.

0
Vicizlat avatar Vicizlat 15 Точки

Грешката ти най-вероятно е, че това

var a = studentsAvarage.OrderBy(x => x.Value).ToDictionary(x => x.Key, x => x.Value);

трябва да е OrderByDescending.

0
Danihr23 avatar Danihr23 0 Точки

Не е това пробвах и с него.Проблема е, че въобще не отразява сортинга.

Благодаря!

0
Ogikostadinov123 avatar Ogikostadinov123 1 Точки

using System;
using System.Collections.Generic;
using System.Linq;

namespace Dictionaries_7_StudentAcademy
{
    class Program
    {
        static void Main(string[] args)
        {
            Dictionary<string, List<double>> students = new Dictionary<string, List<double>>();
            int n = int.Parse(Console.ReadLine());

            for (int i = 0; i < n; i++)
            {
                string name = Console.ReadLine();
                double grade = double.Parse(Console.ReadLine());

                if (!students.ContainsKey(name))
                {
                    students.Add(name, new List<double>());
                }
                students[name].Add(grade);
            }
            foreach (var kvp in students.Where(x=>x.Value.Average(x=>x)>=4.50).OrderByDescending(y=>y.Value.Average(z=>z)))
            {
                Console.WriteLine($"{kvp.Key} -> {(kvp.Value.Average(x=>x)):f2}");
            }
        }
    }
}

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.