---
# System prepended metadata

title: 'Session One: Recomeçar | Fund. Lógica'

---

# 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 ):
