# Session Two: Getting Better | Csharp autora: Isabela Silva Sousa [toc] ## Exercício 01 - **Crie uma função que implemente a lógica para calcular o valor total a ser pago na compra de ingressos do Cinemark. A partir do total de ingressos inteiras, meias e o preço cheio do ingresso, realize o cálculo.** **A função deve retornar uma mensagem no seguinte formato:** **“O valor da compra de XXX ingressos referente ao filme XXX é R$ XXX”** ```csharp= using System; public class CalcularIngressoCinemark { public int QtdInteira { get; set; } public int QtdMeia { get; set; } public double Preco { get; set; } public string Filme { get; set; } } public string CalcularIngresso (CalcularIngressoCinemark ingresso) { int totalIngressos = ingresso.QtdInteira + ingresso.QtdMeia; double totalInteira = ingresso.QtdInteira * ingresso.Preco; double totalMeia = ingresso.QtdMeia * (ingresso.Preco / 2); double total = totalInteira + totalMeia; string resposta =$"O valor da compra de {totalIngressos} ingressos referente ao filme {ingresso.Filme} é R$ {total}"; return resposta; } CalcularIngressoCinemark a = new CalcularIngressoCinemark(); a.QtdInteira = 2; a.QtdMeia = 3; a.Preco = 17.50; a.Filme = "Um lugar silencioso 2"; string b = CalcularIngresso(a); Console.WriteLine(b); ``` ## Exercício 02 - **Crie uma função que implemente a lógica do jogo Jokenpo entre 2 jogadores e retorne verd/falso se o jogador 1 venceu.** **As possibilidades de jogada são “Papel”, “Pedra” e “Tesoura”.** ```csharp= using System; public class CalcularPartida { public string Jogador1 { get; set; } public string Jogador2 { get; set; } } public bool Jokenpo (CalcularPartida partida) { bool jogador1venceu = (partida.Jogador1 == "Papel" && partida.Jogador2 == "Tesoura") || (partida.Jogador1 == "Pedra" && partida.Jogador2 == "Tesoura") || (partida.Jogador1 == "Papel" && partida.Jogador2 == "Papel"); return jogador1venceu; } CalcularPartida a = new CalcularPartida(); a.Jogador1 = "Papel"; a.Jogador2 = "Tesoura"; bool b = Jokenpo(a); Console.WriteLine("Jogador venceu: " + b); ``` ## Exercício 03 - **Crie uma função composta que a partir das datas de checkin (entrada) e checkout (saída) em um hotel, considerando a quantidade de pessoas que serão hospedadas, calcule o valor total a ser pago, sendo que o valor da diária é R$ 120,00.** ```csharp= using System; public class CalcularHospedagem { public DateTime Checkin { get; set; } public DateTime Checkout { get; set; } public int QtdPessoas { get; set; } } public double TotalDias1(DateTime ida, DateTime volta) { TimeSpan dif = volta - ida; double dias = dif.TotalDays + 1; return dias; } public double HospedagemHotel(CalcularHospedagem hotel) { double dias = TotalDias1(hotel.Checkin, hotel.Checkout); double a = dias * hotel.QtdPessoas * 120; return a; } CalcularHospedagem b = new CalcularHospedagem(); b.Checkin = new DateTime(2021, 5, 5); b.Checkout = new DateTime(2021, 5, 6); b.QtdPessoas = 4; double c = HospedagemHotel(b); Console.WriteLine("Hospedagem ficou " + c); ``` ## Exercício 04 - **Crie uma função composta que implemente a lógica para calcular o valor total de uma compra de passagem aérea. A companhia de viagem está com uma promoção que independente do destino, os passageiros serão cobrados por dia de viagem, onde cada dia custa R$ 200,00. Crianças são cobradas pela metade.** ```csharp= using System; public class PassagemAereaCalcular { public DateTime Ida { get; set; } public DateTime Volta { get; set; } public int QtdAdultos { get; set; } public int QtdCriancas { get; set; } public string Origem { get; set; } public string Destino { get; set; } } public double CalcularTotalDias2(DateTime ida, DateTime volta) { TimeSpan dif = volta - ida; double a = dif.TotalDays + 1; return a; } public double CalcularPassagemAerea(PassagemAereaCalcular passagem) { double dias = CalcularTotalDias2(passagem.Ida, passagem.Volta); double b = (dias * passagem.QtdAdultos * 200) + (dias * passagem.QtdCriancas * 100); return b; } PassagemAereaCalcular c = new PassagemAereaCalcular(); c.Ida = new DateTime(2021, 5, 5); c.Volta = new DateTime(2021, 5, 6); c.QtdAdultos = 4; c.QtdCriancas = 5; c.Origem = "SP"; c.Destino = "Dublin"; double d = CalcularPassagemAerea(c); Console.WriteLine("Total da Viagem: " + d); ``` ## Exercício 05 - **Crie uma função composta que implemente a lógica da compra de um Pacote de Viagem em Família. Esse pacote é composto pela viagem aérea e hospedagem em um hotel. Utilize as mesmas regras descritas nos exercícios anteriores e retorne um comprovante da compra do pacote contendo os totais do hotel, passagem e o valor final da compra. O comprovante deve ter uma mensagem que segue o template abaixo:** **“A compra do Pacote de XXX dias para o destino XXX foi finalizado com sucesso! O total incluindo todas despesas é de R$ XXX”** ```csharp= using System; public class EstadioHotel2 { public DateTime Checkin { get; set; } public DateTime Checkout { get; set; } public int QtdPessoas { get; set; } } public class PassagemAerea2 { public DateTime Ida { get; set; } public DateTime Volta { get; set; } public int QtdAdultos { get; set; } public int QtdCriancas { get; set; } public string Origem { get; set; } public string Destino { get; set; } } public class Comprovante { public double Total { get; set; } public double TotalHotel { get; set; } public double TotalPassagem { get; set; } public string Mensagem { get; set; } } public double TotalDias3(DateTime ida, DateTime volta) { TimeSpan dif = volta - ida; double a = dif.TotalDays + 5; return a; } public double CalcularPassagemAerea(PassagemAerea2 passagem) { double dias = TotalDias3(passagem.Ida, passagem.Volta); double b = (dias * passagem.QtdAdultos * 250) + (dias * passagem.QtdCriancas * 130); return b; } public double HospedagemHotel(EstadioHotel2 hotel) { double dias = TotalDias3(hotel.Checkin, hotel.Checkout); double c = dias * hotel.QtdPessoas * 200; return c; } public Comprovante PacoteViagem(PassagemAerea2 passagem, EstadioHotel2 estadia) { double totalHotel = HospedagemHotel(estadia); double totalPassagem = CalcularPassagemAerea(passagem); double dias = TotalDias3(passagem.Ida, passagem.Volta); Comprovante comprovante = new Comprovante(); comprovante.TotalHotel = totalHotel; comprovante.TotalPassagem = totalPassagem; comprovante.Total = totalHotel + totalPassagem; comprovante.Mensagem = $"A compra do Pacote de {dias} dias para o destino {passagem.Destino} foi finalizado com sucesso! O total incluindo todas despesas é de R$ {comprovante.Total}"; return comprovante; } PassagemAerea2 d = new PassagemAerea2(); d.Ida = new DateTime(2021, 5, 5); d.Volta = new DateTime(2021, 5, 6); d.QtdAdultos = 4; d.QtdCriancas = 5; d.Origem = "SP"; d.Destino = "Dublin"; EstadioHotel2 e = new EstadioHotel2(); e.Checkin = new DateTime(2021, 5, 5); e.Checkout = new DateTime(2021, 5, 6); e.QtdPessoas = 9; Comprovante comprovante = PacoteViagem(d, e); Console.WriteLine(comprovante.Total); Console.WriteLine(comprovante.TotalPassagem); Console.WriteLine(comprovante.TotalHotel); Console.WriteLine(comprovante.Mensagem); ```
{"metaMigratedAt":"2023-06-16T03:54:52.303Z","metaMigratedFrom":"Content","title":"Session Two: Getting Better | Csharp","breaks":true,"contributors":"[{\"id\":\"efa8ac71-fa69-4ab5-8a89-20016d037e45\",\"add\":7418,\"del\":0}]"}
Expand menu