Equação do 2º grau

Olá, pessoal…
Estou fazendo um programa em Java que calcula o delta da equação do 2º grau.
Quando eu uso o tipo de dado double fica dando erro. Alguém sabe dizer por quê?
Porém quando eu uso int o programa roda beleza.


import java.util.Scanner;

public class Apagar {

	public static void main ( String args[] ){


	Scanner input = new Scanner(System.in);

	int a;

	int b;

	int c;

	int delta;

	System.out.println("Escreva o valor de A:");
	a = input.nextInt();
	
	System.out.println("Escreva o valor de B:");
	b = input.nextInt();

	System.out.println("Escreva o valor de C:");
	c = input.nextInt();

	delta = ((b*b)-(4*a*c));
	
	System.out.printf("O valor do %d  \n eh: ",delta);
	
	}
}

Não seria pq vc declarou todas as variaveis numericas como int!!!..
Capitura os numeros com int…

tenta mudar o tipo das variaveis, capturar double (ou float) ou ae quizer capturar int não esqueca de converte-lo ( acho que o nome técnioco é “cast” ou algo parecido)

Esse exemplo é com int. Esse roda…
Mas quando eu mudo para double ele não compila.

a = input.nextInt(); 

Vc tentou usar o a = input.nextDouble() ?

Mas, é justamente por isso, o Jav não converte as variaveis “automaticamente” ou vc faz isso ou não usa o que não declarou…

Então mude a declaração das suas variáveis. E passe-as para double.

Uma outra coisa que eu usava na faculdade era multiplicar o vamor Int recebido por 1.0

double delta;

delta = input.nextDouble();

System.out.printf("O valor do %f eh: " , delta); // %f no lugar de %d

att,

Eu mudei gente, mesmo assim não roda…

Foi isso que eu disse antes.

Eu mando o código de como é eu eu tô fazendo com double e não roda…

[code]import java.util.Scanner;

public class Apagar {

public static void main ( String args[] ){


Scanner input = new Scanner(System.in);

double a;

double b;

double c;

double delta;

System.out.println("Escreva o valor de A:");
a = input.nextDouble();

System.out.println("Escreva o valor de B:");
b = input.nextDouble();

System.out.println("Escreva o valor de C:");
c = input.nextDouble();

delta = ((b*b)-(4*a*c));

System.out.printf("O valor do %d  \n eh: ",delta);

}

}
[/code]

Poste o erro, por favor.

[quote=pedruhenrik][code]
double delta;

delta = input.nextDouble();

System.out.printf("O valor do %f eh: " , delta); // %f no lugar de %d
[/code]

att,[/quote]

Ahhhh…
Era isso que o Pedro falou // %f no lugar de %d

Obrigado a todos…

[]'s

Seria bom também especificar alguma precisão, ou corre o risco dele exibir em notação científica. Por exemplo, para 2 casas depois da vírgula:

System.out.printf("O valor do %.2f eh: " , delta);

Galera, foi resolvido meu problema já.

Obrigado!

Boa noite, preciso resolver uma equação do segundo grau a partir de :

public int equacao

as instruções que meu professor me deu foram:

y= ax2 + bx + c =0

calcula (a,b,c) {

return valor y
}

To perdida, se alguém puder me ajudar.