# Tipo Composto 2 | Fund. Lógica **Author:** Matheus Rafael Morato Rocha **Turma:** InfoC **Número:** 40 [TOC] ## Nível 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 CineMark { public int QtdInteira; public int QtdMeia; public double preco; public string filme; } public double CineMarkVenda (CineMark cinema) { double Inteira = cinema.QtdInteira * cinema.preco; double Meia = cinema.QtdMeia * (cinema.preco / 2); double total = Meia + Inteira; return total; } CineMark a = new CineMark(); a.QtdInteira = 5; a.QtdMeia = 2; a.preco = 25; a.filme = "Interstellar"; System.Console.Write("O valor da compra de "); System.Console.Write(a.QtdInteira + a.QtdMeia); System.Console.Write(" ingressos referente ao filme "); System.Console.Write(a.filme); System.Console.Write(" é R$ "); System.Console.Write(CineMarkVenda(a)); // O valor da compra de 5 ingressos referente ao filme Interstellar é R$ 150 ``` ## Nível 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 jokenpo { public string Jogador1; public string Jogador2; } jokenpo x = new jokenpo(); x.Jogador1 = "Pedra"; x.Jogador2 = "Tesoura"; public bool Jogo (jokenpo Game) { bool Ganha1 = Game.Jogador1 == "Pedra" && Game.Jogador2 == "Tesoura"; bool Ganha2 = Game.Jogador1 == "Papel" && Game.Jogador2 == "Pedra"; bool Ganha3 = Game.Jogador1 == "Tesoura" && Game.Jogador2 == "Papel"; return Ganha1 || Ganha2 || Ganha3; } System.Console.Write(Jogo(x)); // True ``` ## Nível 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 PassagemAerea { public System.DateTime Ida; public System.DateTime Volta; public int QtdAdulto; public int QtdCriancas; public string origem; public string destino; } public double Dias (System.DateTime ida, System.DateTime volta) { System.TimeSpan dif = volta - ida; double dias = dif.TotalDays + 1; return dias; } public double PrecoPorPessoa (PassagemAerea Aerea) { double dias = Dias(Aerea.Ida, Aerea.Volta); double Adulto = dias * Aerea.QtdAdulto * 200; double Criança = dias * Aerea.QtdCriancas * 100; double Total = Criança + Adulto; return Total; } PassagemAerea a = new PassagemAerea(); a.Ida = new System.DateTime (2021, 1, 5); a.Volta = new System.DateTime (2021, 1, 15); a.QtdAdulto = 2; a.QtdCriancas = 2; a.origem = "São Paulo"; a.destino = "Acapulco"; double x = PrecoPorPessoa(a); x // 6600 ``` ## Nível 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 System.DateTime Ida; public System.DateTime Volta; public int QtdAdulto; public int QtdCriancas; public string origem; public string destino; } public double Aviao (PassagemAerea Aerea) { System.DateTime a = System.Convert.ToDateTime(Aerea.Ida); System.DateTime x = System.Convert.ToDateTime(Aerea.Volta); int y = a.Day - x.Day; int TotalDias = System.Math.Abs(y); return TotalDias; } public double PrecoPorPessoa (PassagemAerea Aerea) { double Adulto = (Aviao(Aerea) * Aerea.QtdAdulto) * 200; double Criança = (Aviao(Aerea) * Aerea.QtdCriancas) * 100; double Total = Criança + Adulto; return Total; } PassagemAerea a = new PassagemAerea(); a.Ida = new System.DateTime (2021, 01, 04); a.Volta = new System.DateTime (2021, 04, 10); a.QtdAdulto = 2; a.QtdCriancas = 2; a.origem = "São Paulo"; a.destino = "Acapulco"; double x = PrecoPorPessoa(a); x // 3600 ``` ## Nível 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 System.DateTime Ida; public System.DateTime Volta; public int QtdAdulto; public int QtdCriancas; public string origem; public string destino; } public class EstadiaHotel { public System.DateTime checkin; public System.DateTime checkout; public int QtdPessoas; } public class Comprovante { public double Total; public double TotalHotel; public double TotalPassagem; public string Mensagem; } public double Dias (EstadiaHotel Hotel) { System.DateTime a = System.Convert.ToDateTime(Hotel.checkin); System.DateTime x = System.Convert.ToDateTime(Hotel.checkout); int y = a.Day - x.Day; int TotalDias = System.Math.Abs(y); return TotalDias; } public double TotalHotel (EstadiaHotel Hotel) { double x = (Dias(Hotel) * Hotel.QtdPessoas) * 120; return x; } public double Aviao (PassagemAerea Aerea) { System.DateTime a = System.Convert.ToDateTime(Aerea.Ida); System.DateTime x = System.Convert.ToDateTime(Aerea.Volta); int y = a.Day - x.Day; int TotalDias = System.Math.Abs(y); return TotalDias; } public double PrecoPorPessoa (PassagemAerea Aerea) { double Adulto = (Aviao(Aerea) * Aerea.QtdAdulto) * 200; double Criança = (Aviao(Aerea) * Aerea.QtdCriancas) * 100; double Total = Criança + Adulto; return Total; } public double TotalCompleto (Comprovante a) { double x = hotel + Passagem; return x; } Comprovante c = new Comprovante(); c.Total = TotalCompleto(c); c.TotalHotel = hotel; c.TotalPassagem = Passagem; c.Mensagem = x; PassagemAerea k = new PassagemAerea(); k.Ida = new System.DateTime (2021, 01, 04); k.Volta = new System.DateTime (2021, 04, 10); k.QtdAdulto = 2; k.QtdCriancas = 2; k.origem = "São Paulo"; k.destino = "Acapulco"; EstadiaHotel a = new EstadiaHotel(); a.checkin = new System.DateTime (2021, 01, 04); a.checkout = new System.DateTime (2021, 04, 10); a.QtdPessoas = 5; double hotel = TotalHotel(a); double Passagem = PrecoPorPessoa(k); System.Console.Write(" A compra do Pacote de "); System.Console.Write(Dias(a)); System.Console.Write(" dias para o destino "); System.Console.Write(k.destino); System.Console.Write(" foi finalizado com sucesso! O total incluindo todas despesas é de R$ "); System.Console.Write(TotalCompleto(c)); string x = " A compra do Pacote de " + Dias(a) + " dias para o destino " + k.destino + " foi finalizado com sucesso! O total incluindo todas despesas é de R$ " + c.Total; // A compra do Pacote de 8 dias para o destino Acapulco foi finalizado com sucesso! O total incluindo todas despesas é de R$ 8400 ```
{"metaMigratedAt":"2023-06-15T23:40:29.839Z","metaMigratedFrom":"Content","title":"Tipo Composto 2 | Fund. Lógica","breaks":true,"contributors":"[{\"id\":\"0ba297e4-eafa-413a-9b17-c3ef1702e693\",\"add\":12091,\"del\":4682}]"}
Expand menu