Calculo com divisão e multiplicação sempre retornando 0

estava fazendo uma atividade, e tive uma duvida e não consegui prossegui.
A conversão de graus Fahrenheit para centígrados é obtida pela fórmula C = 5/9 (F-32). Escreva um algoritmo que calcule e escreva uma tabela de graus centígrados em função de graus Fahrenheit que variem de 32 a 212 de 1 em 1.
esse é o problema…

este é o código.

package atividade;

public class Atividade02 {

public static void main(String[] args) {
	int c,f = 32;
	
	for(int i = f; f <= 212; f++) {		
		c = 5 / 9 * (f-32);
		
		System.out.println(f+ "          " + c );
		
	} 	
}

}
quando impresso o valor de c nao sai de 0

Isso é pq você esta definindo as variaveis como int.

5/9 é igual a 0.555555556, mas como você esta utilizando int, o Java vai arredondar o valor para 0 e 0 * qualquer número, é 0.

Sugestão: Troque de int para double

1 curtida

Sugestão: troque o título. Coisa mais sem noção “me ajude!”.

1 curtida

se não quiser me ajudar não ajuda cara, outras pessoas ajudam

obrigado, vou fazer isso

você pode colocar como float também.

1 curtida

Também, mas ai terá que fazer a conversão para float, utilizando o F no final, com double é automático.

1 curtida

@Mike ainda não funcionou

Posta como o código ficou

public static void main(String[] args) {
	double c,f = 32;
	
	for(double i = f; i <= 212; i++) {		
		c = 5 / 9 * (i-32);
		
		System.out.println(i+ "          " + c );
		
	} 	
}

}

Altera de 5 para 5.0 e de 9 para 9.0 :+1:

1 curtida

funcionou, muito obrigado!!

Todos queremos ajudar, mas o título da sua dúvida está sem noção mesmo.
Mais pessoas utilizam o fórum e podem ter dúvidas parecidas com a sua.
Por isso é importante um título que dê uma noção do problema que você está enfrentando. :wink:

Você tá errado, não adianta ficar nervoso.

Sugestão de leitura:

1 curtida

Não é isso mano. Tem que saber pedir ajuda também, seja aqui no GUJ ou no local de trabalho. Dependendo da forma, será bem mal visto.

1 curtida