# Final Session | Fund. de Lógica autor: Alan Oliveira Rocha Santiago turma: InfoB número: 02 [TOC] ## Nível 1 ### Exercicio 1 Faça uma função ÚNICA que a partir da base e altura, calcule a área do triângulo. ```csharp= public double AreaTrinagulo(double alt, double bas) { double area = (alt * bas) / 2; return area; } double x = AreaTrinagulo(10, 9); x //45 ``` ### Exercicio 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 perimetro = lado * 8; return perimetro; } double x = PerimetroOctogono(27); x //216 ``` ### Exercicio 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 B,double b, double h) { double area = ((B + b) * h) / 2; return area; } double x = AreaTrapezio(20, 10, 15); x //225 ``` ### Exercicio 4 Faça uma função ÚNICA que a partir da diagonal maior e menor, calcule a área do losango. ```csharp= public double AreaLosango(double D, double d) { double area = (D * d)/ 2; return area; } double x = AreaLosango(20, 10); x //100 ``` ### Exercicio 5 Faça uma função ÚNICA que a partir da base e altura, calcule a área do paralelogramo. ```csharp= public double AreaParalelogramo(double B, double h) { double area = B * h; return area; } double x = AreaParalelogramo(20, 10); x //200 ``` ## Nivel 2 ### Exercicio 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 hipotenusa = Math.Pow(catetoOposto, 2) + Math.Pow(catetoAdjacente, 2); double hipotenusa2 = Math.Pow(hipotenusa, 2); double hipotenusa3 = Math.Round(hipotenusa2, 1); return hipotenusa3; } double x = CalcularHipotenusa(5.25, 6.9); x //5650,9 ``` ### Exencicio 2 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 CalcularIMC(double peso, double altura) { double IMC = peso / (altura * altura); double arredondamentoIMC = Math.Round(IMC, 2); return arredondamentoIMC; } double x = CalcularIMC(70, 1.60); x //27,34 ``` ### Exercicio 3 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 JurosComposto(double capital, int parcelas, double taxa) { double juros = capital * Math.Pow(1 + taxa / 100, parcelas); double novo = capital + juros; return Math.Round(novo, 1); } double x = JurosComposto(1000, 12, 3); x //2425,8 ``` ### Exercicio 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 CalcularEnergiaCinetica(double m, double v) { double ec = m * v / 2; double funcao = Math.Pow(v, 2); return funcao; } double x = CalcularEnergiaCinetica(2, 5); x //25 ``` ## Nivel 3 ### Exercicio 1 Faça uma função ÚNICA que a partir de um nome completo de uma pessoa, extraia o primeiro nome. ```csharp= public string PrimeiroNome(string nome) { string x = nome.Substring(0, 4); return x; } string x = PrimeiroNome("Alan Oliveira Rocha Santiago"); x //"Alan" ``` ### Exercicio 2 Faça uma função ÚNICA que a partir de um nome completo de uma pessoa, extraia o último nome. ```csharp= public string UltimoNome(string nome) { string x = nome.Substring(20, 8); return x; } string x = UltimoNome("Alan Oliveira Rocha Santiago"); x //"Santiago" ``` ### Exercicio 4 Faça uma função ÚNICA que a partir de um CEP, retorne verdadeiro/falsose o CEP contém o caractere hífen (-) e possui um total de 9 caracteres. ex. 11943430808. ```csharp= >public bool CepEndereco(string cep) { bool x = cep.Length == 9 && cep.Contains("-"); return x; } bool x = CepEndereco("11943430808"); x //false ``` ### Exercicio 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 SomenteNumeros(string ddd, string numero) { string x = ddd + " " + numero; string y = x.Substring(1, 2) + x.Substring(5, 5) + x.Substring(11, 4); return y; } string x = SomenteNumeros("(11)", "91234-9148"); x //"11912349148" ``` ## 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 dia) { DateTime x = dia.AddMonths(1).AddDays(-dia.Day); return x; } DateTime dia = new DateTime(2020, 10, 24); DateTime x = UltimoDiaMes(dia); x //[31/10/2020 00:00:00] ``` ### Exercicio 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 ultimodiadomes(DateTime dia) { DateTime x = dia.AddMonths(+1).AddDays(-dia.Day).AddDays(1); return x; } DateTime dia = new DateTime(2021, 04, 16); DateTime x = ultimodiadomes(dia); x //[01/05/2021 00:00:00] ``` ### Exercicio 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 SegundoTrimestre(DateTime trimestre) { bool comtrimestre = trimestre.Month == 4 && trimestre.Day > 1; bool meiotrimestre = trimestre.Month == 5 && trimestre.Day > 1; bool fimtrimestre = trimestre.Month == 6 && trimestre.Day > 1; return comtrimestre == true || meiotrimestre == true || fimtrimestre == true; } DateTime trimestre = new DateTime(2021, 04, 18); bool x = SegundoTrimestre(trimestre); x //true ``` ### Exercicio 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 quinzena) { bool x = quinzena.Month == 4 && quinzena.Day > 1; bool y = quinzena.Month == 4 && quinzena.Day <= 15; return x == true && y == true; } DateTime quinzena = new DateTime(2021, 04, 16); bool x = PrimeiraQuinzena(quinzena); x //false ``` ## Nivel 5 ### Exercicio 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 Calcularpa1(double numero) { double x = numero - 1; return x; } public double CalcularProgrecaoAritimetica(double primeiro, double numero, double racao) { double x = primeiro + Calcularpa1(numero) * racao; return x; } double x = CalcularProgrecaoAritimetica(26, 10, 5); x //71 ``` ### Exercicio 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 razao(double numero) { double x = numero - 1; return x; } public double TermoGeral(double a1, double q, double numero) { double x = razao(numero); double y = a1 * Math.Pow(q, x); return y; } double x = TermoGeral(2, 2, 20); x //1048576 ``` ### Exercicio 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 MesmaFamilia(string pessoa1) { bool x = pessoa1.Contains("Santiago"); return x; } public bool MesmaFamilia2(string pessoa2) { bool x = pessoa2.Contains("Santiago"); return x; } bool x = MesmaFamilia("Alan Oliveira Rocha Santiago") && MesmaFamilia2("Anna Alyce Oliveira Rocha Santiago"); x //true ``` ### Exercicio 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 Saolibras(DateTime pessoa1, DateTime pessoa2) { bool l1 = libra(pessoa1); bool l2 = libra(pessoa2); return l1 == true && l2 == true; } public bool libra(DateTime nascimento) { bool x = nascimento.Month == 9 && nascimento.Day > 22; bool y = nascimento.Month == 10 && nascimento.Day < 23; return x == true || y == true; } DateTime nascimento1 = new DateTime(2000, 07, 25); DateTime nascimento2 = new DateTime(2000, 06, 23); bool x = Saolibras(nascimento1, nascimento2); x //false ```
{"metaMigratedAt":"2023-06-15T22:47:43.472Z","metaMigratedFrom":"Content","title":"Final Session | Fund. de Lógica","breaks":true,"contributors":"[{\"id\":\"1ac86fe9-aad5-49b4-b562-fee077af4a56\",\"add\":9685,\"del\":1227}]"}
Expand menu