# Fund.Logica| final session **Nome** Kevin Ribeiro de Andrade **Número** 27 **Turma** INFO A ## Nível 1 # Exercício 1 Faça uma função ÚNICA que a partir do lado, calcule o perímetro do octógono. ```csharp= public int PerimetroOctogono (int L) {     int Perimetro = L * 8;     return Perimetro; } int x = PerimetroOctogono (10); x = 8 ``` ## Exercício 2 Faça uma função ÚNICA que a partir da base e altura, calcule a área do triângulo. ```csharp= public double area_triang (double baset, double altura) { return (baset * altura) / 2; } double x = area_triang(27, 5.5); //x = 74.25 ``` ## Exercício 3 Faça uma função ÚNICA que a partir da diagonal maior e menor, calcule a área do losango. ```csharp= public double area_losang (double diagonal_maior, double diagonal_menor) { return (diagonal_maior * diagonal_menor) / 2; } double y = area_losang(4, 2.2); //y = 4.4 ``` ## Exercício 4 Faça uma função ÚNICA que a partir da base e altura, calcule a área do paralelogramo. ```csharp= public double area_paraleleogramo ( double basek, double altura) { return basek * altura; } double f = area_paraleleogramo(16, 4.98); //f = 79.68 ``` # NIVEL 2 ## Exercício 1 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 energia_cinetica (double velocidade, double massa) { double calc = massa * (math.pow(velocidade, 2 )); return calc / 2; } double resul = energia_cinetica (3, 47) resul ``` ## Exercício 2 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 volume_cilindro (double raio_base, double altura) { return (Math.Pow(raio_base, 2)) * altura; } double r = volume_cilindro(35, 3.7); r ``` ## Exercício 3 Faça uma função ÚNICA que a partir de um peso e altura de uma pessoa, calcule o IMC. Arredonde a resposta para duas casas decimais. ```csharp= public double IMC (double peso, double altura) { double calc = peso / Math.Pow(altura, 2); return Math.Round(calc,2); } double l = IMC (35, 1.79); l = 10.92 ``` ## Exercício 4 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 JurosCompostos (double capital, int parcelas, double taxa_juros) { double calc = capital * Math.Pow(1 + taxa_juros / 100, parcelas); double adicionando_juros = capital + calc; return Math.Round(adicionando_juros, 2); } double x = JurosCompostos (10000, 5, 7); x = 24025.52 ``` # 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 string nome(string nome) { string corte = nome.Substring(0,5); return corte; } string n = nome("pedro da silva Gomes"); //n = pedro ``` ## 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 nome(string nome) { string corte = nome.Substring(15,5); return corte; } string n = nome("pedro da silva Gomes"); //n = gomes ``` ## 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 email(string nome_email) { string recorte = nome_email.Substring(14,10); return recorte; } string s = email("pedrodasilva65@gmail.com"); //s = @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 verificando_CEP (string CEP) { long x = CEP.Length; bool verific = x == 9; bool verific2 = CEP.Contains("-"); return verific == true && verific2 == true; } bool y = verificando_CEP("06198-145"); //y = true ``` # 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 TimeSpan ultimo_dia_mes (DateTime mes) { DateTime agora = DateTime.Now; TimeSpan dif = agora - mes; //DateTime convertendo = Convert.ToDateTime(dif); return dif; } TimeSpan x = ultimo_dia_mes( new DateTime(2021, 03, 30)); //x = 20.22:48:15.2970320 ``` ## Exercício 2 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 segundo_trimestre ( DateTime agora) { DateTime comeco = new DateTime(2021,05,01); DateTime final = new DateTime(2021,08,30); long calc = comeco.Month; long calc2 = final.Month; long calc3 = agora.Month; return calc3 <= calc || calc3 >= calc2; } bool x = segundo_trimestre(DateTime.Now); //x = false ``` ## Exercício 3 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 primeira_quinzena_mes( DateTime agora) { DateTime comeco = new DateTime(2021,05,01); DateTime final = new DateTime(2021,05,15); long calc = comeco.Day; long calc2 = final.Day; long calc3 = agora.Day; return calc3 <= calc2; } bool y = primeira_quinzena_mes(DateTime.Now); //y = false ``` ## 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 maior18 ( DateTime nasc) { DateTime agora = DateTime.Now; TimeSpan comp = agora - nasc; double calc = comp.TotalDays / 365; return calc >= 18; } DateTime v = new DateTime(23,09,20); bool x = maior18(v); x = true ``` # Nível 5 ## Exercício 1 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 calc_PG (string PG, long termo, double razao) { double y = calc1(termo, razao); return y; } public double calc1 (long termo, double razao) { double x = termo * (Math.Pow(razao, termo - 1)); return x; } double final = calc_PG("3, 6, 12, 24, 48, 96, 192...", 10, 2); final = 1536 ``` ## 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 long calc_PA (string PA, long termo_encontrar, long razao) { return calc1(PA, termo_encontrar,razao); } public long calc1(string PA,long termo, long razao) { string convertendo = PA.Substring(0,1); long termo1 = Convert.ToInt16(convertendo); return termo1 + ((termo - 1) * razao); } long x = calc_PA( "1, 2, 3, 4, 5, 6 , 7, 8...", 10, 1); x = 10 ``` ## Exercício 3 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 ultimo_nome (string pessoa1, string pessoa2) { return comparando(pessoa1) == comparando2(pessoa2);; } public string comparando ( string pessoa1) { string corte = pessoa1.Substring(15,5); return corte; } public string comparando2 ( string pessoa2) { string cortin = pessoa2.Substring(17,8); return cortin; } bool x = ultimo_nome("alice do satio Souza", "Rodrigo mario dos cavajose"); x = false ``` ## Exercício 4 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 de_libra(DateTime nasc, DateTime nasc_2) { return nasc1(nasc) == true nasc2(nasc_2) == true; } public bool nasc1(DateTime nasc) { bool comp = nasc.Month == 9 && nasc.Day > 22; bool comp2 = nasc.Month == 10 && nasc.Day < 23; return comp == true comp2 == true; } public bool nasc2( DateTime nasc) { bool comp = nasc.Month == 9 && nasc.Day > 22; bool comp2 = nasc.Month == 10 && nasc.Day < 23; return comp == true || comp2 == true; } bool x = de_libra(new DateTime(2021,10, 22), new DateTime (2021,09, 19)); x = false ```