# Session Two: Getting Better | Fund. Lógica >[color=purple]**Autor:** Letícia Rodrigues da Silva **Turma:** IndoD **Número:** 25 [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 string CalcularIngresso (IngressoCinemark ingresso) { int totalIngressos = ingresso.QtdInteira + ingresso.QtdMeia; double Inteira = ingresso.QtdInteira * ingresso.QtdMeia; double Meia = ingresso.QtdMeia * (ingresso.Preco / 2); double total = Inteira + Meia; string result = $"O valor da compra de {totalIngressos} ingressos referente ao filme {ingresso.Filme} é R$ {total}"; return result; } IngressoCinemark i = new IngressoCinemark(); i.QtdInteira = 3; i.QtdMeia = 2; i.Preco = 20; i.Filme = "Minha mãe é uma peça"; string a = CalcularIngresso(i); Console.WriteLine(a); Console.WriteLine(); // O valor da compra de 5 ingressos referente ao filme Minha mãe é uma peça é R$ 26 ``` ## 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; public string jogador2; } public bool Jokenpo (Partida partida) { bool venceu = (partida.jogador1 == "Tesoura" && partida.jogador2 == "Papel") || (partida.jogador1 == "Papel" && partida.jogador2 == "Pedra") || (partida.jogador1 == "Pedra" && partida.jogador2 == "Tesoura"); return venceu; } Partida b = new Partida(); b.jogador1 = "Papel"; b.jogador2 = "Tesoura"; bool v = Jokenpo(b); Console.WriteLine(v); Console.WriteLine(); // False ``` ## 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 data = volta - ida; double dias = data.TotalDays + 1; return dias; } public double HospedagemHotel (EstadiaHotel hotel) { double dias = TotalDias(hotel.checkin, hotel.checkout); double total = dias * hotel.QtdPessoas * 120; return total; } EstadiaHotel c = new EstadiaHotel(); c.checkin = new DateTime(2021, 05, 10); c.checkout = new DateTime(2021, 05, 15); c.QtdPessoas = 3; double total = HospedagemHotel(c); Console.WriteLine(total); Console.WriteLine(); // 2160 ``` ## 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 TotalDiass (DateTime ida, DateTime volta) { TimeSpan data = volta - ida; double dias = data.TotalDays + 1; return dias; } public double TotalPassagens (PassagemAerea passagem) { double dias = TotalDiass(passagem.ida, passagem.volta); double total = (dias * passagem.QtdAdultos * 200) + (dias * passagem.QtdCriancas); return total; } PassagemAerea d = new PassagemAerea(); d.ida = new DateTime(2021, 01, 20); d.volta = new DateTime(2021, 01, 31); d.QtdAdultos = 2; d.QtdCriancas = 3; d.origem = "São Paulo"; d.destino = "Salvador"; double total1 = TotalPassagens(d); Console.WriteLine(total1); // 4836 ``` ## 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 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 EstadiaHotel1 { 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 Totaldiasss (DateTime ida, DateTime volta) { TimeSpan data = volta - ida; double dias = data.TotalDays + 1; return dias; } public double TotalPassagens1 (PassagemAerea2 passagem) { double dias = Totaldiasss(passagem.ida, passagem.volta); double total = (dias * passagem.QtdAdultos * 300) + (dias * passagem.QtdCriancas * 150); return total; } public double HospedagemHotel1 (EstadiaHotel1 hospedagem) { double dias = Totaldiasss(hospedagem.checkin, hospedagem.checkout); double total = dias * hospedagem.QtdPessoas * 200; return total; } public Comprovante PacoteViagem (PassagemAerea2 passagem, EstadiaHotel1 hospedagem) { double totalHotel = HospedagemHotel1(hospedagem); double TotalPassagem = TotalPassagens1(passagem); double dias = Totaldiasss(passagem.ida, passagem.volta); Comprovante c1 = new Comprovante(); c1.totalHotel = totalHotel; c1.totalPassagem = TotalPassagem; c1.total = totalHotel + TotalPassagem; c1.mensagem = $"A compra do Pacote de {dias} dias para o destino {passagem.destino} foi finalizado com sucesso! O total incluindo todas despesas é de R$ {c1.total}"; return c1; } PassagemAerea2 e = new PassagemAerea2(); e.ida = new DateTime(2021, 06, 12); e.volta = new DateTime(2021, 06, 24); e.QtdAdultos = 2; e.QtdCriancas = 3; e.origem = "Rio de Janeiro"; e.destino = "Brasília"; EstadiaHotel1 h = new EstadiaHotel1(); h.checkin = new DateTime(2021, 06, 12); h.checkout = new DateTime(2021, 06, 24); h.QtdPessoas = 5; Comprovante c1 = PacoteViagem(e, h); Console.WriteLine(c1.total); Console.WriteLine(c1.totalHotel); Console.WriteLine(c1.totalPassagem); Console.WriteLine(c1.mensagem); // A compra do Pacote de 13 dias para o destino Brasília foi finalizado com sucesso! O total incluindo todas despesas é de R$ 26650 ```
{"metaMigratedAt":"2023-06-16T00:09:21.970Z","metaMigratedFrom":"Content","title":"Session Two: Getting Better | Fund. Lógica","breaks":true,"contributors":"[{\"id\":\"f2f98191-1ff5-4afd-8e66-66ff77c4c5b1\",\"add\":7363,\"del\":14}]"}
Expand menu