---
# System prepended metadata

title: 'Session Five: Focused Training Conditions | Fundamentos da Lógica'

---

# Session Five: Focused Training Conditions | Fundamentos da Lógica
**Autor**: Vitório Trindade Santana
**Turma**: Informática C
**Número**: 50

[toc]

## Exercício 1 

```csharp=
class MainClass {
  public static void Main (string[] args) {
    Calculo cal = new Calculo();
    cal.Valor1 = 2;
    cal.Valor2 = 3;
    cal.Operacao = "Multiplicação";

    Triangulo tri = new Triangulo ();
    tri.LadoA = 3;
    tri.LadoB = 3;
    tri.LadoC = 4;

    Notas nt = new Notas ();
    nt.Nota1 = 7;
    nt.Nota2 = 8;
    nt.Nota3 = 9;

    Pessoa ps = new Pessoa ();
    ps.Peso = 62;
    ps.Altura = 1.74;
    ps.Nome = "Vitório Trindade";

    TreinoFocadoA q1 = new TreinoFocadoA();
    double tfe1 = q1.Calculadora(cal);
    string tfe2 = q1.Termometro(37);
    string tfe3 = q1.LucroOuPrejuizo(3000, 1000);
    string tfe4 = q1.Passou(nt);
    string tfe5 = q1.PassouOuRecuperacao(nt, 23);
    string tfe6 = q1.TipoTriangulo(tri);
    string tfe7 = q1.IMC(ps);

    Console.WriteLine(tfe1);
    Console.WriteLine(tfe2);
    Console.WriteLine(tfe3);
    Console.WriteLine(tfe4);
    Console.WriteLine(tfe5);
    Console.WriteLine(tfe6);
    Console.WriteLine(tfe7);
    
    //6
    //Parabéns, você está normal!
    //Poxa, você ficou R$ 2000 negativo.
    //Parabéns,você passou!
    //Parabéns,você passou!
    //O triângulo é isósceles
    //Vitório Trindade, você está normal
    
  }
}

public class Calculo 
{
  public double Valor1 {get;set;}
  public double Valor2 {get;set;}
  public string Operacao {get;set;}
}

public class Triangulo
{
  public double LadoA {get;set;}
  public double LadoB {get;set;}
  public double LadoC {get;set;}
}

public class Pessoa
{
  public string Nome {get;set;}
  public double Altura {get;set;}
  public double Peso {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 operacao = 0;
    
    if (calculo.Operacao == "Soma")
    {
      operacao = calculo.Valor1 + calculo.Valor2;
    }
    else if (calculo.Operacao == "Subtração")
    {
      operacao = calculo.Valor1 - calculo.Valor2;
    }
    else if (calculo.Operacao == "Multiplicação")
    {
      operacao = calculo.Valor1 * calculo.Valor2;
    }
    else if (calculo.Operacao == "Divisão")
    {
      operacao = calculo.Valor1 / calculo.Valor2;
    }
    else if (calculo.Operacao == "Potência")
    {
      operacao =  Math.Pow(calculo.Valor1, calculo.Valor2);
    }

    return operacao;
  }
  public string Termometro (double grau)
  {
    string temp = "";

    if (grau >= 36 && grau <= 37.5)
    {
      temp = "Parabéns, você está normal!";
    }

    else if (grau >= 37.6 && grau <= 39.5)
    {
      temp = "Cuidado, você está com febre";
    }

    else if (grau >= 39.6 && grau <= 41)
    {
      temp = "Cuidado, você está com febre alta!";
    }

    else if (grau <= 35)
    {
      temp = "Vai se tratar pelo amor de deus, você está com hipotermia!!";
    }

    return temp;
  }

  public string LucroOuPrejuizo (double gastos, double lucros)
  {
    string situacao = "";
    double valor = lucros - gastos;

    if (valor >= 1)
    {
      situacao = $"Muito bem, você está R$ {valor} positivo";
    }

    else if (valor < 0)
    {
      situacao = $"Poxa, você ficou R$ {valor} negativo.";
    }

    
    if (situacao.Contains("-"))
    {
      situacao = situacao.Replace("-", "");
    }

    return situacao;
  }

  public string Passou (Notas notas)
  {
    string n = "";
    double nota = (notas.Nota1 + notas.Nota2 + notas.Nota3) / 3;

    if (nota >= 5)
    {
      n = "Parabéns,você passou!";
    }

    else 
    {
      n = "Ta precisando estudar mais em, tá de recuperação";
    }

    return n;
  }

  public string PassouOuRecuperacao (Notas notas, int faltas)
  {
    string n = "";
    double nota = (notas.Nota1 + notas.Nota2 + notas.Nota3) / 3;

    if (nota >= 5 && faltas <= 25)
    {
      n = "Parabéns,você passou!";
    }

    else if (nota <= 4 && faltas >= 26)
    {
      n = "Recuperação por Nota e Falta";
    }

    else if (nota < 5)
    {
      n = "Recuperação por Nota.";
    }

    else if (faltas >= 26)
    {
      n = "Recuperação por Falta.";
    }

    return n;
  }

  public string TipoTriangulo (Triangulo triangulo)
  {
    string t = "";

    if (triangulo.LadoA == triangulo.LadoB && triangulo.LadoB == triangulo.LadoC)
    {
      t= "O triângulo é equilatero";
    }

    else if ((triangulo.LadoA == triangulo.LadoB && triangulo.LadoB != triangulo.LadoC) || (triangulo.LadoA == triangulo.LadoC && triangulo.LadoB != triangulo.LadoC) || (triangulo.LadoB == triangulo.LadoC && triangulo.LadoC != triangulo.LadoA))
    {
      t = "O triângulo é isósceles";
    }

    else if (triangulo.LadoA != triangulo.LadoB && triangulo.LadoB != triangulo.LadoC)
    {
      t= "O triângulo é escaleno";
    }

    return t;
  }

  public string IMC (Pessoa pessoa)
  {
    string ps = "";
    double calcImc = pessoa.Peso / Math.Pow(pessoa.Altura, 2); 

    if (calcImc >= 18.5 && calcImc <= 24.9)
    {
      ps = $"{pessoa.Nome}, você está normal";
    }

    else if (calcImc < 18.5)
    {
      ps = $"{pessoa.Nome}, você está abaixo do peso";
    }

    else if (calcImc >= 25 && calcImc <= 29.9)
    {
      ps = $"{pessoa.Nome}, você está abaixo em sobrepeso";
    }

    return ps;
  }
}
```

