Duvida na compilação do programa

5 respostas
R

Bom dia, galera

a dúvida que tenho é a seguinte.

fiz um programinha para praticar a lógica…que pagasse os numeros pares de 1 a 20 e fizesse a som.

package Pacote3;

public class ProgramaD {

public static void main(String[] args) {

int contador=1;

int num=0;
while(contador<=20){
		if(contador%2==0)		
		
		System.out.print((num = num + contador) + " ");

		contador++;

	}
}

}

2 6 12 20 30 42 56 72 90 110

Legal funcionou conforme o esperado.

Agora galera que vem a dúvida.

Desta forma aqui em baixo eu não estaria fazendo da mesma forma?

pq estaria duplicando os numeros???

package Pacote3;

public class ProgramaD {

public static void main(String[] args) {

int contador=1;

int num=0;
while(contador<=20){
		if(contador%2==0)		
		
			num = num + contador;
			
		System.out.print(num + " ");

		contador++;

	}
}

}

0 2 2 6 6 12 12 20 20 30 30 42 42 56 56 72 72 90 90 110

Bom galera pode até parecer idiota a pregunta mais ja olhei esse código um monte de vez e não consegui descobri oq é…

caso alguem consiga me ajudar agradeço…

Obrigado

5 Respostas

yoshikichi
Rotiv:
Bom dia, galera

a dúvida que tenho é a seguinte.

fiz um programinha para praticar a lógica...que pagasse os numeros pares de 1 a 20 e fizesse a som.

package Pacote3;

public class ProgramaD {
public static void main(String[] args) {
int contador=1;
int num=0;

while(contador<=20){
if(contador%2==0)

System.out.print((num = num + contador) + " ");

contador++;

}
}
}

2 6 12 20 30 42 56 72 90 110

Legal funcionou conforme o esperado.

Agora galera que vem a dúvida.

Desta forma aqui em baixo eu não estaria fazendo da mesma forma?

pq estaria duplicando os numeros????

package Pacote3;

public class ProgramaD {
public static void main(String[] args) {
int contador=1;
int num=0;

while(contador<=20){
if(contador%2==0)

num = num + contador;

System.out.print(num + " ");

contador++;

}
}
}

0 2 2 6 6 12 12 20 20 30 30 42 42 56 56 72 72 90 90 110

Bom galera pode até parecer idiota a pregunta mais ja olhei esse código um monte de vez e não consegui descobri oq é...

caso alguem consiga me ajudar agradeço..

Obrigado


Qndo vc omite a chaves de um if, else, while etc...
o corpo pertencente a condição será apenas a proxima linha.
Como vc colocou a operação dentro do seu system.ou no primeiro exemplo, então tanto a sua operação de soma e o print fazem parte do seu if.
No segundo exemplo apenas aa sua operação de soma é pertencente ao if.
O print não está presente no if.

Com o código fica mais claro:
if(contador%2==0)		
			
				num = num + contador;
				
			System.out.print(num + " ");

if(contador%2==0){		
			
				num = num + contador;
				
			System.out.print(num + " ");
}
yoshikichi

só uma coisa, posta seus códigos entre a tag code do editor do guj.
abs

Anime

Oi,

Coloque seu código entre as tags code,vai em editar para arrumar… :wink:

No segundo vc criou um acumulador (num=num+contador)

Por que vc coloca (contador%2) , nunca vi isso… :roll: :oops:

R

yoshikichi

Obrigado, deu certo, pode deixar a proxima duvida vou mandar o codigo formatado.

Anime

quando colocamos o “%” é q queremos saber o resto de uma divisão.

no caso do meu programa eu queria saber se o numero era par ou Impar.

Obrigado pela dica

Anime

Rotiv:
yoshikichi

Obrigado, deu certo, pode deixar a proxima duvida vou mandar o codigo formatado.

Anime

quando colocamos o “%” é q queremos saber o resto de uma divisão.

no caso do meu programa eu queria saber se o numero era par ou Impar.

Obrigado pela dica

ah sim,é que nunca utilizei dessa forma… :wink:

Por nada…Obrigada,pela informação… :stuck_out_tongue:

Criado 18 de janeiro de 2011
Ultima resposta 18 de jan. de 2011
Respostas 5
Participantes 3