Você está aqui: C# ::: Dicas & Truques ::: Matemática e Estatística

Como resolver uma equação do segundo grau em C# - Como calcular Bhaskara em C#

Quantidade de visualizações: 1179 vezes
Como resolver uma equação do 2º grau usando C#

Nesta dica mostrarei como encontrar as raízes de uma equação quadrática, ou seja, uma equação do 2º usando a linguagem C#.

Definimos como equação do 2º grau ou equações quadráticas qualquer equação do tipo ax² + bx + c = 0 em que a, b e c são números reais e a ≠ 0. Ela recebe esse nome porque, no primeiro membro da igualdade, há um polinômio de grau dois com uma única incógnita.

Note que, dos coeficientes a, b e c, somente o a é diferente de zero, pois, caso ele fosse igual a zero, o termo ax² seria igual a zero, logo a equação se tornaria uma equação do primeiro grau: bx + c = 0.

Independentemente da ordem da equação, o coeficiente a sempre acompanha o termo x², o coeficiente b sempre acompanha o termo x, e o coeficiente c é sempre o termo independente.

Como resolver uma equação do 2º grau

Conhecemos como soluções ou raízes da equação ax² + bx + c = 0 os valores de x que fazem com que essa equação seja verdadeira. Uma equação do 2º grau pode ter no máximo dois números reais que sejam raízes dela. Para resolver equações do 2º grau completas, existem dois métodos mais comuns:

a) Fórmula de Bhaskara;
b) Soma e produto.

O primeiro método é bastante mecânico, o que faz com que muitos o prefiram. Já para utilizar o segundo, é necessário o conhecimento de múltiplos e divisores. Além disso, quando as soluções da equação são números quebrados, soma e produto não é uma alternativa boa.

Como resolver uma equação do 2º grau usando Bhaskara

Como nosso código C# vai resolver a equação quadrática usando a Fórmula de Bhaskara, o primeiro passo é encontrar o determinante. Veja:

\[\Delta =b^2-4ac\]

Nem sempre a equação possui solução real. O valor do determinante é que nos indica isso, existindo três possibilidades:

a) Se determinante > 0, então a equação possui duas soluções reais.
b) Se determinante = 0, então a equação possui uma única solução real.
c) Se determinante < 0, então a equação não possui solução real.

Encontrado o determinante, só precisamos substituir os valores, incluindo o determinante, na Fórmula de Bhaskara:

\[x = \dfrac{- b\pm\sqrt{b^2- 4ac}}{2a}\]

Vamos agora ao código C#. Nossa aplicação vai pedir para o usuário informar os valores dos três coeficientes a, b e c e, em seguida, vai apresentar as raizes da equação:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;

namespace Estudos {
  class Principal {
    static void Main(string[] args) {
      // os coeficientes
      double a, b, c;
      // as duas raizes, a imaginaria e o discriminante
      double raiz1, raiz2, imaginaria, discriminante;

      // vamos pedir para o usuário informar os valores dos coeficientes
      Console.Write("Valor do coeficiente a: ");
      a = Double.Parse(Console.ReadLine());
      Console.Write("Valor do coeficiente b: ");
      b = Double.Parse(Console.ReadLine());
      Console.Write("Valor do coeficiente c: ");
      c = Double.Parse(Console.ReadLine());

      // vamos calcular o discriminante
      discriminante = (b * b) - (4 * a * c);

      // a equação possui duas soluções reais?
      if (discriminante > 0) {
        raiz1 = (-b + Math.Sqrt(discriminante)) / (2 * a);
        raiz2 = (-b - Math.Sqrt(discriminante)) / (2 * a);
        Console.Write("Existem duas raizes: x1 = " + raiz1
          + " e x2 = " + raiz2);
      }
      // a equação possui uma única solução real?
      else if (discriminante == 0) {
        raiz1 = raiz2 = -b / (2 * a);
        Console.Write("Existem duas raizes iguais: x1 = "
          + raiz1 + " e x2 = " + raiz2);
      }
      // a equação não possui solução real?
      else if (discriminante < 0) {
        raiz1 = raiz2 = -b / (2 * a);
        imaginaria = Math.Sqrt(-discriminante) / (2 * a);
        Console.Write("Existem duas raízes complexas: x1 = " +
          raiz1 + " + " + imaginaria + " e x2 = " + raiz2
          + " - " + imaginaria);
      }
    
      Console.WriteLine("\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ao executar este código C# nós teremos o seguinte resultado:

Valor do coeficiente a: 1
Valor do coeficiente b: 2
Valor do coeficiente c: -3
Existem duas raizes: x1 = 1 e x2 = -3

Link para compartilhar na Internet ou com seus amigos:

C# ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como zerar todos os valores dos elementos de um array de inteiros em C# usando o método Clear() da classe Array

Quantidade de visualizações: 10741 vezes
Nesta dica mostrarei como é possível usar o método estático Clear() da classe Array da linguagem C# para zerarmos todos os valores de um vetor de inteiros. Note que este método altera o array original.

Veja o exemplo C# completo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      // cria e inicializa um array de inteiros
      int[] valores = {4, 69, 1, 0, 17, 23, 14};

      Console.WriteLine("Com valores originais:");

      // percorre todos os elementos originais
      for (int i = 0; i < valores.Length; i++) {
        Console.WriteLine(valores[i]);
      }

      // zera todos os elementos do array
      Array.Clear(valores, 0, valores.Length);

       Console.WriteLine("Valores zerados:");
      for (int i = 0; i < valores.Length; i++) {
        Console.WriteLine(valores[i]);
      }

      Console.WriteLine("\n\nPressione qualquer tecla para sair...");
      // pausa o programa
      Console.ReadKey();
    }
  }
}

Ao executar este código C# nós teremos o seguinte resultado:

Com valores originais:
4
69
1
0
17
23
14

Valores zerados:
0
0
0
0
0
0
0


C# ::: Dicas & Truques ::: Strings e Caracteres

Como comparar strings em C# usando o método Equals() da classe String

Quantidade de visualizações: 21718 vezes
Em várias situações nós precisamos efetuar a comparação de strings (palavras, frase e textos) na linguagem C#. Para isso podemos usar o método Equals() da classe String. Este método retorna true se as duas strings forem idênticas e false em caso contrário.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;

namespace Estudos{
  class Program{
    static void Main(string[] args) {
      string frase1 = "gosto de java e c#";
      string frase2 = "Gosto de Java e C#";

      if (frase1.Equals(frase2))
        Console.WriteLine("As duas strings são iguais");
      else
        Console.WriteLine("As duas strings são diferentes");

      Console.ReadKey();
    }
  }
}

Ao executar este código nós teremos o seguinte resultado:

As duas strings são diferentes.


C# ::: Dicas & Truques ::: Arquivos e Diretórios

Como renomear ou mover arquivos em C# usando a função Move() da classe File

Quantidade de visualizações: 16282 vezes
O método Move() da classe File é útil quando precisamos renomear ou mover arquivos. Este método recebe os caminhos e nomes antigo e novo do arquivo a ser renomeado ou movido de diretório. Veja um trecho de código no qual mostramos como renomear um arquivo texto (sem movê-lo para um diretório diferente):

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

static void Main(string[] args){
  // não esqueça
  // using System.IO;
  
  // caminho e nome atual do arquivo
  string antigo = "C:\\estudos_csharp\\arquivo.txt";
  
  // caminho e novo nome do arquivo
  string novo = "C:\\estudos_csharp\\arquivo2.txt";

  // vamos renomear o arquivo
  File.Move(antigo, novo);
  Console.WriteLine("Arquivo renomeado com sucesso.");

  Console.WriteLine("\n\nPressione uma tecla para sair...");
  Console.ReadKey();
}



Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira

Ações em estruturas: apresentação dos principais carregamentos na análise de estruturas convencionais

É exemplo de ação permanente direta:

A) Peso próprio da estrutura.