## Exercício 2 

```csharp=

class MainClass {
  public static void Main (string[] args) {
  
  PecaDomino pcd = new PecaDomino();
  pcd.LadoA = 5;
  pcd.LadoB = 3;

  PecaDomino pcd2 = new PecaDomino();
  pcd2.LadoA = 2;
  pcd2.LadoB = 3;

  Recuperacao rec = new Recuperacao ();
  rec.Email = "vitorio.trindade@gmail.com";
  rec.Telefone = "(11)94367-1261";

  Semaforo sef = new Semaforo();
  sef.LuzAmarelaAcesa = false;
  sef.LuzVerdeAcesa = true;
  sef.LuzVermelhaAcesa = false;

  TreinoFocadoB tfb = new TreinoFocadoB ();
  bool tfe1 = tfb.CorPrimaria("Verde");
  string tfe2 = tfb.CombinacaoCorPrimaria("amarelo", "vermelho" );
  string tfe3 = tfb.PrimeiroNome("Vitório Trindade Santana");
  bool tfe4 = tfb.JogadaValida(pcd, pcd2);
  string tfe5 = tfb.RecuperacaoSenha(rec);
  string tfe6 = tfb.ProximoSinal (sef);
  Console.WriteLine("A cor é primária? "+ tfe1);
  Console.WriteLine(tfe2);
  Console.WriteLine(tfe3);
  Console.WriteLine("A jogada é válida? " + tfe4);
  Console.WriteLine(tfe5);
  Console.WriteLine(tfe6);
  
  
    //A cor é primária? False
    //A cor produzida na combinação é laranja.
    //Vitório
    //A jogada é válida? True
    //Você receberá um e-mail do gmail.com para resetar a senha. Um código também foi enviado para o número com final 1261
    //O próximo sinal é amarelo.
  }
}

public class PecaDomino 
{
  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 CorPrimaria (string cor)
  {
    bool a = true;

    if (cor == "Azul" || cor == "Vermelho" || cor == "Amarelo")
    {
      a = true;
    }

    else 
    {
      a = false;
    }

    return a;
  }

  public string CombinacaoCorPrimaria (string cor1, string cor2)
  {
    string a = "";

    if ((cor1 == "vermelho" && cor2 == "amarelo") || (cor1 == "amarelo" && cor2 == "vermelho"))
    {
      a = "A cor produzida na combinação é laranja.";
    }

    else if ((cor1 == "azul" && cor2 == "amarelo") || (cor1 == "amarelo" &&  cor2 == "azul"))
    {
      a = "A cor produzida na combinação é verde.";
    }

    else if ((cor1 == "azul" && cor2 == "vermelho") || cor1 == "vermelho" && cor2 == "azul")
    {
      a = "A cor produzida na combinação é roxo.";
    }

    return a;
  }

  public string PrimeiroNome (string nome)
  {
    string nomeps = nome;

    if (nomeps.Contains(" "))
    {
      nomeps = nome.Substring(0, nome.IndexOf(" "));
    }

    else 
    {
      nomeps = nome.Substring(0);
    }

    return nomeps;
  }

  //o que é dobre?????
  //public bool DobreDomino (PecaDomino peca)
  
  public bool JogadaValida (PecaDomino peca1, PecaDomino peca2)
  {
    bool a = true;

    if ((peca1.LadoA == peca2.LadoA) || (peca1.LadoB == peca2.LadoB)|| (peca1.LadoA == peca2.LadoB) || (peca1.LadoB == peca2.LadoA))
    {
      a = true;
    }

    else 
    {
      a = false;
    }

    return a;
  }

  public string RecuperacaoSenha (Recuperacao rec)
  {
    int pot = rec.Telefone.IndexOf("-");
    int poe = rec.Email.IndexOf("@");

    string msg = $"Você receberá um e-mail do {rec.Email.Substring(poe + 1)} para resetar a senha. Um código também foi enviado para o número com final {rec.Telefone.Substring(pot + 1)}";

    return msg;

    //eu tentei tirar o ".com" da mensagem porém não resultou em êxito a minha tentativa.
  }

  public String ProximoSinal (Semaforo semaforo)
  {
    string prox = "";

    if (semaforo.LuzVermelhaAcesa == true)
    {
      prox = "O próximo sinal é verde.";
    }

    else if (semaforo.LuzVerdeAcesa == true)
    {
      prox = "O próximo sinal é amarelo.";
    }

    else if (semaforo.LuzAmarelaAcesa == true)
    {
      prox = "O próximo sinal é vermelho.";
    }

    return prox;
  } 
 
}
```

