# session two: getting better | Fund.logica | 2° bimestre **Nome** Kevin Ribeiro de Andrade **Número** 27 **Turma** INFO A ## 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= using System; using System; public class ingressoCinemark { public long qtd_ingresso; public long qtd_meia; public double preco; public string nome_filme; } public string calc_ingressos (ingressoCinemark ingresso) { long totalingressos = ingresso.qtd_ingresso + ingresso.qtd_meia; //string conv = Convert.ToString(t double preco_ingressomeia = ingresso.preco / 2; double calc_totalpagar = (ingresso.qtd_ingresso * ingresso.preco) + ( ingresso.qtd_meia * preco_ingressomeia); string totalidade = ("O valor da compra de " + totalingressos + " ingressos" + " referente ao filme" + " " + ingresso.nome_filme + " é igual ao valor" + " " + "R$" + calc_totalpagar); return totalidade; } ingressoCinemark resul = new ingressoCinemark(); resul.qtd_ingresso = 3; resul.qtd_meia = 2; resul.preco = 32.67; resul.nome_filme = "Kimetsu no yaiba mugen train"; string x = calc_ingressos(resul); Console.WriteLine(x); ``` ## 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 partid) { bool comp = partid.jogador1 == "papel"  && partid.jogador2 == "pedra"  == true; bool comp2 = partid.jogador1 == "tesoura" && partid.jogador2 == "pedra" == false; bool comp3 = partid.jogador1 == "pedra" && partid.jogador2 == "tesoura" == true; bool comp4 = partid.jogador1 == "papel" && partid.jogador2 == "tesoura" == false; bool comp5 = partid.jogador1 == "tesoura" && partid.jogador2 == "papel" == true; bool comp6 = partid.jogador1 == "pedra" && partid.jogador2 == "papel" == false; bool comp7 = partid.jogador1 == "tesoura" && partid.jogador2 == "tesoura" == false; bool comp8 = partid.jogador1 == "pedra" && partid.jogador2 == "pedra" == false;     bool comp9 = partid.jogador1 == "papel" && partid.jogador2 == "papel" == false; return comp; } partida party = new partida (); party.jogador1 = Console.ReadLine(); party.jogador2 = Console.ReadLine(); bool v = jokenpo(party); Console.WriteLine(v); ``` ## 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 entrada; public DateTime saida; public long qtd_pessoas; } public double totaldias (DateTime ida, DateTime volta) { TimeSpan calc = volta - ida; double calc2 = calc.TotalDays; return calc2; } public double hospedagem ( EstadiaHotel hotel) { double estadia_preco = 120.00; double chamando = totaldias(hotel.entrada, hotel.saida); double calc\_preco = estadia\_preco  * hotel.qtd_pessoas; return calc_preco * chamando; } EstadiaHotel Estadia = new EstadiaHotel(); Estadia.entrada = new DateTime (2021, 05, 12); Estadia.saida = new DateTime (2021, 06, 12); Estadia.qtd_pessoas = 10; double s = hospedagem(Estadia); Console.WriteLine(s); ``` ## 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= using System; public class passagem { public DateTime ida; public DateTime volta; public long qtd_adulto; public long qtd_crianca; public string origem; public string destino; } public double totaldias( DateTime ida, DateTime volta) { TimeSpan calc = volta - ida; double conv = calc.TotalDays; return conv; } public double calc_passagem (passagem passa) { double valor = 200.00; double calc_valor = (passa.qtd_adulto * valor) + (passa.qtd_crianca * (valor / 2)); return totaldias(passa.ida, passa.volta) * calc_valor; } passagem vl_passagem = new passagem(); vl_passagem.ida = new DateTime (2021, 07, 17) ; vl_passagem.volta = new DateTime (2021, 08, 23); vl_passagem.qtd_adulto = 4; vl_passagem.qtd_crianca = 1; vl_passagem.origem = Console.ReadLine(); vl_passagem.destino = Console.ReadLine(); Double x = calc_passagem(vl_passagem); Console.WriteLine(x); ``` ## 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= using System; public class EstadiaHotel { public DateTime entrada; public DateTime saida; public long qtd_pessoas; } public class passagem { public DateTime ida; public DateTime volta; public long qtd_adulto; public long qtd_crianca; public string origem; public string destino; } public class comprovante { public double total; public double totalhotel; public double totalpassagem; public string mensagem; } public double totaldias (DateTime ida, DateTime volta) { TimeSpan calc = volta - ida; double calc2 = calc.TotalDays; return calc2; } public double hospedagem(EstadiaHotel hotel) { double estadia_preco = 120.00; double chamando = totaldias(hotel.entrada, hotel.saida); double calc_preco = estadia_preco * hotel.qtd_pessoas; double vs = calc_preco * chamando; return vs; } public double calc_passagem (passagem passa) { double valor = 200.00; double calc_valor = (passa.qtd_adulto * valor) + (passa.qtd_crianca * (valor / 2)); double ke = totaldias(passa.ida, passa.volta) * calc_valor; return ke; } public comprovante total_pacote(EstadiaHotel hotel, passagem passa) { double dias = totaldias(passa.ida, passa.volta); double calc = hospedagem(hotel); double calc2 = calc_passagem(passa); comprovante resul = new comprovante (); resul.total = calc + calc2; resul.totalhotel = calc; resul.totalpassagem = calc2; resul.mensagem = ("A compra do pacote de" + " " + (dias) + " " + "dias" + " " + "para o destino" + " " + passa.destino + " " + "Deu um valor de:" + " " + "R$" + resul.total); return resul; } EstadiaHotel nh = new EstadiaHotel(); nh.entrada = new DateTime (2023, 04, 15); nh.saida = new DateTime (2023, 05, 24); nh.qtd_pessoas = 4; passagem pass = new passagem (); pass.ida = new DateTime (2022, 09, 21); pass.volta = new DateTime (2022, 11, 23); pass.qtd_adulto = 6; pass.qtd_crianca = 1; pass.origem = "Tokyo"; pass.destino = "kyoto"; comprovante x = total_pacote(nh, pass); Console.WriteLine(x.mensagem); ```