Агрегирование, вывести часть данных таблицы отдельно - C#

Узнай цену своей работы

Формулировка задачи:

Помогите не знаю как вывести часть данных таблицы отдельно например что бы после результата ниже выводилось все Типы или Номера рейса из таблицы Вот сама прога
using System;
using System.Linq;
 
class Flight
{
    public string T  { get; private set; }
    public int R { get; private set; }
    public int Z { get; private set; }
    public int K { get; private set; }
    public double S { get { return (double)Z / K; } }
 
    public Flight(string T, int R, int Z, int K)
    {
        this.T = T;
        this.R = R;
        this.Z = Z;
        this.K = K;
    }
}
 
class Program
{
    static void Main()
    {
        // Массив:
        var flights = new Flight[ReadInt("Общее число")];
 
        for (int i = 0; i < flights.Length; i++)
        {
            Console.WriteLine();
            Console.WriteLine($"Информация о №{i + 1}:");
            flights[i] = new Flight(
                ReadString("T. Тип"),
                ReadInt("R. Номер Рейса"),
                ReadInt("Z. Общая стоимость"),
                ReadInt("K. Число мест"));
            
        }
 
        var template = "{0,4}  |{1,15} |{2,15} |{3,15} |{4,15} |{5,15:F2}";
        var line = new string('=', 89);
        Console.WriteLine();
        Console.WriteLine("Сводка:");
        Console.WriteLine(template, "№", "T", "R", "Z", "K", "S");

        for (int i = 0; i < flights.Length; i++)
        {
            var f = flights[i];
            Console.WriteLine(template, i + 1, f.T, f.R, f.Z, f.K, f.S);
           
        }
        Console.WriteLine(line);
        Console.WriteLine(template, "", "", "",
            flights.Sum(f => f.Z),
            flights.Sum(f => f.K),
            flights.Average(f => f.S));
        
        Console.ReadLine();
    }
 
    static string ReadString(string Label) => ReadValue(Label, s => s);
    static int ReadInt(string Label) => ReadValue(Label, int.Parse);
    static T ReadValue<T>(string Label, Func<string, T> Pipe = null)
    {
        while (true)
        {
            Console.Write($"{Label}: ");
            try { return Pipe(Console.ReadLine()); }
            catch
            {
                Console.SetCursorPosition(0, Console.CursorTop - 1);
                Console.WriteLine(new string(' ', Console.BufferWidth));
                Console.SetCursorPosition(0, Console.CursorTop - 2);
                Console.SetCursorPosition(0, Console.CursorTop - 3);
            }
            
        }
    }
}

Решение задачи: «Агрегирование, вывести часть данных таблицы отдельно»

textual
Листинг программы
Console.Write("Типы рейсов: ");
Console.WriteLine(String.Join(", ", flights.Select(f => f.T).Distinct()));
Console.Write("Номера рейсов: ");
Console.WriteLine(String.Join(", ", flights.Select(f => f.R)));

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы