En esta entrada vamos a explicar dos métodos para realizar el intercambio de valores entre dos variables.
El primer método de intercambio utiliza una variable auxiliar y el segundo método realiza el intercambio de valores sin utilizar variable auxiliar.
El primer método de intercambio utiliza una variable auxiliar y el segundo método realiza el intercambio de valores sin utilizar variable auxiliar.
Intercambio de valores entre dos variables utilizando una variable auxiliar.
Programa para intercambiar el valor de dos variables. Los valores iniciales se leen por teclado.
Por ejemplo, suponiendo que las variables se llaman A y B, si A contiene 3 y B contiene 5, después del intercambio A contendrá 5
y B 3.
En este ejemplo, para intercambiar el valor entre dos variables utilizaremos una avariable auxiliar donde guardar el valor de una de ellas. Después veremos la forma de hacerlo sin usar una variable auxiliar para el intercambio.
Las instrucciones a realizar son:
AUX = A;
A = B;
B = AUX;
Programa completo:
/*
* Programa que lea dos variables
* numéricas A y B e
* numéricas A y B e
* intercambie sus contenidos.
*/
import java.util.*;
public class Secuenciales2_5 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A, B, AUX;
System.out.print("Introduzca valor de A: ");
A = sc.nextInt();
System.out.print("Introduzca Valor de B: ");
B = sc.nextInt();
System.out.println("Valores iniciales: A = " + A + " B = " + B);
//instrucciones para hacer el intercambio
//se utiliza una variable auxiliar
AUX = A;
A = B;
B = AUX;
System.out.println("Valores intercambiados: A = " + A + " B = " + B);
}
}
*/
import java.util.*;
public class Secuenciales2_5 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A, B, AUX;
System.out.print("Introduzca valor de A: ");
A = sc.nextInt();
System.out.print("Introduzca Valor de B: ");
B = sc.nextInt();
System.out.println("Valores iniciales: A = " + A + " B = " + B);
//instrucciones para hacer el intercambio
//se utiliza una variable auxiliar
AUX = A;
A = B;
B = AUX;
System.out.println("Valores intercambiados: A = " + A + " B = " + B);
}
}
Intercambio de valores entre dos variables sin utilizar variable auxiliar.
También se puede intercambiar el valor de dos variables sin utilizar una variable auxiliar.
En ese caso se resuelve utilizando aritmética básica:
A = A + B;
B = A - B;
A = A - B;
Si por ejemplo A = 5 y B = 3
A = 5 + 3 = 8
B = 8 - 3 = 5
A = 8 - 5 = 3
Programa completo:
import java.util.*;
public class Secuenciales2_5 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A, B, AUX;
System.out.print("Introduzca valor de A: ");
A = sc.nextInt();
System.out.print("Introduzca Valor de B: ");
B = sc.nextInt();
System.out.println("Valores iniciales: A = " + A + " B = " + B);
//instrucciones para hacer el intercambio
//sin utilizar una variable auxiliar
A = A + B;
B = A - B;
A = A - B;
System.out.println("Valores intercambiados: A = " + A + " B = " + B);
}
}
También se puede intercambiar el valor de dos variables sin utilizar una variable auxiliar.
En ese caso se resuelve utilizando aritmética básica:
A = A + B;
B = A - B;
A = A - B;
Si por ejemplo A = 5 y B = 3
A = 5 + 3 = 8
B = 8 - 3 = 5
A = 8 - 5 = 3
Programa completo:
/*
* Programa que intercambie dos variables sin auxiliar
*/import java.util.*;
public class Secuenciales2_5 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A, B, AUX;
System.out.print("Introduzca valor de A: ");
A = sc.nextInt();
System.out.print("Introduzca Valor de B: ");
B = sc.nextInt();
System.out.println("Valores iniciales: A = " + A + " B = " + B);
//instrucciones para hacer el intercambio
//sin utilizar una variable auxiliar
A = A + B;
B = A - B;
A = A - B;
System.out.println("Valores intercambiados: A = " + A + " B = " + B);
}
}
amigo ese ejercicio no me sirvio y lo hice tal cual como usd
ResponderEliminarFunciona correctamente. Asegurate declarar "import."
Eliminaralguna manera de hacer este ejercicio en DFD???
Eliminarclaro que si te dejo el link
ResponderEliminarhttp://uppix.com/f-2013_10_24_185305269c13600145c8f.jpg
muy util,... gracias
ResponderEliminaraora k retorne la inversa de un dado
ResponderEliminaralguien me puede explicar que significa intercambiar el valor entre dos variables?
ResponderEliminarsignifica que los valores de la variable 1 pasan a la variable 2 y viceversa
Eliminarhola, a pesar que no programo en java si me ayuda mucho ver ejercicios como este, podría alguien explicarme porque no lo hace cuando el valor x de la variable que quiero intercambiar es un string ??? cuando es un valor si lo hace sin problema pero no cuando es un string
ResponderEliminarHola buenas noche me podrias ayudar con un programa q desarolle matrices de 3x3
ResponderEliminarEl programa tiene q realizar paso a paso lo q se va desarollando
ResponderEliminarHola ya hice eso y me funciona bien, tengo un problema dice que el usuario ingresa u valor b mayor que a deben intercambiarsen las variables a y b yo puse a= aux, b<a y aux = b y no funciona como puedo hacer si una variable es mayor que la otra para intercambiarlas aqui esta mi codigo me he demorado 3 horas en realizarlo
ResponderEliminarpackage Fundamentos;
import java.util.Scanner;
public class Parcial {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a, b, i, AUX, suma=0, promedio;
System.out.println("Multiplos de 3 en forma decendiente");
System.out.println("");
System.out.println("Ingrese un numero ");
a = in.nextInt();
System.out.println("Ingrese otro numero");
b = in.nextInt();
AUX = a;
a = b;
b = AUX;
System.out.println("numero a: "+a+" y el numero b "+b);
i=(a/3);
System.out.println("El sistema genero: "+i+" numeros");
while (b<=a) {
System.out.println("");
a--;
if(a%3==0){
System.out.println("Los Multiplos de 3 son: "+a);
System.out.println("");
suma = suma+a;
promedio = suma/i;
System.out.println("");
System.out.println("El promedio es: "+promedio);
} else{
}
}
}
}