# Session Two [toc] ### Exercicio 1 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 public class IngressoCinemark { public int QtdInteira { get; set; } public int QtdMeia { get; set; } public double Preco { get; set; } public string Filme { get; set; } } public string calcularingresso(IngressoCinemark 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 mensagem = $"O valor da compra de 4 ingressos referente ao filme {ingresso.Filme} é igual ao R${total}"; return mensagem; } IngressoCinemark ing = new IngressoCinemark(); ing.QtdInteira = 20; ing.QtdMeia = 10; ing.Preco = 10; ing.Filme = "Dragon Ball"; string x = calcularingresso(ing); x `````` ### Exercicio 2 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 public class Partida { public string Jogador1 { get; set; } public string Jogador2 { get; set; } } public bool Jokenpo(Partida partida) { bool jogador1Venceu = (partida.Jogador1 == "papel" && partida.Jogador2 == "pedra") || (partida.Jogador1 == "pedra" && partida.Jogador2 == "tesoure") || (partida.Jogador1 == "tesoura" && partida.Jogador2 == "papel"); return jogador1Venceu; } Partida p = new Partida(); p.Jogador1 = "papel"; p.Jogador2 = "tesoura"; bool x2 = Jokenpo(p); x2 ```` ### Exercicio 3 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 public class estadiohotel { 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(EstadioHotel hotel) { double dias = TotalDias1(hotel.Checkin, hotel.Checkout); double total = dias * hotel.QtdPessoas * 120; return total; } // estadiohotel estadia = new estadiohotel(); estadia.Checkin = new DateTime(2018, 4, 5); estadia.Checkout = new DateTime(2018, 4, 6); estadia.QtdPessoas = 4; double x3 = hospedagemhotel(estadia); x3 `````` ### Exercicio 4 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 public class PassagemAerea { 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 TotalDias2(DateTime ida, DateTime volta) { TimeSpan dif = volta - ida; double dias = dif.TotalDays + 1; return dias; } public double CalcularPassagemAerea(PassagemAerea passagem) { double dias = TotalDias2(passagem.Ida, passagem.Volta); double total = (dias * passagem.QtdAdultos * 200) + (dias * passagem.QtdCriancas * 100); return total; } PassagemAerea passagem = new PassagemAerea(); passagem.Ida = new DateTime(2021, 5, 7); passagem.Volta = new DateTime(2021, 5, 9); passagem.QtdAdultos = 2; passagem.QtdCriancas = 2; passagem.Origem = "SP"; passagem.Destino = "Berlin"; double x4 = CalcularPassagemAerea(passagem); x4 ````