# Session four: Programs also choose | Fundamentos da Lógica
**Autor**: Vitório Trindade Santana
**Turma**: Informática C
**Número**: 50
[toc]
## Exercício 1
```csharp=
public string RetangulosIguais (double b1, double a1, double b2, double a2)
{
double areaRet = b1 * a1;
double areaRet2 = b2 * a2;
string m;
if (areaRet == areaRet2)
{
m = "Os Retângulos são iguais";
}
else
{
m = "Os Retângulos não são iguais";
}
return m;
}
string q1 = RetangulosIguais(5, 4, 10, 2);
Console.WriteLine(q1);
//Os Retângulos são iguais
```
## Exercício 2
```csharp=
public double AreaRetangulo (double a, double b)
{
return a * b;
}
public string MaiorRetangulo (double b1, double a1, double b2, double a2)
{
string m;
if (AreaRetangulo(a1, b1) > AreaRetangulo(a2, b2))
{
m = "O primeiro retângulo é maior";
}
else if (AreaRetangulo(a1, b1) < AreaRetangulo(a2, b2))
{
m = "O segundo retângulo é maior.";
}
else
{
m = "Os retângulos são iguais";
}
return m;
}
string q1 = MaiorRetangulo(5, 5, 10, 2);
Console.WriteLine(q1);
//O primeiro retângulo é maior
```
## Exercício 3
```csharp=
public class Retangulo
{
public double Altura {get;set;}
public double Base {get;set;}
}
public double AreaRetangulo (double basee, double altura)
{
return altura * basee;
}
public string MaiorRetangulo (Retangulo ret1, Retangulo ret2, Retangulo ret3)
{
string m;
if (AreaRetangulo(ret1.Altura, ret1.Base) == AreaRetangulo(ret2.Altura, ret2.Base) && AreaRetangulo(ret2.Altura, ret2.Base) == AreaRetangulo(ret3.Altura, ret3.Base))
{
m = "Os retângulos são iguais.";
}
else if (AreaRetangulo(ret1.Altura, ret1.Base) > AreaRetangulo(ret2.Altura, ret2.Base) && AreaRetangulo(ret1.Altura, ret1.Base) > AreaRetangulo(ret3.Altura, ret3.Base))
{
m = "O primeiro retângulo é maior";
}
else if (AreaRetangulo(ret2.Altura, ret2.Base) > AreaRetangulo(ret1.Altura, ret1.Base) && AreaRetangulo(ret2.Altura, ret2.Base) > AreaRetangulo(ret3.Altura, ret3.Base))
{
m = "O segundo retângulo é maior.";
}
else if (AreaRetangulo(ret3.Altura, ret3.Base) > AreaRetangulo(ret1.Altura, ret1.Base) && AreaRetangulo(ret3.Altura, ret3.Base) > AreaRetangulo(ret2.Altura, ret2.Base))
{
m = "O terceiro retângulo é maior.";
}
else
{
m = "Existem dois maiores retângulos";
}
return m;
}
Retangulo ret1 = new Retangulo();
ret1.Altura = 3;
ret1.Base = 7;
Retangulo ret2 = new Retangulo();
ret2.Altura = 5;
ret2.Base = 9;
Retangulo ret3 = new Retangulo();
ret3.Altura = 9;
ret3.Base = 10;
string q1 = MaiorRetangulo(ret1, ret2, ret3);
Console.WriteLine(q1);
//O terceiro retângulo é maior.
```
## Exercício 4
```csharp=
class MainClass {
public static void Main (string[] args) {
Ingresso x1 = new Ingresso ();
x1.Meia = 1;
x1.QtdIngresso = 1;
x1.Preço = 15;
x1.Filme = "John Wick 3";
Cinemark cin = new Cinemark();
string q4 = cin.CalcularTotal2(x1);
Console.WriteLine(q4);
}
}
public class Ingresso
{
public int QtdIngresso {get;set;}
public int Meia {get;set;}
public double Preço {get;set;}
public string Filme {get;set;}
}
public class Cinemark
{
public double CalcularTotal1 (Ingresso ingresso)
{
double inteiras = ingresso.QtdIngresso * ingresso.Preço;
double meia = (ingresso.Meia * ingresso.Preço) / 2;
double total = inteiras + meia;
return total;
}
public string CalcularTotal2 (Ingresso ingresso)
{
double total = CalcularTotal1(ingresso);
return $"Compra concluída! O ingresso para o filme {ingresso.Filme} é de R$ {total}";
}
}
//Compra concluída! O ingresso para o filme John Wick 3 é de R$ 22.5
```
## Exercício 5
```csharp=
class MainClass {
public static void Main (string[] args) {
Ingresso x1 = new Ingresso ();
x1.Meia = 3;
x1.QtdIngresso = 2;
x1.Preço = 20;
x1.Filme = "Kung Fu Panda 2";
Cinemark cin = new Cinemark();
string q4 = cin.CalcularTotal2(x1);
Console.WriteLine(q4);
}
}
public class Ingresso
{
public int QtdIngresso {get;set;}
public int Meia {get;set;}
public double Preço {get;set;}
public string Filme {get;set;}
}
public class Cinemark
{
public double CalcularTotal1 (Ingresso ingresso)
{
double inteiras = ingresso.QtdIngresso * ingresso.Preço;
double meia = (ingresso.Meia * ingresso.Preço) / 2;
double total = inteiras + meia;
return total;
}
public string CalcularTotal2 (Ingresso ingresso)
{
double total = CalcularTotal1(ingresso);
return $"Compra concluída! A compra de {ingresso.QtdIngresso} ingresso(s) inteiro(s) e {ingresso.Meia} ingresso(s) meia para o filme {ingresso.Filme} é de R$ {total}";
}
}
//Compra concluída! A compra de 2 ingresso(s) inteiro(s) e 3 ingresso(s) meia para o filme Kung Fu Panda 2 é de R$ 70
```
## Exercício 6
```csharp=
class MainClass {
public static void Main (string[] args) {
Ingresso x1 = new Ingresso ();
x1.Meia = 3;
x1.QtdIngresso = 2;
x1.Preço = 20;
x1.Filme = "Kung Fu Panda 2";
Cinemark cin = new Cinemark();
double q6 = cin.CalcularTotal(x1, 10);
Console.WriteLine("O total da compra foi: " + q6);
}
}
public class Ingresso
{
public int QtdIngresso {get;set;}
public int Meia {get;set;}
public double Preço {get;set;}
public string Filme {get;set;}
}
public class Cinemark
{
public double CalcularTotal (Ingresso ingresso, double cupom)
{
double inteiras = ingresso.QtdIngresso * ingresso.Preço;
double meia = (ingresso.Meia * ingresso.Preço) / 2;
double totalingressos = inteiras + meia;
double totalDes = totalingressos - AplicarCupom(totalingressos, cupom);
return totalDes;
}
private double AplicarCupom (double total, double cupom)
{
return (total * cupom) / 100;
}
}
//O total da compra foi R$ 63
```
## Exercício 7
```csharp=
class MainClass {
public static void Main (string[] args) {
Ingresso x1 = new Ingresso ();
x1.Meia = 3;
x1.QtdIngresso = 5;
x1.Preço = 20;
x1.Filme = "Kung Fu Panda 2";
Cinemark cin = new Cinemark();
double q6 = cin.CalcularTotal(x1, 10);
Console.WriteLine("O total da compra foi R$ " + q6);
}
}
public class Ingresso
{
public int QtdIngresso {get;set;}
public int Meia {get;set;}
public double Preço {get;set;}
public string Filme {get;set;}
}
public class Cinemark
{
public double CalcularTotal (Ingresso ingresso, double cupom)
{
double inteiras = ingresso.QtdIngresso * ingresso.Preço;
double meia = (ingresso.Meia * ingresso.Preço) / 2;
double totalIngressos = inteiras + meia;
double totalDes = AplicarCupom(totalIngressos, cupom);
if (totalIngressos > 100)
{
totalDes = AplicarCupom(totalIngressos, cupom + 10);
}
double total = totalIngressos - totalDes;
return total;
}
private double AplicarCupom (double total, double cupom)
{
return (total * cupom) / 100;
}
}
//O total da compra foi R$ 104
```
## Exercício 8
```csharp=
class MainClass {
public static void Main (string[] args) {
Ingresso x1 = new Ingresso ();
x1.Meia = 3;
x1.QtdIngresso = 5;
x1.Preço = 20;
x1.Filme = "Kung Fu Panda 2";
x1.Dia = DateTime.Now;
Cinemark cin = new Cinemark();
double q68 = cin.CalcularTotal(x1, 10);
Console.WriteLine("O total da compra foi R$ " + q8);
}
}
public class Ingresso
{
public int QtdIngresso {get;set;}
public int Meia {get;set;}
public double Preço {get;set;}
public string Filme {get;set;}
public DateTime Dia {get;set;}
}
public class Cinemark
{
public double CalcularTotal (Ingresso ingresso, double cupom)
{
double inteiras = ingresso.QtdIngresso * ingresso.Preço;
double meia = (ingresso.Meia * ingresso.Preço) / 2;
double totalIngressos = inteiras + meia;
double totalDes = AplicarCupom(totalIngressos, cupom + DiaDaCompra(ingresso.Dia));
if (totalIngressos > 100)
{
totalDes = AplicarCupom(totalIngressos, cupom + 10 + DiaDaCompra(ingresso.Dia));
}
double total = totalIngressos - totalDes;
return total;
}
private double AplicarCupom (double total, double cupom)
{
return (total * cupom) / 100;
}
private double DiaDaCompra (DateTime agora)
{
double desc = 0;
DateTime a = agora;
if (a.DayOfWeek == DayOfWeek.Wednesday)
{
desc = 50;
}
return desc;
}
}
//O total da compra foi R$ 39
```
## Exercício 9
```csharp=
class MainClass {
public static void Main (string[] args) {
Ingresso x1 = new Ingresso ();
x1.Meia = 3;
x1.QtdIngresso = 5;
x1.Preço = 20;
x1.Filme = "Kung Fu Panda 2";
x1.Dia = DateTime.Now;
x1.Genero = "Nacional";
Cinemark cin = new Cinemark();
double q8 = cin.CalcularTotal(x1, 10);
Console.WriteLine("O total da compra foi R$ " + q8);
}
}
public class Ingresso
{
public int QtdIngresso {get;set;}
public int Meia {get;set;}
public double Preço {get;set;}
public string Filme {get;set;}
public DateTime Dia {get;set;}
public string Genero {get;set;}
}
public class Cinemark
{
public double CalcularTotal (Ingresso ingresso, double cupom)
{
double inteiras = ingresso.QtdIngresso * ingresso.Preço;
double meia = (ingresso.Meia * ingresso.Preço) / 2;
double totalIngressos = inteiras + meia;
DateTime a = ingresso.Dia;
double totalDes = AplicarCupom(totalIngressos, cupom);
if (ingresso.Genero == "Nacional")
{
totalIngressos = (5 * ingresso.QtdIngresso) + (5 * ingresso.Meia);
}
else {
if (totalIngressos > 100 && a.DayOfWeek == DayOfWeek.Wednesday)
{
totalDes = AplicarCupom(totalIngressos, cupom + 10 + 50);
}
else {
if (totalIngressos > 100)
{
totalDes = AplicarCupom(totalIngressos, cupom + 10);
}
if (a.DayOfWeek == DayOfWeek.Wednesday)
{
totalDes = AplicarCupom(totalIngressos, cupom + 50);
}
}
}
double total = totalIngressos - totalDes;
return total;
}
private double AplicarCupom (double total, double cupom)
{
return (total * cupom) / 100;
}
}
//O total da compra foi R$ 27
```
## Exercício 10
```csharp=
class MainClass {
public static void Main (string[] args) {
Jogador jog1 = new Jogador();
jog1.Nome = "Vito";
jog1.Jogada = "Pedra";
Jogador jog2 = new Jogador();
jog2.Nome = "Renan";
jog2.Jogada = "Papel";
Jokenpo jok = new Jokenpo();
string q10 = jok.QuemGanhou(jog1, jog2);
Console.WriteLine(q10);
}
}
public class Jogador
{
public string Nome {get;set;}
public string Jogada {get;set;}
}
public class Jokenpo
{
public string QuemGanhou (Jogador jog1, Jogador jog2)
{
string a ="";
if (jog1.Jogada == "Pedra" && jog2.Jogada == "Tesoura"
|| jog1.Jogada == "Tesoura" && jog2.Jogada == "Papel"
|| jog1.Jogada == "Papel" && jog2.Jogada == "Pedra")
{
a = $"Parabéns {jog1.Nome} você venceu";
}
else
{
a = $"Parabéns {jog2.Nome} você venceu";
}
return a;
}
}
//Parabéns Renan você venceu
```
## Exercício 11
```csharp=
class MainClass {
public static void Main (string[] args) {
Jogador jog1 = new Jogador();
jog1.Nome = "Vito";
jog1.Jogada = "Par";
jog1.Numero = 6;
Jogador jog2 = new Jogador();
jog2.Nome = "Renan";
jog2.Jogada = "Impar";
jog2.Numero = 8;
ParOuImpar poi = new ParOuImpar();
string q11 = poi.QuemGanhou(jog1, jog2);
Console.WriteLine(q11);
}
}
public class Jogador
{
public string Nome {get;set;}
public string Jogada {get;set;}
public int Numero {get;set;}
}
public class ParOuImpar
{
public string QuemGanhou (Jogador jog1, Jogador jog2)
{
int soma = jog1.Numero + jog2.Numero;
string a ="";
if (soma % 2 == 0 && jog1.Jogada == "Par" || soma % 2 == 1 && jog1.Jogada == "Impar")
{
a = $"Parabéns {jog1.Nome} você venceu";
}
else
{
a = $"Parabéns {jog2.Nome} você venceu";
}
return a;
}
}
//Parabéns Vito você venceu
```