B) Vento.

C) Terremoto.

D) Deslocamentos de apoios.

E) Mobiliário.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica

Peso específico relativo

O peso específico relativo para líquidos é relacionado com o peso específico da água em condições padrão de temperatura e pressão. Sabendo que o peso específico relativo de uma substância é de 0,8, determine o seu peso específico.

A) 0,8N/m3.

B) 8N/m3.

C) 8000N/m3.

D) 0,8kg/m3.

E) 0,8m3/kg.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em JavaScript

Analise o seguinte código JavaScript

const verdadeiro = true == [];
const falso = true == ![];
document.write(verdadeiro + falso);

Qual o resultado de sua execução?

A) "true"

B) 1

C) false

D) 0

E) "false"
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fundações

Fundações profundas

A infraestrutura de fundação de qualquer empreendimento desempenha papel importante no suporte de cargas decorrentes do peso próprio da superestrutura e de sua utilização. As fundações são convencionalmente separadas em dois grandes grupos: superficiais e profundas.

Com base no que foi exposto, assinale com V (verdadeiro) ou F (falso) as proposições a seguir.

( ) Estaca escavada mecanicamente é a estaca com a qual um operador, lançando mão de um trado manual, perfura o solo. Isso é feito exclusivamente com revestimento.

( ) Estacas são elementos de fundação profunda com auxílio de ferramentas ou equipamentos. O procedimento pode ser feito por cravação à percussão, prensagem, vibração ou escavação, ou ainda de forma mista, envolvendo mais de um desses processos.

( ) O elemento que transmite a carga proveniente da superestrutura ao terreno pela resistência de ponta ou resistência do fuste, ou ainda pela combinação das duas formas, é classificado como estaca.

Assinale a alternativa que indica, de cima para baixo, a ordem correta.

A) V, V, V.

B) F, F, F.

C) V, F, V.

D) F, V, F.

E) F, V, V.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em

Dimensionamento de lajes maciças à flexão

Determinadas estruturas, como as empregadas em pavimentos de garagens de edificações residenciais, demandam o emprego de vãos maiores entre os pilares, de modo a garantir espaço para a manobra dos veículos.

A partir disso, analise as afirmativas a seguir:

I. O acréscimo de altura nas seções transversais é a solução mais empregada para aumentar a rigidez da laje e, desse modo, aumentar a capacidade desta em resistir aos esforços de flexão.

PORÉM

II. O acréscimo de altura provoca o aparecimento de sobrecargas na laje, sendo necessário proceder ao redimensionamento da estrutura, de modo a verificar se os critérios de segurança e serviço serão atendidos.

Assinale a alternativa correta:

A) As afirmações I e II são proposições verdadeiras, mas a II não justifica a I.

B) As afirmações I e II são proposições verdadeiras e a II justifica a I.

C) A afirmativa I é uma proposição verdadeira, e a II, falsa.

D) A afirmação II é uma proposição verdadeira, e a I, falsa.

E) As afirmações I e II são proposições falsas.
Verificar Resposta Estudar Cards Todas as Questões

Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 51 usuários muito felizes estudando em nosso site.