Processamento de pedidos com delegados para filtragem e classificação
C#
Medium
delegates
Tarefa «Processamento de pedidos com delegados para filtragem e classificação»
Implemente um programa para processar uma lista de pedidos. Você tem uma classe Order com os campos Id (int), CustomerName (string), Amount (decimal) e Status (string: "Pending", "Shipped", "Delivered"). No Main, crie uma lista de 5 pedidos. Use o delegado Func<Order, bool> para filtrar pedidos por status e o delegado Comparison<Order> para classificar por valor (em ordem crescente). Escreva um método ProcessOrders que recebe a lista, o delegado de filtragem e o delegado de comparação, aplica o filtro, classifica o resultado e exibe os pedidos filtrados no formato "Id: X, Customer: Y, Amount: Z, Status: W". No Main, chame ProcessOrders para filtrar pedidos com status "Pending" e classificar por Amount.
Formato de Entrada
Não há dados de entrada. Os pedidos são criados no código.
Formato de Saída
Linhas com informações sobre os pedidos filtrados e classificados. Cada linha no formato: "Id: X, Customer: Y, Amount: Z, Status: W".
Exemplos
Exemplo 1
ENTRADA
7
insert 10
insert 5
insert 15
search 10
delete 10
search 10
height
SAÍDA
Id: 5, Customer: Eve, Amount: 200.00, Status: Pending
Id: 1, Customer: Alice, Amount: 250.50, Status: Pending
Id: 3, Customer: Charlie, Amount: 300.75, Status: Pending
Exemplo 2
ENTRADA
5
insert 1
insert 2
insert 3
height
search 3
SAÍDA
Id: 5, Customer: Eve, Amount: 200.00, Status: Pending
Id: 1, Customer: Alice, Amount: 250.50, Status: Pending
Id: 3, Customer: Charlie, Amount: 300.75, Status: Pending
main.cs