Mandar um cafézinho para o programador:


Me ajude a transformar café em código!

Inverter o valor de duas variáveis em C++


  • 03. Faça um programa que pede dois inteiro e armazene em duas variáveis. Em seguida, troque o valor das variáveis e exiba na tela

Exercício do tutorial de testes condicionais.

Como trocar o valor de dois números em C++

Vamos pedir ao usuário dois números e armazenar nas variáveis num1 e num2.

Agora vamos trocar, inverter esses valores.
A primeira variável recebe o valor da segunda:

  • num1 = num2;


Agora a segunda recebe o valor da primeira:

  • num2 = num1;


Simples e fácil, não?
Não. Tá errado!

A primeira operação ta ok, agora o valor de num1 é o de num2.
Porém, quando fazemos a segunda variável pegar o valor da primeira, esse valor da primeira mudou, não é mais aquele original, ele se perdeu, agora o que tem na primeira variável é o valor da segunda.

O que temos que fazer é armazenar o valor inicial dessa primeira variável.
Vamos guardar numa variável auxilar, a aux.
aux = num1;

Pronto, agora fazemos:

  • num1 = num2;


E agora como pegamos o valor antigo de num1? Só pegar da aux:

  • num2 = aux;


Prontinho, valores invertidos!

Invertendo o valor de duas variáveis em C++


Veja como fica nosso código:

#include <iostream>
using namespace std;

int main()
{
    int num1, num2, aux;

    cout << "Numero 1: ";
    cin >> num1;

    cout << "Numero 2: ";
    cin >> num2;

    cout << "\nPrimeiro valor: " << num1 <<endl;
    cout << "Segundo  valor: " << num2 <<endl;
    cout << "\nInvertendo...\n";

    aux = num1;
    num1 = num2;
    num2 = aux;

    cout << "Primeiro numero: " << num1 <<endl;
    cout << "Segundo  numero: " << num2 <<endl;

    return 0;
}

2 comentários:

  1. mas como inverter os valores sem utilizar uma terceira variável? só com operação matemática Adição e subtração

    ResponderExcluir
    Respostas
    1. Some ambos os valores e armazene na primeira variável
      num1 = num1 + num2;
      Agora subtraia da soma, que tá em num1 agora, o valor de num2 e armazene em num2:
      num2 = num1 - num2;
      Por último subtraia o valor de num2 de num1 e armazene em num1:
      num1 = num1 - num2;

      Excluir

Ajude o C++ Progressivo

Que tal apoiar e fazer crescer o ensino da programação no Brasil ?

Ajudar nosso país a crescer e se desenvolver cada vez mais, tecnologicamente?

Clica abaixo pra saber mais!

Apoiar o Projeto Progressivo