For(help!)

public class Exerc_01
 {
 public static void main(String args[])
  {
  	int somainpar,somapar;
 
  	somainpar=0;
  	somapar=0;
  	 for(int i=0; i<=10; i++)
  	   {
  	   	i %= 2;
  	   	if(i == 0)
  	   	 {
  	   	  somapar += i;
  	   	 }
  	   	else
  	   	 {
  	   	  somainpar += i;
  	   	 }
  
  	   }
  	  System.out.println("A soma dos numeros pares e: " + somapar);
  	  System.out.println("A soma dos numeros impares e: " + somainpar);
  	  System.exit(0);
  	}
 } 	   	  	   		

o que está de errado no codigo acima?
grato pela explicação.

[size=“11”]
[color=“red”]

  • Editado: Lembre-se de usar BBCode em seus códigos para mantê-los identados e mais legíveis para outros usuários - Matheus[/color][/size] :joia:

gollun,

Verifique o código abaixo:

int somainpar,somapar, resto; // vc precisa pegar o resto da divisão para saber se é par ou não

 somainpar=0; 
 somapar=0; 
 resto = 0;

for(int i=0; i<=10; i++) 
{ 
          resto= i % 2; 
          if(resto == 0) 
          { 
               somapar += i; 
           } 
            else 
          { 
               somainpar += i; 
          } 
}

Falou!!!

[size=“11”]
[color=“red”]

  • Editado: Lembre-se de usar BBCode em seus códigos para mantê-los identados e mais legíveis para outros usuários - Matheus[/color][/size] :joia:

O problema do codigo eh que o valor da variavel utilizada como indice do for esta sendo alterado dentro do bloco do for , o que pode gerar comportamentos indesejados.