Solução de problema

7 respostas
C

Eu presiso de trocar o valor de duas variavel sendo que não posso criar uma terceira , alguem pode me ajudar?

ex:

int lado = 10,
alt=15;

presiso que os dados de lado va para alt e de alt va para lado , e não posso usar uma terceira variavel

7 Respostas

hodrigohamalho

tem certeza que isso é possível?

C

só deus sabe mais meu professor da faculdade quer que seija.

adriano_si
Cara é meio doido mas funciona...
public class TesteLadoAlt {
    public static void main(String[] args) {
        int lado = 10, alt = 15;

        lado = alt + lado;

        alt = lado - alt;

        lado = lado - alt;

        System.out.println("Lado: " + lado + " Altura: " + alt);
    }
}

Falows ;)

zoren

Imprime na tela, troca e depois pega ela de volta

C

valew

adriano_si

Serviu cara ?? arranjou outra forma ?? dá um Feedback aí pra gente…

T

carrijozim:
Eu preciso de trocar o valor de duas variáveis sendo que não posso criar uma terceira , alguém pode me ajudar?

ex:

int lado = 10,
alt=15;

preciso que o dado de lado vá para alt e de alt vá para lado, e não posso usar uma terceira variável

Isso é coisa de professor desocupado. A solução clássica é com XOR (^):

lado ^= alt;
alt ^= lado;
lado ^= alt;

Um exemplo.

class TesteXOR {
    public static void main(String[] args) {
        int x = 13, y = 42;
        System.out.printf ("x=%d, y=%d %n", x, y);
        x ^= y;
        y ^= x;
        x ^= y;
        System.out.printf ("x=%d, y=%d %n", x, y);
    }
}
Criado 29 de julho de 2009
Ultima resposta 29 de jul. de 2009
Respostas 7
Participantes 5