Elabore un algoritmo que lea las variables A y B y pase el valor de A a B y de B a A. Sin usar más variables.
#include <iostream>
//Se incluye la clase Pasar para despues llamar a sus metodos
#include "Pasar.h"
using namespace std;
int main(void)
{
// se crea un objeto de la clase Pasar (Instanciaciación)
Pasar *obj = new Pasar();
int n1, n2; // se definen las variables n1 y n2 de tipo entero
// se le pide al usuario que digite el valor de "A".
cout << "Digite el valor de A" << endl;
cin >> n1; //se guarda el valor que se digito en la variable n1.
// se encapsula la variable n1.
obj->setA(n1);
// se le pide al usuario que digite el valor de "B".
cout << "Digite el valord e B" << endl;
cin >> n2; // se guarda el valor que se digito en la variable n2.
// se encapsula la variable n2.
obj->setB(n2);
// se llama al metodo "pasarNumero()".
obj->pasarNumero();
// se muestran los valores cambiados.
cout << "El nuevo valor de A es: " << obj->getA() << endl;
cout << "El nuevo valor de B es: " << obj->getB() << endl;
}
#ifndef PASAR_H
#define PASAR_H
class Pasar
{
public:
Pasar();
virtual ~Pasar();
// se definen los metodos publicos:
void pasarNumero();
// se definen los metodos Setters y Getters de los atributos "a" y "b".
void setA(int val);
int getA();
void setB(int val);
int getB();
protected:
private:
// se definen los atributos privados:
int a; // "a" de tipo entero
int b; // "b" de tipo entero
};
#endif // PASAR_H
#include "Pasar.h"
Pasar::Pasar()
{
//ctor
}
Pasar::~Pasar()
{
//dtor
}
void Pasar::pasarNumero()
{
// supongamos que a = 5 y b = 2.
a = a + b;//A la variable a(5) se le asigna a(5) + b(2) = 7.
b = a - b;//A la variable b(2) se le asigna a(7) - b(2) = 5.
a = a - b;//A la variable a(7) se le asigna a(7) - b(5) = 2.
}
void Pasar::setA(int val)
{
// se le asigna val a la variable a.
a = val;
}
int Pasar::getA()
{
// se reetorna el valor de a.
return a;
}
void Pasar::setB(int val)
{
// se le asigna val a la variable b.
b = val;
}
int Pasar::getB()
{
// se retorna el valor de b.
return b;
}
//Se importa paquete JOptionPane para dibujar un cuadro de dialogo en pantalla
//que muestre información o para llenar información.
import javax.swing.JOptionPane;
public class Main
{
public static void main(String[] args)
{
// se crea un objeto de la clase Pasar (Instanciaciación)
Pasar obj = new Pasar();
int n1, n2; // se definen las variables n1 y n2 de tipo entero
// se le pide al usuario que digite el valor de A y se guarda en la variable n1 .
n1 = Integer.parseInt(JOptionPane.showInputDialog("Digite el valor de A"));
// se encapsula la variable n1 .
obj.setA(n1);
// se le pide al usuario que digite el valor de B y se guarda en la variable n2 .
n2 = Integer.parseInt(JOptionPane.showInputDialog("Digite el valor de B"));
// se encapsula la variable n2 .
obj.setB(n2);
// se llama al metodo pasarNumero() .
obj.pasarNumero();
// se muestran los valores cambiados.
JOptionPane.showMessageDialog(null, "El nuevo valor de A es: " + obj.getA());
JOptionPane.showMessageDialog(null, "El nuevo valor de B es: " + obj.getB());
}
}
public class Pasar
{
// declaramos dos variables de tipo entero: a y b
private int a;
private int b;
public void pasarNumero()
{
// supongamos que a = 5 y b = 2.
a = a + b; // a la variable a(5) se le asigna a(5) + b(2) = 7.
b = a - b; // a la variable b(2) se le asigna a(7) - b(2) = 5.
a = a - b; // a la variable a(7) se le asigna a(7) - b(5) = 2.
}
public void setA(int val)
{
// se le asigna el valor de val a la variable a .
a = val;
}
public int getA()
{
// se retorna el valor de a .
return a;
}
public void setB(int val)
{
// se le asigna el valor de val a la variable b .
b = val;
}
public int getB()
{
// se retorna el valor de b .
return b;
}
}