R - Swap two numbers
There are two common ways to swap the value of two variables:
- Swap the value of two variables using a temporary variable
- Swap the value of two variables without using temporary variable
Method 1: Swap the value of two variables using a temporary variable
In the example below, the initial value of variables x and y are 10 and 25. A temporary variable called temp is created to store the value of x and then the value of y is assigned to x. Finally, value of temp (which stores values of x) is assigned to variable y. The final value of variables x and y after swap are 25 and 10 respectively.
swap <- function(x, y) { cat("Before Swap:\n") cat("x =", x, "\n") cat("y =", y, "\n") #Swap technique temp <- x x <- y y <- temp cat("After Swap:\n") cat("x =", x, "\n") cat("y =", y, "\n") } swap(10, 25)
The above code will give the following output:
Before Swap: x = 10 y = 25 After Swap: x = 25 y = 10
Method 2: Swap the value of two variables without using temporary variable
+ operator is used to swap the value of two variables. In this method no temporary variable is used. See the example below for syntax.
swap <- function(x, y) { cat("Before Swap:\n") cat("x =", x, "\n") cat("y =", y, "\n") #Swap technique x <- x + y y <- x - y x <- x - y cat("After Swap:\n") cat("x =", x, "\n") cat("y =", y, "\n") } swap(10, 25)
The above code will give the following output:
Before Swap: x = 10 y = 25 After Swap: x = 25 y = 10
Similarly, others operators can also be used in this method. Please see the page: R - Swap two numbers without using Temporary Variable.