# 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
````