## Exercício 3 

```csharp=
using System;

class MainClass {
  public static void Main (string[] args) {
  
  	Pessoa ps = new Pessoa ();
    ps.Nome = "Vitório Trindade";
    ps.Nascimento = new DateTime(2004, 12, 26);
    ps.Cidade = "Brumado";

    TreinoFocadoC tfc = new TreinoFocadoC();

    DateTime q1 = new DateTime(2021, 6, 11);
    DateTime q2 = DateTime.Now;
    DateTime q3 = new DateTime(2004, 12, 26);

    int tfe1 = tfc.Trimestre(q1);
    string tfe2 = tfc.Mes(6);
    string tfe3 = tfc.PeriodoDia(q2);
    double tfe4 = tfc.DiasVida (q3);
    string tfe5 = tfc.QualSigno(q3);
    string tfe6 = tfc.DataPorExtenso(ps);
    Console.WriteLine("O trimestre é o: " + tfe1 + "°");
    Console.WriteLine("O mês é: " + tfe2);
    Console.WriteLine("O perído do dia é: " + tfe3);
    Console.WriteLine("O seu total dias de vida é: " + tfe4);
    Console.WriteLine("O signo é: " + tfe5);
    Console.WriteLine(tfe6);
    
    //O trimestre é o: 2°
    //O mês é: Junho
    //O perído do dia é: tarde
    //O seu total dias de vida é: 6011
    //O signo é: capricórnio.
    //Vitório Trindade você nasceu em Brumado, há 6011 dias, em uma madrugada do dia 26 de Dezembro (4° trimestre) de 2004. Seu signo é capricórnio.
 
  }
}

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 a = 0;

    if ((data.Day >= 1 && data.Month >= 1) && (data.Day <= 31 && data.Month <= 3))
    {
      a = 1;
    }

    else if ((data.Day >= 1 && data.Month >= 4) && (data.Day <= 31 && data.Month <= 6))
    {
      a = 2;
    }

    else if ((data.Day >= 1 && data.Month >= 7) && (data.Day <= 31 && data.Month <= 9))
    {
      a = 3;
    }

    else if ((data.Day >= 1 && data.Month >= 10) && (data.Day <= 31 && data.Month <= 12))
    {
      a = 4;
    }

    return a;
  }

  public string Mes (int mes)
  {
    string ms = "";

    if (mes == 1)
    {
      ms = "Janeiro";
    }

    else if (mes == 2)
    {
      ms = "Fevereiro";
    }

    else if (mes == 3)
    {
      ms = "Março";
    }

    else if (mes == 4)
    {
      ms = "Abril";
    }

    else if (mes == 5)
    {
      ms = "Maio";
    }

    else if (mes == 6)
    {
      ms = "Junho";
    }

    else if (mes == 7)
    {
      ms = "Julho";
    }

    else if (mes == 8)
    {
      ms = "Agosto";
    }

    else if (mes == 9)
    {
      ms = "Setembro";
    }

    else if (mes == 10)
    {
      ms = "Outono";
    }

    else if (mes == 11)
    {
      ms = "Novembro";
    }

    else if (mes == 12)
    {
      ms = "Dezembro";
    }

    return ms;
  }

  public string PeriodoDia (DateTime data)
  {
    string a = "";

    if (data.Hour >= 0 && data.Hour <= 6)
    {
      a = "madrugada";
    }

    else if (data.Hour >= 6 && data.Hour < 12)
    {
      a = "dia";
    }

    else if (data.Hour >= 12 && data.Hour < 19)
    {
      a = "tarde";
    }

    else if (data.Hour >= 19 && data.Hour <= 24)
    {
      a = "noite";
    }

    return a;
  }

  public double DiasVida (DateTime nascimento)
  {
    DateTime a = DateTime.Now; 
    TimeSpan dif = a - nascimento;
    double total = dif.Days;
    return total;
  }

  public string QualSigno (DateTime nascimento)
  {
    string sig = "";

    if ((nascimento.Day >= 21 && nascimento.Month == 3) || (nascimento.Day <= 20 && nascimento.Month == 4))
    {
      sig = "áries.";
    }

    else if ((nascimento.Day >= 21 && nascimento.Month == 4) || (nascimento.Day <= 20 && nascimento.Month == 5))
    {
      sig = "touro.";
    }

    else if ((nascimento.Day >= 21 && nascimento.Month == 5) || (nascimento.Day <= 20 && nascimento.Month == 6))
    {
      sig = "gêmeos.";
    }

    else if ((nascimento.Day >= 21 && nascimento.Month == 6) || (nascimento.Day <= 21 && nascimento.Month == 7))
    {
      sig = "câncer.";
    }

    else if ((nascimento.Day >= 22 && nascimento.Month == 7) || (nascimento.Day <= 22 && nascimento.Month == 8))
    {
      sig = "leão.";
    }

    else if ((nascimento.Day >= 23 && nascimento.Month == 8) || (nascimento.Day <= 22 && nascimento.Month == 9))
    {
      sig = "virgem.";
    }


    else if ((nascimento.Day >= 23 && nascimento.Month == 9) || (nascimento.Day <= 22 && nascimento.Month == 10))
    {
      sig = "libra.";
    }

    else if ((nascimento.Day >= 23 && nascimento.Month == 10) || (nascimento.Day <= 21 && nascimento.Month == 11))
    {
      sig = "escorpião.";
    }

    else if ((nascimento.Day >= 22 && nascimento.Month == 11) || (nascimento.Day <= 21 && nascimento.Month == 12))
    {
      sig = "sagitário.";
    }

    else if ((nascimento.Day >= 22 && nascimento.Month == 12) || (nascimento.Day <= 20 && nascimento.Month == 1))
    {
      sig = "capricórnio.";
    }

    else if ((nascimento.Day >= 21 && nascimento.Month == 1) || (nascimento.Day <= 19 && nascimento.Month == 2))
    {
      sig = "aquário.";
    }

    else if ((nascimento.Day >= 20 && nascimento.Month == 2) || (nascimento.Day <= 20 && nascimento.Month == 3))
    {
      sig = "peixes.";
    }

    return sig;
  }


  public string DataPorExtenso (Pessoa pessoa)
  {
    string msg = $"{pessoa.Nome} você nasceu em {pessoa.Cidade}, 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 é {QualSigno (pessoa.Nascimento)}";

    return msg;
  }
}
```