Executar um comando varias vezes sem o "for"

Pode parecer meio complicado mas vou tentar explicar o que se passa.
Eu preciso que o meu programa repita cada instrução um número “n” de vezes, mas não da mesma forma que um “for” faz. Por exemplo:

for(int i=0; i<n; i++){
    aux[n]=result[n];
}

for(int i=0; i<n; i++){
    result[n]=result[aux[n]];
}

for(int i=0; i<n; i++){
    System.out.print(result[n])
}

Nesse caso eu estou usando o for em cada instrução pois o meu programa não deve executar um loop completo por vez (todas as instruções devem ser repetidas “n” vezes, mas uma de cada vez). Existe um jeito mais fácil de programar isso pra que eu possa criar meu código todo dessa forma:

aux[n]=result[n];
result[n]=result[aux[n]];
System.out.print(result[n]);

E o meu programa saiba que n varia de zero até n?

Não seria isso, seria?

for(int i=0; i<n; i++){ aux[i]=result[i]; result[i]=result[aux[i]]; System.out.print(result[i]) }

Não, os comandos são repetidos um a um, não pode ser um loop comum. :wink:

for(int i =0; i<3*n;i++){ if( i<n ) aux[i]=result[i]; else if ( i<2*n ) result[i-n]=result[aux[i-n]]; else if ( i<3*n ) System.out.print(result[i-2*n]); }
Feio, mas funciona.

Até!

Desculpa maquiavelbona, mas a sua solução é mais complicada que a minha =P

O que eu estava pensando em fazer era criar uma classe separada que soubesse fazer cada instrução do jeito que eu quero, assim eu poderia ter um meuObjeto.Leia(aux[n], result[n]) e isso seria fácil de implementar. O problema é que eu não pretendo fazer apenas atribuições… Acho que já estou começando a ter uma ideia mas ainda não consigo enxergar bem como vai ficar. :frowning:

Por que não usa um laço while e pergunta no final da iteração
se deseja repetir todos os passos ?

[code]boolean continua = true;
while ( continua == true)
{
tarefa 1;
tarefa 2;
tarefa 3;

 atualiza continua

}[/code]

eu ainda não entendi bem o que vc quer …

Que tal assim:

[code]public class A{
public static void main (String [] args){
int [] result = { 1 , 2 , 3 , 4 , 0 };
int n = result.length;

            for(int i=0; i<n; i++){
                    System.out.println(result[result[i]]);
            }
    }

}[/code]