# # Super Bônus | Csharp
autor: Mateus Eustáquio
[toc]
## Nível 1
### Exercício 1
Faça uma função ÚNICA que a partir da base e altura, calcule a área do triângulo.
```csharp=
Ex 1 - Area Triangulo
public double areatriangulo (double Base, double Altura)
{
double CalcularArea = Base * Altura / 2;
return CalcularArea;
}
double x = areatriangulo (4, 4);
x
//8
```
### Exercício 2
Faça uma função ÚNICA que a partir do lado, calcule o perímetro do octógono.
```csharp=
public double PerimetroOctogono (double Lado)
{
double CalcularPerimetro = Lado * 8;
return CalcularPerimetro;
}
double x = PerimetroOctogono(8);
x
//64
````
### Exercício 3
Faça uma função ÚNICA que a partir da base maior, base menor e altura,calcule a área do trapézio.
```csharp=
public double AreaTrapezio ( double BaseMaior, double Basemenor, double Altura)
{
double CalcularAreaTrapezio = (BaseMaior + Basemenor) * Altura / 2;
return CalcularAreaTrapezio;
}
double x = AreaTrapezio (4, 2, 6);
x
//18
````
### Exercício 4
Faça uma função ÚNICA que a partir da diagonal maior e menor, calcule a área do losango.
````csharp=
public double AreaTrapezio ( double BaseMaior, double Basemenor, double Altura)
{
double CalcularAreaTrapezio = (BaseMaior + Basemenor) * Altura / 2;
return CalcularAreaTrapezio;
}
double x = AreaTrapezio (4, 2, 6);
x
//18
````
### Exercício 5
Faça uma função ÚNICA que a partir da base e altura, calcule a área do paralelogramo.
```csharp=
public double AreaParalelogramo (double Base, double Altura)
{
double CalcularArea = Base * Altura;
return CalcularArea;
}
double x = AreaParalelogramo (5, 10);
x
//50
````
## Nível 2
### Exercício 1
Faça uma função ÚNICA que a partir do cateto oposto e adjacente, calcule a hipotenusa. Arredonde a resposta para uma casa decimal.
````csharp=
public double CalcularHipotenusa (double CatetoOposto, double CatetoAdjacente)
{
double ElevadoAsegundaPotencia = Math.Pow (CatetoOposto, 2) + Math.Pow(CatetoAdjacente, 2);
double raizQuadrada = Math.Sqrt(ElevadoAsegundaPotencia);
return raizQuadrada;
}
double x = CalcularHipotenusa (9.5, 12.5);
double z = Math.Round (x, 1);
z
//15.7
````
### Exercício 2
Faça uma função ÚNICA que a partir de um capital, parcelas e taxa de
juros, calcule o juros compostos. Arredonde a resposta para uma casa
decimal.
`````csharp=
public double CalcularIMC (double Peso, double Altura)
{
double Calculo = Peso / Math.Pow(Altura, 2);
return Calculo;
}
double x = CalcularIMC (82.5, 1.85);
double z = Math.Round(x,2);
z
//24.11
``````
### Exercício 3
Faça uma função ÚNICA que a partir da massa e velocidade, calcule a
energia cinética. Obrigatório o uso da função Math.Pow.
``````csharp=
public double juros (double capital, int parc, double taxa)
{
double x = capital * parc * taxa / 100;
double y = x + capital;
double carro = Math.Round(y, 1);
return carro;
}
double x = juros(2000, 4, 10);
x
//2800
``````
### Exercício 4
Faça uma função ÚNICA que a partir da massa e velocidade, calcule a
energia cinética. Obrigatório o uso da função Math.Pow.
``````csharp=
public double EnergiaCinetica (double Massa, double Velocidade)
{
double Calcular = (Massa * Math.Pow(Velocidade, 2)) / 2;
return Calcular;
}
double x = EnergiaCinetica (100, 10.50);
x
//5512.5
``````
### Exercício 5
Faça uma função ÚNICA que a partir da altura e raio, calcule o volume de
um cilindro. Obrigatório o uso da função Math.Pow.
`````csharp=
public double CalcularVolumeCilindro (double Raio, double Altura)
{
double CalcularVolume = 3.14 * Math.Pow(Raio, 2) * Altura;
return CalcularVolume;
}
double x = CalcularVolumeCilindro (4, 6);
x
//301.44
``````
## Nivel 3
### Exercício 1
Faça uma função ÚNICA que a partir de um nome completo de uma
pessoa, extraia o primeiro nome.
````csharp=
public double CalcularVolumeCilindro (double Raio, double Altura)
{
double CalcularVolume = 3.14 * Math.Pow(Raio, 2) * Altura;
return CalcularVolume;
}
double x = CalcularVolumeCilindro (4, 6);
x
//301.44
````
### Exercício 2
Faça uma função ÚNICA que a partir de um nome completo de uma
pessoa, extraia o último nome.
````csharp=
public string NomeCompleto (string Nome)
{
string RecorteUltimoNome = Nome.Substring(28);
return RecorteUltimoNome;
}
string x = NomeCompleto ("Mateus Eustaquio Marques de Macedo");
x
//Macedo
````
### Exercício 3
Faça uma função ÚNICA que a partir de um e-mail de uma pessoa, extraia
o domínio do e-mail.
````csharp=
public string dominio (string email)
{
string AcharDominio = email.Substring(email.IndexOf('@'));
return AcharDominio;
}
string x = dominio("mateuseustaquiomm@gmail.com");
x
//@gmail.com
````
### Exercício 4
Faça uma função ÚNICA que a partir de um CEP, retorne verdadeiro/falso
se o CEP contém o caractere hífen (-) e possui um total de 9 caracteres.
````csharp=
public bool Validarcep (string cep)
{
bool quantidade = cep.Length == 9;
bool TemHifen = cep.Contains("-");
bool valido = quantidade == true && TemHifen == true;
return valido;
}
bool x = Validarcep ("04840-6600");
x
//False
````
### Exercício 5
Faça uma função ÚNICA que a partir de um telefone com máscara e DDD
incluído ex. (11) 94343-0808, retorne apenas os números do telefone
ex. 11943430808.
````csharp=
public string DDD (string numero)
{
string recorte = numero.Replace("(", "").Replace(")", "").Replace("-", "");
return recorte;
}
string x = DDD("(11)97769-3909");
x
///11977693909
````
## Nivel 4
### Exercício 1
Faça uma função ÚNICA que a partir de uma data, descubra o último dia
do mês a partir dessa data.
`````csharp=
public DateTime UltimoDiaMes (DateTime data)
{
DateTime Ultimodia = data.AddMonths(1).AddDays(-data.Day);
return Ultimodia;
}
DateTime dia = new DateTime (2021,04,17);
DateTime x = UltimoDiaMes (dia);
x
///4/30/2021 12:00:00 AM
``````
### Exercício 2
Faça uma função ÚNICA que a partir de uma data, descubra o primeiro
dia do próximo mês a partir dessa data.
````csharp=
public DateTime UltimoDiaMes (DateTime data)
{
DateTime Ultimodia = data.AddMonths(1).AddDays(-16);
return Ultimodia;
}
DateTime dia = new DateTime (2021,04,17);
DateTime x = UltimoDiaMes (dia);
x
///5/1/2021 12:00:00 AM
````
### Exercício 3
Faça uma função ÚNICA que a partir de uma data, retorne
verdadeiro/falso se a data pertence ao segundo trimestre do ano.
````csharp=
public bool PertenceSgundoTrimestre (DateTime data)
{
DateTime UltimodiaSegundoTrimestre = new DateTime (2021,06,30);
DateTime PrimeiroDiaSegundoTrimestre = new DateTime (2021,04,01);
bool z = data >= PrimeiroDiaSegundoTrimestre == true && data <= UltimodiaSegundoTrimestre == true;
return z;
}
DateTime n = new DateTime (2021,6,17);
bool x = PertenceSgundoTrimestre(n);
x
///True
````
### Exercício 4
Faça uma função ÚNICA que a partir de uma data, retorne
verdadeiro/falso se a pessoa tem mais de 18 anos a partir do dia atual.
````csharp=
public bool MaiordeDezoito (DateTime Nacimento)
{
DateTime hoje = DateTime.Now;
bool z = Nacimento <= hoje.AddYears(-18);
return z;
}
DateTime n = new DateTime (1975,04,12);
bool x = MaiordeDezoito(n);
x
//True
````
### Exercício 5
Faça uma função ÚNICA que a partir de uma data, retorne
verdadeiro/falso se a data pertence a primeira quinzena do mês.
````csharp=
public bool PrimeiraQuinzena (DateTime dias)
{
DateTime PrimeiroDiaQuinzena = new DateTime (2021,05,01);
DateTime UltimaDiaQuinzena = new DateTime (2021,05,15);
bool EstaDentroQuinzena = dias >= PrimeiroDiaQuinzena == true && dias <= UltimaDiaQuinzena == true;
return EstaDentroQuinzena;
}
DateTime DataEstimada = new DateTime (2021,05,16);
bool PrimeiraQuinzenaMes = PrimeiraQuinzena (DataEstimada);
PrimeiraQuinzenaMes
//False
````
## Nivel 5
### Exercício 1
Faça uma função COMPOSTA que a partir dos valores 'a', 'b' e 'c’, calcule
o valor de 'x’ baseado na equação de segundo grau.
````csharp=
public double EquaçãoSegundoGrau (double A, double B, double C)
{
double Potencia = CalcularPotencia (B);
double CalcularValor = CalcularValorBC ( A, C);
double total = CalcularDelta (Potencia, CalcularValor );
return total;
}
public double CalcularPotencia (double B)
{
return Math.Pow(B,2);
}
public double CalcularValorBC(double A, double C)
{
double Calcular = 4 * A * C;
return Calcular;
}
public double CalcularDelta (double Potencia , double CalcularValor )
{
double X = Potencia - CalcularValor;
return X;
}
double Z = EquaçãoSegundoGrau (1, -10, 24);
Z
//4
````
### Exercício 2
Faça uma função COMPOSTA que encontre um termo de uma PA
(Progressão Aritmética), a partir do primeiro termo, razão e posição do
termo que deseja encontrar.
`````csharp=
public double TermoPA (double PrimeiroTermoA1, double SegundoTermoA2, double Posição)
{
double AcharRazão = CalcularRazãoPA(PrimeiroTermoA1, SegundoTermoA2);
double AcharTermoGeral = CalcularTermoGeral (PrimeiroTermoA1, Posição, AcharRazão);
return AcharTermoGeral;
}
public double CalcularRazãoPA (double A1, double A2)
{
return A2 - A1 ;
}
public double CalcularTermoGeral (double PrimeiroTermoA1, double Posição, double AcharRazão)
{
double An = (PrimeiroTermoA1 + ((Posição - 1) * AcharRazão));
return An;
}
double TermoGeralPA = TermoPA (3, 7, 23);
TermoGeralPA
//91
``````
### Exercício 3
Faça uma função COMPOSTA que encontre um termo de uma PG
(Progressão Geométrica), a partir do primeiro termo, razão e posição do
termo que deseja encontrar.
````csharp=
public double TermoPG (double PrimeiroTermoA1, double SegundoTermoA2, double Posição)
{
double AcharRazão = CalcularRazão (PrimeiroTermoA1, SegundoTermoA2);
double AcharTermoGeral = CalcularTermoGeral (PrimeiroTermoA1, Posição, AcharRazão);
return AcharTermoGeral;
}
public double CalcularRazão( double PrimeiroTermoA1, double SegundoTermoA2)
{
return SegundoTermoA2 / PrimeiroTermoA1;
}
public double CalcularTermoGeral (double PrimeiroTermoA1, double Posição, double AcharRazão)
{
double n = Posição - 1;
double An = (PrimeiroTermoA1 * (Math.Pow(AcharRazão,n)));
return An;
}
double x = TermoPG (2, 6, 8);
x
//4374
````
### Exercício 4
Faça uma função COMPOSTA que a partir de dois nomes completos,
retorne verdadeiro/falso se as pessoas são da mesma família,
comparando o último nome das duas pessoas.
`````csharp=
public bool SãoMesmaFamilia (string NomeCompletoP1, string NomeCompletoP2)
{
string Pessoa1 = NomePessoa1 (NomeCompletoP1);
string Pessoa2 = NomePessoa2 (NomeCompletoP2);
bool UltimoNome = Pessoa1 == Pessoa2;
return UltimoNome;
}
public string NomePessoa1 (string NomeCompletoP1)
{
string RecorteUltimoNome = NomeCompletoP1.Substring(28);
return RecorteUltimoNome;
}
public string NomePessoa2 (string NomeCompletoP2)
{
string RecorteUltimoNomeP2 = NomeCompletoP2.Substring(29);
return RecorteUltimoNomeP2;
}
bool x = SãoMesmaFamilia ("Mateus Eustáquio Marques de Macedo", "Mariana Eustáquio Marques de Macedo");
x
//True
``````
### Exerciício 5
Faça uma função COMPOSTA que a partir de duas datas de nascimento,
retorne verdadeiro/false se as duas pessoas forem do signo de libra.
````csharp=
public bool DataPessoa (DateTime Pessoa1, DateTime Pessoa2)
{
DateTime PrimeiroDiaLibra = new DateTime(2003,09,23);
DateTime UltimoDiaLibra = new DateTime(2003,10,22);
bool ComparaDataP1 = SignoLibraP1(Pessoa1, PrimeiroDiaLibra, UltimoDiaLibra);
bool ComparaDataP2 = SignoLibraP2(Pessoa2, PrimeiroDiaLibra, UltimoDiaLibra);
bool SãoIguais = ComparaDataP1 == ComparaDataP2;
return SãoIguais;
}
public bool SignoLibraP1 (DateTime Pessoa1, DateTime PrimeiroDiaLibra, DateTime UltimoDiaLibra)
{
bool ComparaPessoa1 = Pessoa1 >= PrimeiroDiaLibra == true && Pessoa1 <= UltimoDiaLibra == true;
return ComparaPessoa1;
}
public bool SignoLibraP2 (DateTime Pessoa2, DateTime PrimeiroDiaLibra, DateTime UltimoDiaLibra)
{
bool ComparaPessoa2 = Pessoa2 >= PrimeiroDiaLibra == true && Pessoa2 <= UltimoDiaLibra == true;
return ComparaPessoa2;
}
DateTime P1 = new DateTime (2003,09,23);
DateTime P2 = new DateTime (2003,09,25);
bool x = DataPessoa(P1, P2);
x
//True
````