# Session Five | Fundamentos da Lógica Focused Training Conditions Cauê Freitas Barreto 05 InfoB [toc] #### Primeira Questão ## Exercicio 1 ## Exercício 1 ````csharp= public class Calculo { public double Valor1 { get; set; } public double Valor2 { get; set; } public string Operacao { get; set; } } public class Pessoa { public string Nome { get; set; } public double Altura { get; set; } public double Peso { get; set; } } public class Triangulo { public double LadoA { get; set; } public double LadoB { get; set; } public double LadoC { get; set; } } public class Notas { public double Nota1 { get; set; } public double Nota2 { get; set; } public double Nota3 { get; set; } } public class TreinoFocadoA { public double Calculadora (Calculo calculo) { double resultado = 0; if (calculo.Operacao == "Soma") resultado = calculo.Valor1 + calculo.Valor2; else if (calculo.Operacao == "Subtração") resultado = calculo.Valor1 - calculo.Valor2; else if (calculo.Operacao == "Multiplicação") resultado = calculo.Valor1 * calculo.Valor2; else if (calculo.Operacao == "Divisão") resultado = calculo.Valor1 / calculo.Valor2; else resultado = Math.Pow(calculo.Valor1, calculo.Valor2); return resultado; } public string Termometro (double grau) { string situacao = string.Empty; if (grau >= 37.6 && grau <= 39.5) situacao = "Você está com febre!"; else if (grau >= 39.6 && grau <= 41) situacao = "Você está com febre Alta! Se cuida!"; else if (grau <= 35) situacao = "Você está em estado de Hipotermia!"; else if (grau >= 41) situacao = "Você está com hHipertemrmia! Vá ao Hospital!!!"; else situacao = "Você está com a temperaturo normal do corpo, relaxa!"; return situacao; } public string LucroOuPrejuizo (double gastos, double lucros) { double total = lucros - (gastos); string situacao = total < 0 ? "Poxa, você ficou R$ " + Math.Abs(total) + " Negativo" : "Muito bem, você ficou R$ " + total + " Positivo"; return situacao; } public double ArredondarMeioEmMeio (double nota) { double ParteDecimal = Math.Round(nota - Math.Truncate(nota), 2); if (ParteDecimal >= 0.00 && ParteDecimal <= 0.25) nota = Math.Floor(nota); else if (ParteDecimal >= 0.26 && ParteDecimal <= 0.74) nota = Math.Floor(nota) + 0.50; else nota = Math.Ceiling(nota); return nota; } public string Passou (Notas notas) { return (notas.Nota1 + notas.Nota2 + notas.Nota3) / 3 >= 5 ? "Parabéns, Você passou direto!" : "Você está de recuperação!"; } public string Passou (Notas notas, int faltas) { double media = (notas.Nota1 + notas.Nota2 + notas.Nota3) / 3; string situacao = string.Empty; if (faltas < 25 && media >= 5) situacao = "Parabéns, Você passou direto!"; else { if (faltas > 25 && media < 5) situacao = "Recuperação por Nota e Faltas!"; else if (faltas > 25) situacao = "Recuperação por Faltas!"; else if (media < 5) situacao = "Recuperação por Notas!"; } return situacao; } public string TipoTriangulo (Triangulo triangulo) { string tipo = string.Empty; if (triangulo.LadoA == triangulo.LadoB && triangulo.LadoA == triangulo.LadoC) { tipo = "Este Triângulo é do tipo Equilátero"; } else { if (triangulo.LadoA != triangulo.LadoB && triangulo.LadoA != triangulo.LadoC && triangulo.LadoB != triangulo.LadoC) tipo="Este Triângulo é do tipo Escaleno"; else tipo = "Este Triângulo é do tipo Isóceles"; } return tipo; } public string IMC (Pessoa pessoa) { double imc = Math.Round(pessoa.Peso / Math.Pow(pessoa.Altura, 2), 2); string situacao = string.Empty; if (imc >= 18.5 && imc <= 24.9) situacao = pessoa.Nome + ", Você está com a classificação Normal"; else { if (imc < 18.5) situacao = pessoa.Nome + ", Você está com a classificação de Magreza"; else if (imc >= 25.0 && imc <= 29.9) situacao = pessoa.Nome + ", Você está com a classificação Sobrepeso!"; else if (imc >= 30 && imc <= 39.9) situacao = pessoa.Nome + ", Você está com a classificação Obesidade!"; else situacao = pessoa.Nome + ", Você está com a classificação Obesidade Grave"; } return situacao; } } /** Testando a função da Calculadora **/ Calculo cal = new Calculo (); cal.Operacao = "Divisão"; cal.Valor1 = 2; cal.Valor2 = 2; TreinoFocadoA treino = new TreinoFocadoA(); double a = treino.Calculadora(cal); Console.WriteLine("Resultado da função da Calculadora: " + a); /** Testando a função da Calculadora **/ /** Testando a função do Termometro **/ string b = treino.Termometro(38.4); Console.WriteLine("Resultado da função do Termometro: " + b); /** Testando a função do Termometro **/ /** Testando a função de Lucro ou Prejuízo **/ string c = treino.LucroOuPrejuizo (5.0, -32.0); Console.WriteLine("Resultado da função de Lucro ou Prejuízo: " + c); /** Testando a função de Lucro ou Prejuízo **/ /** Testando a função de Arredondar Meio Em Meio **/ double d = treino.ArredondarMeioEmMeio(4.30); Console.WriteLine("Resultado da função de Arredondar Meio Em Meio: " + d); /** Testando a função de Arredondar Meio Em Meio **/ /** Testando a função Passou **/ Notas notas = new Notas(); notas.Nota1 = 8; notas.Nota2 = 9; notas.Nota3 = 10; string e = treino.Passou(notas); Console.WriteLine("Resultado da função Passou: " + e); /** Testando a função Passou **/ /** Testando a função Passou **/ string f = treino.Passou(notas, 26); Console.WriteLine("Resultado da função Passou: " + f); /** Testando a função Passou **/ /** Testando a função do Tipo de Triangulo **/ Triangulo tring = new Triangulo(); tring.LadoA = 10; tring.LadoB = 8; tring.LadoC = 6; string g = treino.TipoTriangulo(tring); Console.WriteLine("Resultado da função do Tipo de Triangulo: " + g); /** Testando a função do Tipo de Triangulo **/ /** Testando a função do IMC **/ Pessoa p = new Pessoa(); p.Nome ="Letícia Queiroz"; p.Altura = 1.58; p.Peso = 55; string h = treino.IMC (p); Console.WriteLine("Resultado da função do IMC: " + h); /** Testando a função do IMC **/ ```` ## Exercício 2 ````csharp= public class PecaDominio { public double LadoA { get; set; } public double LadoB { get; set; } } public class Semaforo { public bool LuzVermelhaAcesa { get; set; } public bool LuzAmarelaAcesa { get; set; } public bool LuzVerdeAcesa { get; set; } } public class Recuperacao { public string Email { get; set; } public string Telefone { get; set; } } public class TreinoFocadoB { public bool CorPrimária (string cor) { bool x; if (cor == "Amarelo" ||cor == "Azul" ||cor == "Vermelho") x = true; else x = false; return x; } public string CombinacaoCorPrimaria (string cor1, string cor2) { string x = string.Empty; if (cor1 == "Amarelo" && cor2 == "Vermelho" || cor1 == "Vermelho" && cor2 == "Amarelo") x = "Combinação que resulta na cor: Cor Laranja"; else if (cor1 == "Azul" && cor2 == "Vermelho" || cor1 == "Vermelho" && cor2 == "Azul") x = "Combinação que resulta na cor: Cor Roxa"; else if (cor1 == "Azul" && cor2 == "Amarelo" || cor1 == "Amarelo" && cor2 == "Azul") x = "Combinação que resulta na cor: Cor Verde"; else x = "Desculpe! A cor escolhida não é uma cor primária. Por favor, insira uma cor primária!"; return x; } public string PrimeirNome (string nome) { string x = string.Empty; if ( nome.Contains(" ")) x = nome.Substring(0, nome.IndexOf (" ")); else x = nome; return x; } public bool DobreDominio (PecaDominio peca) { bool x; if ( peca.LadoA == 6 && peca.LadoB == 6) x = true; else x = false; return x; } public bool JogadaValida (PecaDominio peca1, PecaDominio peca2) { bool x; if (peca1.LadoB == peca2.LadoA) x = true; else x = false; return x; } public string RecuperacaoSenha (Recuperacao rec) { string x = string.Empty; if (rec.Email.Contains("@") && rec.Telefone.Contains("-") && rec.Telefone.Contains("(") && rec.Telefone.Contains(")")) x = $"Você receberá um e-mail do {rec.Email.Substring(rec.Email.IndexOf("@") + 1)} para resetar a senha. Um código também foi enviado para o número {rec.Telefone.Substring(rec.Telefone.IndexOf("-") + 1)}"; else { if ((rec.Email.Contains("@") == false && rec.Telefone.Contains("-") && rec.Telefone.Contains("(") && rec.Telefone.Contains(")"))) x = "Por favor insira um E-mail válido!"; else if ((rec.Email.Contains("@") == false && rec.Telefone.Contains("-") == false && rec.Telefone.Contains("(") == false && rec.Telefone.Contains(")")) == false) x = "O E-mail e o número de Telefone inseridos são inválidos!"; else x = "Por favor insira um número de Telefone válido!"; } return x; } public Semaforo IniciarSemaforo() { Semaforo s = new Semaforo(); s.LuzVermelhaAcesa = true; s.LuzAmarelaAcesa = false; s.LuzVerdeAcesa = false; return s; } public Semaforo ProximoSinal (Semaforo s) { if (s.LuzVermelhaAcesa) { s.LuzVermelhaAcesa = false; s.LuzAmarelaAcesa = true; s.LuzVerdeAcesa = false; } else if (s.LuzAmarelaAcesa) { s.LuzVermelhaAcesa = false; s.LuzAmarelaAcesa = false; s.LuzVerdeAcesa = true; } else if (s.LuzVerdeAcesa) { s.LuzVermelhaAcesa = true; s.LuzAmarelaAcesa = false; s.LuzVerdeAcesa = false; } return s; } } TreinoFocadoB treino = new TreinoFocadoB(); /* Testando a função: Cor Primária */ bool a = treino.CorPrimária ("Vermelho"); Console.WriteLine(a); /* Testando a função: Cor Primária */ /* Testando a função: Combinação de Cores Primária */ string b = treino.CombinacaoCorPrimaria("Azul", "Vermelho"); Console.WriteLine(b); /* Testando a função: Combinação de Cores Primáriaa */ /* Testando a função: Primeiro Nome */ string c = treino.PrimeirNome ("Letícia Queiroz Moreira"); Console.WriteLine(c); /* Testando a função: Primeiro Nome */ /* Testando a função: Peca Dobre */ PecaDominio peca = new PecaDominio(); peca.LadoA = 6; peca.LadoB = 6; bool d = treino.DobreDominio (peca); Console.WriteLine(d); /* Testando a função: Peca Dobre */ /* Testando a função: Jogada Válida */ PecaDominio peca1 = new PecaDominio(); peca1.LadoB = 6; PecaDominio peca2 = new PecaDominio(); peca2.LadoA = 5; bool e = treino.JogadaValida (peca1, peca2); Console.WriteLine(e); /* Testando a função: Jogada Válida */ /* Testando a função: Recuperação de Senha */ Recuperacao rec= new Recuperacao (); rec.Email = "leticiaqmoreira@hotmail.com"; rec.Telefone = "(11) 95474-5064"; string f = treino.RecuperacaoSenha(rec); Console.WriteLine(f); /* Testando a função: Recuperação de Senha */ /* Testando a função: Iniciar Semaforo */ Semaforo s = treino.IniciarSemaforo(); Console.WriteLine("Vermelha: " + s.LuzVermelhaAcesa + " - Amarela: " + s.LuzAmarelaAcesa + " - Verde: " + s.LuzVerdeAcesa); /* Testando a função: Iniciar Semaforo */ /* Testando a função: Próximo Sinal */ Semaforo sem = new Semaforo (); sem.LuzVermelhaAcesa = false; sem.LuzAmarelaAcesa = true; sem.LuzVerdeAcesa = false; Semaforo g = treino.ProximoSinal(sem); Console.WriteLine("Vermelha: " + g.LuzVermelhaAcesa + " - Amarela: " + g.LuzAmarelaAcesa + " - Verde: " + g.LuzVerdeAcesa); /* Testando a função: Próximo Sinal */ // True // Combinação que resulta na cor: Cor Roxa // Letícia // True // False // Você receberá um e-mail do hotmail.com para resetar a senha. Um código também foi enviado para o número 5064 // Vermelha: True - Amarela: False - Verde: False // Vermelha: False - Amarela: False - Verde: True ```` ## Exercício 3 ````csharp= public class Pessoa { public string Nome { get; set; } public DateTime Nascimento { get; set; } public string Cidade { get; set; } } public class TreinoFocadoC { public int Trimestre (DateTime data) { int x = 0; if (data.Month == 1 || data.Month == 2 || data.Month == 3) x = 1; else if (data.Month == 4 || data.Month == 5 || data.Month == 6) x = 2; else if (data.Month == 7 || data.Month == 8 || data.Month == 9) x = 3; else x = 4; return x; } public string Mes (int mes) { string x = string.Empty; if (mes == 1) x = "Janeiro"; else { if (mes == 2) x = "Fevereiro"; else if (mes == 3) x = "Março"; else if (mes == 4) x = "Abril"; else if (mes == 5) x = "Maio"; else if (mes == 6) x = "Junho"; else if (mes == 7) x = "Julho"; else if (mes == 8) x = "Agosto"; else if (mes == 9) x = "Setembro"; else if (mes == 10) x = "Outubro"; else if (mes == 11) x = "Novembro"; else x = "Dezembro"; } return x; } public string PeriodoDia (DateTime data) { string x = string.Empty; if (data.Hour == 06 || data.Hour < 12) x = "Manhã"; else { if (data.Hour == 12 || data.Hour < 18) x = "Tarde"; else if (data.Hour == 18 || data.Hour < 24) x = "Noite"; else x = "Madrugada"; } return x; } public double DiasVida (DateTime nascimento) { TimeSpan x = nascimento - DateTime.Now; double total = x.TotalDays; return Math.Round(Math.Abs(total)); } public string QualSigno (DateTime nascimento) { string x = string.Empty; if (nascimento.Day >= 21 && nascimento.Month == 3 || nascimento.Day <= 20 && nascimento.Month == 4) x = "Áries"; else if (nascimento.Day >= 21 && nascimento.Month == 4 || nascimento.Day <= 20 && nascimento.Month == 5) x = "Touro"; else if (nascimento.Day >= 21 && nascimento.Month == 5 || nascimento.Day <= 20 && nascimento.Month == 6) x = "Gêmeos"; else if (nascimento.Day >= 21 && nascimento.Month == 6 || nascimento.Day <= 21 && nascimento.Month == 7) x = "Câncer"; else if (nascimento.Day >= 22 && nascimento.Month == 7 || nascimento.Day <= 22 && nascimento.Month == 8) x = "Leão"; else if (nascimento.Day >= 23 && nascimento.Month == 8 || nascimento.Day <= 22 && nascimento.Month == 9) x = "Virgem"; else if (nascimento.Day >= 23 && nascimento.Month == 9 || nascimento.Day <= 22 && nascimento.Month == 10) x = "Libra"; else if (nascimento.Day >= 23 && nascimento.Month == 10 || nascimento.Day <= 21 && nascimento.Month == 11) x = "Escorpião"; else if (nascimento.Day >= 22 && nascimento.Month == 11 || nascimento.Day <= 21 && nascimento.Month == 12) x = "Sargitário"; else if (nascimento.Day >= 22 && nascimento.Month == 12 || nascimento.Day <= 20 && nascimento.Month == 01) x = "Capricórnio"; else if (nascimento.Day >= 21 && nascimento.Month == 01 || nascimento.Day <= 19 && nascimento.Month == 02) x = "Áquario"; else x = "Peixes"; return x; } public string DataPorExtenso (Pessoa pessoa) { return $"{pessoa.Nome} você nasceu há {DiasVida(pessoa.Nascimento)} dias, em uma {PeriodoDia(pessoa.Nascimento)} do dia {pessoa.Nascimento.Day} de {Mes(pessoa.Nascimento.Month)} ({Trimestre(pessoa.Nascimento)}º Trimestre) de {pessoa.Nascimento.Year}. Seu signo é de {QualSigno(pessoa.Nascimento)}"; } } TreinoFocadoC treino = new TreinoFocadoC(); /* Testando a função: Trimestre */ DateTime x = new DateTime (2021,06, 25); int a = treino.Trimestre(x); Console.WriteLine(a + "º Trimestre"); /* Testando a função: Trimestre */ /* Testando a função: Mês por Extenso */ string b = treino.Mes(6); Console.WriteLine (b); /* Testando a função: Mês por Extenso */ /* Testando a função: Período do dia */ DateTime z = DateTime.Now; string c = treino.PeriodoDia(z); Console.WriteLine (c); /* Testando a função: Período do dia */ /* Testando a função: Signo */ DateTime nasc2 = new DateTime (2021,1, 05); string d = treino.QualSigno(nasc2); Console.WriteLine ("Seu signo é de: " + d); /* Testando a função: Signo */ /* Testando a função: Data por extenso */ Pessoa p = new Pessoa(); p.Nome = "Maria Clara"; p.Nascimento = new DateTime (2005,10,27); p.Cidade = "São Paulo"; string e = treino.DataPorExtenso(p); Console.WriteLine(e); /* Testando a função: Data por extenso */ /* Testando a função: Dias de vida*/ double f = treino.DiasVida(new DateTime (2005, 10, 27)); Console.WriteLine(f); /* Testando a função: Dias de vida*/ // 2º Trimestre // Junho // Manhã // Seu signo é de: Escorpião // Maria Clara você nasceu há 6358 dias, em uma Tarde do dia 10 de Outubro (2º Trimestre) de 2005. Seu signo é de Escorpião // 6358 ````
{"metaMigratedAt":"2023-06-16T03:47:00.066Z","metaMigratedFrom":"Content","title":"Session Five | Fundamentos da Lógica Focused Training Conditions","breaks":true,"contributors":"[{\"id\":\"4197b53a-4db5-46d1-a826-1e82b9d77550\",\"add\":16319,\"del\":0}]"}
Expand menu