Введение в подкачку в C #
Поскольку мы уже знакомы с C #, объявленным как язык программирования C Sharp, мы бы непосредственно поняли, что такое свопинг в C #. Слово Swapping дает нам то же значение, что и слово в словаре английского языка. Все дело в обмене ценностями. Давайте разберемся, как мы можем сделать эту технику, используя C #.
Обмен 2 номера
- При обмене значениями между двумя разными переменными мы можем сделать это двумя способами. Первый - использование третьей переменной, также известной как временная переменная, а второй - без использования какой-либо другой переменной.
Давайте проверим ниже, как мы можем это сделать, используя третью переменную.
Код:using System;
class First (
static void Main() (
int a=75, b=84, t;
t=a;
a=b;
b=t;
Console.WriteLine("Values after swapping:");
Console.WriteLine("a is :"+a);
Console.WriteLine("b is :"+b);
)
)
В приведенной выше простой программе мы взяли два целочисленных значения и поменяли их местами с помощью 3- й временной переменной.
Выход:
- Теперь давайте посмотрим, как мы можем получить значения переменных через пользовательский ввод.
Код:width="638">using System;
class First (
static void Main() (
string a, b;
int temp, c, d;
Console.Write("Enter value for a :");
a = Console.ReadLine();
c = Convert.ToInt32(a);
Console.WriteLine("A's value is (0)", c);
Console.Write("Enter value for b : ");
b = Console.ReadLine();
d = Convert.ToInt32(b);
Console.WriteLine("B's value is (0)", d);
temp=c;
c=d;
d=temp;
Console.WriteLine("Values after swapping are:");
Console.WriteLine("a is : "+c);
Console.WriteLine("b is : "+d);
)
)
Здесь мы использовали метод ReadLine для чтения значений ввода пользователя. И затем мы преобразовали это значение в целое число, иначе оно будет считываться как значения ASCII.
Выход:
Попробуйте удалить функцию ToInt32 и проверьте, как работает программа.
- Теперь давайте посмотрим на обмен двух значений через второй метод без использования третьей переменной:
Код:
width="638">using System;
class First (
static void Main() (
int a=85, b=58;
a=a+b;
b=ab;
a=ab;
Console.WriteLine("Values after swapping :");
Console.WriteLine("a is "+a);
Console.WriteLine("b is "+b);
)
)
Выход:
Как и в предыдущем упражнении, можете ли вы попробовать поменять местами две переменные, не используя третью переменную, используя введенные пользователем значения?
Обмен 3 номера
- После успешного выполнения замены 2 номеров, давайте теперь перейдем к замене 3 номеров.
Код:
using System;
class First (
static void Main() (
int a=4, b=5, c=6;
//swapping
a=a+b+c;
Console.WriteLine("After First step A value is "+a);
b=a-(b+c);
Console.WriteLine("After Second step B value is "+b);
c=a-(b+c);
Console.WriteLine("After Third step C value is "+c);
a=a-(b+c);
Console.WriteLine("After Fourth step A value is "+a);
Console.WriteLine("Values after swapping are:");
Console.WriteLine("a is "+a);
Console.WriteLine("b is "+b);
Console.WriteLine("c is "+c);
)
)
Поскольку мы уже познакомились с техникой обмена номерами без использования третьей переменной, мы использовали тот же метод для замены 3 чисел. Для ясности, мы сохраняли операторы вывода консоли после каждого шага и принимали небольшие значения для переменных, чтобы мы могли понять реальные математические вычисления, которые обрабатываются легче.
Выход:
- Теперь, мы должны попробовать использовать введенные пользователем значения?
Код:using System;
clas1s First (
static void Main() (
string a, b, c;
int x, y, z;
Console.Write("Enter value for x :");
a = Console.ReadLine();
x = Convert.ToInt32(a);
Console.WriteLine("X's value is (0)", x);
Console.Write("Enter value for y : ");
b = Console.ReadLine();
y = Convert.ToInt32(b);
Console.WriteLine("Y's value is (0)", y);
Console.Write("Enter value for z : ");
c = Console.ReadLine();
z = Convert.ToInt32(c);
Console.WriteLine("Z's value is (0)", z);
x=x+y+z;
Console.WriteLine("After Fourth step X value is "+x);
y=x-(y+z);
Console.WriteLine("After Second step Y value is "+y);
z=x-(y+z);
Console.WriteLine("After Third step Z value is "+z);
x=x-(y+z);
Console.WriteLine("After Fourth step X value is "+x);
Console.WriteLine("Values after swapping are:");
Console.WriteLine("X is : "+x);
Console.WriteLine("Y is : "+y);
Console.WriteLine("Z is : "+z);
)
)
Здесь мы можем наблюдать одну вещь: логика всегда одна и та же. Мы просто берем динамические значения вместо жестко закодированных значений для замены.
Выход:
Как вы уже убедились, процесс обмена происходит следующим образом:
- Значение х дается Y
- Значение у дано Z
- Значение z дано X
Идеально верно? Итак, можем ли мы попробовать каким-либо другим способом присвоить значения? Да конечно.
- Все очень просто, нам просто нужно присвоить значения Y и Z одно за другим или значение Y, чтобы взять сумму, и снова можно изменить порядок элементов. Давайте посмотрим ниже.
Код:width="638">using System;
class First (
static void Main() (
string a, b, c;
int x, y, z;
Console.Write("Enter value for x :");
a = Console.ReadLine();
x = Convert.ToInt32(a);
Console.WriteLine("X's value is (0)", x);
Console.Write("Enter value for y : ");
b = Console.ReadLine();
y = Convert.ToInt32(b);
Console.WriteLine("Y's value is (0)", y);
Console.Write("Enter value for z : ");
c = Console.ReadLine();
z = Convert.ToInt32(c);
Console.WriteLine("Z's value is (0)", z);
x=x+y+z;
Console.WriteLine("After Fourth step X value is "+x);
z=x-(y+z);
Console.WriteLine("After Second step Z value is "+z);
y=x-(y+z);
Console.WriteLine("After Third step Y value is "+y);
x=x-(y+z);
Console.WriteLine("After Fourth step X value is "+x);
Console.WriteLine("Values after swapping are:");
Console.WriteLine("X is : "+x);
Console.WriteLine("Y is : "+y);
Console.WriteLine("Z is : "+z);
)
)
Единственная разница между вышеперечисленными программами - выделенная часть.
Выход:
Как отмечалось выше, результат обмена был изменен на:
- Значение х назначено Z
- Значение y присваивается X
- Значение z присваивается Y
Мы можем попробовать поменять три числа другими способами. Итак, в качестве упражнения вы можете попробовать обменять 3 переменные, используя четвертую временную переменную?
Вывод - свопинг в C #
Здесь мы успешно применили различные методы обмена, используя язык программирования C # для обеих переменных и трех переменных. Удачи в изучении C #.
Рекомендуемые статьи
Это руководство по обмену в C #. Здесь мы обсуждаем введение, обмен номера 2, обмен номерами 3 с кодами и выходами. Вы также можете просмотреть другие наши статьи, чтобы узнать больше-
- Переменные в C #
- Обмен в Python
- Цикл C # do-while
- Команды C #
- Введение в обмен в C
- Руководство по обмену в Java
- Обзор обмена в C ++
- Обмен в PHP
- Словарь в Python