# Session One: Recomeçar | Fund. Lógica
>[color=red]**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 a média de 4 notas de um aluno.
```csharp=
using System;
public class Notas
{
public double nota1;
public double nota2;
public double nota3;
public double nota4;
}
public double CalcularMedia(Notas n)
{
double media = (n.nota1 + n.nota2 + n.nota3 + n.nota4) / 4;
return media;
}
Notas x = new Notas();
x.nota1 = 5;
x.nota2 = 8;
x.nota3 = 6.5;
x.nota4 = 7;
double r = CalcularMedia(x);
Console.WriteLine(r);
// 6.625
```
## Exercício 2
Crie uma função que implemente a lógica para
calcular a área do Retângulo.
```csharp=
using System;
public class AreaRetangulo
{
public double basee;
public double altura;
}
public double CalcularArea(AreaRetangulo a)
{
double area = a.basee * a.altura;
return area;
}
AreaRetangulo x = new AreaRetangulo();
x.basee = 12;
x.altura = 5.6;
double y = CalcularArea(x);
y
// 67.2
```
## Exercício 3
Crie uma função que a partir da base e altura de dois
triângulos diferentes, crie uma função que verifique se o
[Triângulo-1] possui a área igual ao [Triângulo-2], retorne
verdadeiro se forem iguais e falso se forem diferentes.
```csharp=
using System;
public class Triangulo
{
public double basee;
public double altura;
}
public bool AreasIguais(Triangulo tri1, Triangulo tri2)
{
double area1 = (tri1.basee * tri2.altura) / 2;
double area2 = (tri1.basee * tri2.altura) / 2;
bool areasiguais = area1 == area2;
return areasiguais;
}
Triangulo t1 = new Triangulo();
t1.basee = 15;
t1.altura = 5;
Triangulo t2 = new Triangulo();
t2.basee = 25;
t2.altura = 3;
bool x = AreasIguais(t1, t2);
x
// True
```
## Exercício 4
Crie uma função que a partir da quantidade de açaí
pequenos, médios e grandes comprados por um cliente,
calcule o total a pagar sabendo que os valores do açaí são
R$ 10,00, R$ 12,00 e R$ 14,00 respectivamente e não
sofrerão alteração de preço.
```csharp=
using System;
public class PedidoAcai
{
public int qtdPequeno;
public int qtdMedio;
public int qtdGrande;
}
public double VendaAcai(PedidoAcai p, PedidoAcai m, PedidoAcai g)
{
double pequeno = p.qtdPequeno * 10.00;
double medio = m.qtdMedio * 12.00;
double grande = g.qtdGrande * 14.00;
double total = pequeno + medio + grande;
return total;
}
PedidoAcai x = new PedidoAcai();
x.qtdPequeno = 3;
x.qtdMedio = 3;
x.qtdGrande = 2;
double total = VendaAcai(x, x, x);
total
// 94
```
## Exercício 5
Crie uma função que a partir do preço de um veículo e o
total de parcelas que será financiado, calcule o valor final
pago considerando uma taxa de 5% por mês.
```csharp=
using System;
public class CompraVeiculo
{
public double preco;
public int parcelas;
}
public double CalcularTotal(CompraVeiculo v)
{
double p = (v.parcelas);
double valor = (v.preco);
double taxa = 5;
double total = p * (taxa / 100) + valor;
return total;
}
CompraVeiculo x = new CompraVeiculo();
x.parcelas = 30;
x.preco = 50.458;
double t = CalcularTotal(x);
t
// 51.958
```
## Exercício 6
Crie uma função que a partir do nome de uma pessoa e
um CEP, verifique se o CEP contém o caractere hífen (-) e
possui um total de 9 caracteres.
Se o CEP for válido, retorne:
“XXX, o resultado da validação de seu CEP é: true”
ou
“XXX, o resultado da validação de seu CEP é: false”.
```csharp=
using System;
public class Endereco
{
public string nomePessoa;
public string cep;
}
public string ValidarCep(Endereco e)
{
int c = (e.cep).Length;
bool validar = c == 9 & e.cep.Contains("-");
string n = (e.nomePessoa +","+ "XXX o resultado da validação de seu CEP é:" + validar);
return n;
}
Endereco x = new Endereco();
x.cep = "04523340";
x.nomePessoa = "Leticia Rodrigues";
string result = ValidarCep(x);
result
// Leticia Rodrigues,XXX o resultado da validação de seu CEP é:False
```
## Exercício 7
Crie uma função composta que a partir de três nomes
completos, retorne verdadeiro/falso se as pessoas são da
mesma família, comparando o último nome das três
pessoas
```csharp=
using System;
public class Pessoa
{
public string nome;
}
public string ExtrairSobrenome(string nome)
{
int posicao = nome.LastIndexOf(" ");
string sobrenome = nome.Substring(posicao);
return sobrenome;
}
public bool MesmaFamilia(Pessoa p1, Pessoa p2, Pessoa p3)
{
bool familia = ExtrairSobrenome(p1.nome) == ExtrairSobrenome(p2.nome) && ExtrairSobrenome(p1.nome) == ExtrairSobrenome(p3.nome);
return familia;
}
Pessoa p1 = new Pessoa();
p1.nome = "Letícia Rodrigues da Silva";
Pessoa p2 = new Pessoa();
p2.nome = "Henry Zarlenga Silva";
Pessoa p3 = new Pessoa();
p3.nome = "Laura Silva";
bool n = MesmaFamilia(p1, p2, p3);
n
// True
```
## Exercício 8
Crie uma função composta que a partir dos valores
'a', 'b' e 'c', calcule o valor de xi e xii baseado na
equação de segundo grau.
```csharp=
using System;
public class Equacao
{
public int a;
public int b;
public int c;
}
public class Resultado
{
public double x1;
public double x2;
}
public double Delta(Equacao termo)
{
double d = (Math.Pow(termo.b, 2)) - 4 * termo.a * termo.c;
return d;
}
public Resultado EquacaoSegundoGrau(Equacao termo)
{
double r1 = (- termo.b + Math.Sqrt(Delta(termo))) / 2 * termo.a;
double r2 = (- termo.b - Math.Sqrt(Delta(termo))) / 2 * termo.a;
Resultado x = new Resultado();
x.x1 = r1;
x.x2 = r2;
return x;
}
Equacao total = new Equacao();
total.a = 3;
total.b = 1;
total.c = -5;
Resultado x = EquacaoSegundoGrau(total);
Console.WriteLine("x1 é igual a " + x.x1);
Console.WriteLine("x2 é igual a " + x.x2);
x
// x1 é igual a 10.21537451386
// x2 é igual a -13.21537451386
```
## Exercício 9
Crie uma função composta que implemente a lógica
da seguinte situação: Em uma festa temática de
Astrologia, só podem entrar pessoas que são de
libra e maiores de 18 anos. Você deve retornar se
um casal que irá a festa poderão entrar.
```csharp=
using System;
public class Casal
{
public DateTime nscPessoa1;
public DateTime nscPessoa2;
}
public bool Libra(DateTime nascimento)
{
bool mes1 = nascimento.Month == 9 && nascimento.Day > 22;
bool mes2 = nascimento.Month == 10 && nascimento.Day < 23;
bool signo = mes1 == true || mes2 == true;
return signo;
}
public bool Maior18(DateTime nascimento)
{
bool nsc = nascimento.Year <= 2000 & nascimento.Month <= 12 & nascimento.Day <= 31;
return nsc;
}
public bool PermitirEntrada(Casal crushes)
{
bool pessoa1 = Libra(crushes.nscPessoa1);
bool p1 = Maior18(crushes.nscPessoa1);
bool pessoa2 = Libra(crushes.nscPessoa2);
bool p2 = Maior18(crushes.nscPessoa2);
bool sig = pessoa1 == true & p1 == true & pessoa2 == true & p2 == true;
return sig;
}
Casal s = new Casal();
s.nscPessoa1 = new DateTime (1998, 10, 20);
s.nscPessoa2 = new DateTime (2000, 9, 30);
bool result = PermitirEntrada(s);
Console.WriteLine(result);
// True
```
>não consegui fazer o exercício 10 prof ):
{"metaMigratedAt":"2023-06-15T23:24:38.427Z","metaMigratedFrom":"Content","title":"Session One: Recomeçar | Fund. Lógica","breaks":true,"contributors":"[{\"id\":\"f2f98191-1ff5-4afd-8e66-66ff77c4c5b1\",\"add\":7050,\"del\":20}]"}