Informática, perguntado por igorfrfarm, 3 meses atrás

Um professor de matemática pede a você que ajude a criar um programa que auxilie na resolução das operações em equação do segundo grau completas. Para isso ele pede que você crie um programa em que os alunos informem os 3 valores e o programa calcule a equação de segundo grau. O professor espera que o aluno tenha um entendimento claro do que está sendo solicitado e para isso ele quer que o programa solicite as variáveis da seguinte forma:

Etapa 1
Informe o valor de ‘a’
Informe o valor de ‘b’
Informe o valor de ‘c’

Etapa 2
E como resposta, após o cálculo ele espera que o programa responda:
O valor de delta é: ??????
O valor de x1 é: ??????
O valor de x2 é: ??????

Agora se o delta for negativo ele espera a seguinte resposta:
O valor de delta é: ??????
Não existem raízes reais.

Para esta atividade mapa você pode utilizar a função Math.pow(x,2) para elevar a variável ‘x’ ao quadrado, e a função Math.sqrt(x) para calcular a raiz quadrada de ‘x’. Se utilizar outras variáveis é só substituir a variável x pela sua correspondente. Importante é que você deve utilizar exceção para quando não existir uma raiz real usando o seguinte método estático para cálculo do delta

private static double calcularDelta(int a, int b, int c) throws IllegalArgumentException{
double delta = Math.pow(b,2) - 4*a*c;
if (delta<0) {
throw new IllegalArgumentException("Delta é: "+delta+"\nNão existem raízes reais.");
}
return delta;
}

​Lembrando que o cálculo do x1 e x2 pode ser realizado pelas fórmulas:
double x1 = (-b + Math.sqrt(delta)) / (2 * a);
double x2 = (-b - Math.sqrt(delta)) / (2 * a);

Soluções para a tarefa

Respondido por vikttorv
3

Lendo os valores a, b e c da equação do segundo grau, vamos calcular delta fazendo (Math.pow(b,2) - (4*a*c)) e então aplicar seu resultado na fórmua de Bhaskara fazendo (-b+Math.sqrt(delta))/2a e (-b + Math.sqrt(delta))/2a. Caso delta seja negativo, sinalizar exceção.

Etapa 1:

Pelo exemplo de código abaixo, fica claro que a linguagem de programação utilizada é C. Logo, nesta primeira etapa, apenas realizaremos a leitura dos valores da equação quadrática utilizando a função printf para exibir o texto informativo para o usuário e utilizando a função scanf para ler o valor. Lembrando que como os valores da equação são inteiros de acordo com o enunciado, devemos declarar as variáveis como do tipo int, com isso o código do scanf utilizará %d. Abaixo o exemplo da declaração e da leitura:

public int a,b,c;

printf("Informe o valor de 'a'");

scanf("%d", &a);

Etapa 2:

Agora, com os valores da equação basta seguir para o cálculo de delta e sua condição de erro, que já está definida no enunciado. Logo após podemos calcular diretamente x1 e x2 pelas fórmulas que também estão definidas no enunciado. Por fim, utilizaremos a função printf para exibir os valores conforme pedido, lembrando que por se tratarem de valores do tipo float, utilizaremos %f na função. Por exemplo:

printf("O valor de delta é: %f", delta);

Para finalizar o programa, basta montar todos os blocos desenvolvidos na ordem correta dentro da função main, definida como corpo principal em C. Um esboço seria:

int main(){

   public double delta,x1,x2;

   public int a,b,c;

   Inserir aqui declaração da função de calcular delta

   printf("Informe o valor de 'a'");

   scanf("%f", &a);

   Inserir a leitura de b e c conforme o exemplo

   delta = calcularDelta(a, b, c);

   x1 = (-b + Math.sqrt(delta)) / (2 * a);

   x2 = (-b - Math.sqrt(delta)) / (2 * a);

   Inserir a impressão das variáveis na tela como exemplo

}

Saiba mais sobre linguagem de programação C em:

https://brainly.com.br/tarefa/19010361

#SPJ1


DeilsonADS: Eu não consegui fazer nada...to meio desesperado, ja que tenho que entregar essa atividade até sexta feira...
novaourora: Já é um caminho!
luizgomes77777: segui exatamente esse fluxo para montar minha resposta e está correto, se conseguiram fazer a AE1 dessa cadeira da pra fazer essa é tranquilo, até pq o resposta já está praticamente dada, só precisa montar.
victorhugogomes7: sem tempo pra montar pq estou no trabalho. so copiem e colem o codigo aki.
Perguntas interessantes