This repository has been archived on 2024-10-24. You can view files and clone it, but cannot push or open issues or pull requests.
NG_2023_Stanislav_Mykhailenko/Lesson_2/Task_1/Program.cs

51 lines
1.1 KiB
C#
Raw Normal View History

2023-03-15 16:47:53 +00:00
/*
* Lesson 2 Task 1: get a collection of ten products and their prices, then output them sorted by their price, both ascending and descending
* Author: Stanislav Mykhailenko
* License: Unlicense
*/
2023-03-20 00:14:49 +00:00
using ProductClass;
2023-03-15 16:47:53 +00:00
List<Product> products = new List<Product>();
for (int i = 0; i < 10; i++)
{
string name;
2023-03-19 12:09:19 +00:00
float price;
while (true)
{
Console.Write($"Enter product {i + 1} name: ");
string? input = Console.ReadLine();
if (!string.IsNullOrEmpty(input))
{
name = input;
2023-03-19 12:09:19 +00:00
break;
}
2023-03-19 12:09:19 +00:00
}
2023-03-19 12:09:19 +00:00
while (true)
{
Console.Write($"Enter product {i + 1} price: ");
if (float.TryParse(Console.ReadLine(), out price))
break;
}
products.Add(new Product(name, price));
2023-03-15 16:47:53 +00:00
}
2023-03-19 11:05:55 +00:00
for (int i = 0; i < 2; i++)
2023-03-15 16:47:53 +00:00
{
2023-03-19 12:09:19 +00:00
bool descending = Convert.ToBoolean(i);
2023-03-15 16:47:53 +00:00
2023-03-19 12:09:19 +00:00
products.Sort((first,second) => (descending ? second.Price.CompareTo(first.Price) : first.Price.CompareTo(second.Price)));
2023-03-15 16:47:53 +00:00
2023-03-19 12:09:19 +00:00
Console.WriteLine($"Sorted {(descending ? "descending" : "ascending")}:");
2023-03-15 16:47:53 +00:00
2023-03-19 12:09:19 +00:00
foreach (Product product in products)
{
Console.WriteLine(product);
}
2023-03-15 16:47:53 +00:00
}