### INFO B - Caroline Campos Lima, 04 # F.L Session Two: Getting Better [toc] ## Exercício 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 double CalcularIngresso(IngressoCinemark ingresso) { double inteira = ingresso.QtdInteira * ingresso.Preco; double meia = ingresso.QtdMeia * (ingresso.Preco / 2); return inteira + meia; } IngressoCinemark ic = new IngressoCinemark(); ic.QtdInteira = 3; ic.QtdMeia = 2; ic.Preco = 34.00; ic.Filme = "Godzilla vs Kong"; double a = CalcularIngresso(ic); Console.WriteLine("O valor da compra de " + ic.QtdInteira + ic.QtdMeia + " ingressos referente ao filme " + ic.Filme + " é R$" + a); // O valor da compra de 32 ingressos referente ao filme Godzilla vs Kong é R$136 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 qtdIngresso = ingresso.QtdInteira + ingresso.QtdMeia; double inteira = ingresso.QtdInteira * ingresso.Preco; double meia = ingresso.QtdMeia * (ingresso.Preco / 2); double total = inteira + meia; string mensagem = $"O valor da compra de {qtdIngresso} ingressos referente ao filme {ingresso.Filme} é R$ {total}"; return mensagem; } IngressoCinemark ic = new IngressoCinemark(); ic.QtdInteira = 3; ic.QtdMeia = 2; ic.Preco = 34.00; ic.Filme = "Godzilla vs Kong"; string a = CalcularIngresso(ic); Console.WriteLine(a); ``` ## Exercício 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 possibilidades = partida.Jogador1 == "pedra" && partida.Jogador2 == "tesoura" || partida.Jogador1 == "tesoura" && partida.Jogador2 == "papel" || partida.Jogador1 == "papel" && partida.Jogador2 == "padra"; return possibilidades; } Partida p = new Partida(); p.Jogador1 = "tesoura"; p.Jogador2 = "papel"; bool a = Jokenpo(p); Console.WriteLine("O jogador 1 venceu? " + a); // O jogador 1 venceu? True ``` ## Exercício 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 EstadiaHotel { public DateTime Checkin {get; set;} public DateTime Checkout {get; set;} public int QtdPessoas {get; set;} } public double TotalDias(DateTime ida, DateTime volta) { TimeSpan diferenca = volta - ida; double dias = diferenca.TotalDays + 1; return dias; } public double HospedagemHotel(EstadiaHotel hotel) { double totalDias = TotalDias(hotel.Checkin, hotel.Checkout); double total = totalDias * hotel.QtdPessoas * 120; return total; } EstadiaHotel eh = new EstadiaHotel(); eh.Checkin = new DateTime(2021, 7, 18); eh.Checkout = new DateTime(2021, 7, 24); eh.QtdPessoas = 5; double a = HospedagemHotel(eh); Console.WriteLine("Valor total da hospedagem: " + a); // Valor total da hospedagem: 4200 ``` ## Exercício 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 TotalDias(DateTime ida, DateTime volta) { TimeSpan diferenca = volta - ida; double dias = diferenca.TotalDays + 1; return dias; } public double CalcularPassagemAerea(PassagemAerea passagem) { double totalDias = TotalDias(passagem.Ida, passagem.Volta); double total = (totalDias * passagem.QtdAdultos * 200) + (totalDias * passagem.QtdCriancas * 100); return total; } PassagemAerea pa = new PassagemAerea(); pa.Ida = new DateTime(2021, 12, 23); pa.Volta = new DateTime(2021, 12, 27); pa.QtdAdultos = 3; pa.QtdCriancas = 1; pa.Origem = "São Paulo"; pa.Destino = "Berlim"; double a = CalcularPassagemAerea(pa); Console.WriteLine("O valor total da viagem saindo de " + pa.Origem + " com destino para " + pa.Destino + " é de: " + a); // O valor total da viagem saindo de São Paulo com destino para Berlim é de: 3500 ``` ## Exercício 5 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= 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 class EstadiaHotel { public DateTime Checkin {get; set;} public DateTime Checkout {get; set;} public int QtdPessoas {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 TotalDias(DateTime ida, DateTime volta) { TimeSpan diferenca = volta - ida; double dias = diferenca.TotalDays + 1; return dias; } public double HospedagemHotel(EstadiaHotel hotel) { double totalDias = TotalDias(hotel.Checkin, hotel.Checkout); double total = totalDias * hotel.QtdPessoas * 120; return total; } public double CalcularPassagemAerea(PassagemAerea passagem) { double totalDias = TotalDias(passagem.Ida, passagem.Volta); double total = (totalDias * passagem.QtdAdultos * 200) + (totalDias * passagem.QtdCriancas * 100); return total; } public Comprovante PacoteViagem(PassagemAerea passagem, EstadiaHotel hospedagem) { double totalHotel = HospedagemHotel(hospedagem); double totalPassagem = CalcularPassagemAerea(passagem); double dias = TotalDias(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; } PassagemAerea pa = new PassagemAerea(); pa.Ida = new DateTime(2021, 12, 23); pa.Volta = new DateTime(2021, 12, 27); pa.QtdAdultos = 3; pa.QtdCriancas = 1; pa.Origem = "São Paulo"; pa.Destino = "Tóquio"; EstadiaHotel eh = new EstadiaHotel(); eh.Checkin = new DateTime(2021, 5, 7); eh.Checkout = new DateTime(2021, 5, 9); eh.QtdPessoas = 4; Comprovante a = PacoteViagem(pa, eh); Console.WriteLine(a.Mensagem); // A compra do Pacote de 5 dias para o destino Tóquio foi finalizado com sucesso! O total incluindo todas despesas é de R$ 4940 ```
{"metaMigratedAt":"2023-06-15T23:56:24.656Z","metaMigratedFrom":"Content","title":"F.L Session Two: Getting Better","breaks":true,"contributors":"[{\"id\":\"d83c7a84-ea20-48d2-809b-933a34168ebe\",\"add\":16883,\"del\":8861}]"}
Expand menu