Exercícios Resolvidos de Programação: Algoritmos e a Janela New script.

Ver Teoria

Enunciado

Dado que a equação de segundo grau é dada por:

a x 2 + b * x + c = 0

Elabore um algoritmo para a solução da equação de segundo grau que unicamente depende dos coeficientes a,b e c da equação e além disso verifique e mostre se as soluções são reais, complexas ou iguais.

Obs: Represente na forma escrita e também na forma de diagrama de blocos. Quando falo em mostrar é imprimir como uma saída de dados o tipo da solução.

Passo 1

A ideia da questão é mostrar como pensar para a realização de algoritmos mais complexos e para a criação de programas mais avançados.

O problema em si pede a elaboração de uma rotina (do passo a passo) para o cálculo das soluções da equação de segundo grau, ou seja, um algoritmo.

Esse problema está intimamente relacionado com os alunos e esse passo a passo é realizado quase de imediato sem que os mesmos percebam, então o que vamos fazer aqui é apenas colocar no papel o que você faz toda vez que resolve uma equação de segundo grau.

Passo 2

Para a resolução de uma equação de segundo grau, precisamos de 2 equações:

∆ = b 2 - 4 a c

x = - b ± ∆ 2 a

Onde a,b,c são chamados de coeficientes da equação e o ∆   é o discriminante da equação de segundo grau.

O discriminante tem um papel fundamental para nosso algoritmo, pois ele é o parâmetro que vai qualificar qual é o tipo das nossas soluções.

  • Se ∆ < 0 Temos raízes complexas conjugadas
  • Se ∆ = 0 Temos duas raízes iguais
  • Se ∆ > 0   Temos duas raízes Reais distintas

Sendo assim vamos começar a escrever o algoritmo.

  1. Entrada de dados: a,b,c
  2. Cálculo do discriminante: ∆ = b 2 - 4 a c
  3. 2.1 – Se ∆ < 0

    imprima “Temos raízes complexas conjugadas”

    2.2- Se ∆ = 0

    imprima”Temos duas raízes iguais”

    2.3 – Se ∆ > 0  

    imprima”Temos duas raízes Reais distintas”

  4. Cálculo do x 1 = - b + ∆ 2 a e x 2 = - b - ∆ 2 a
  5. Saída de dados X 1 e X 2 ,

Passo 3

Utilizando o algoritmo desenvolvido no passo 2 é possível gerar o diagrama de blocos abaixo:

Resposta

Ei, a resposta está no passo a passo :)