Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.66/29: Рейтинг темы: голосов - 29, средняя оценка - 4.66
1 / 1 / 0
Регистрация: 17.06.2011
Сообщений: 99
1

Поменять местами значение переменных

04.04.2013, 18:43. Показов 5691. Ответов 10
Метки нет (Все метки)

Задание: Поменять местами содержимое переменных А и В и высести новые значения А и В.

Я сделал так:
C#
1
2
3
4
5
6
7
8
9
double firstA, firstB, secondA, secondB;
            Console.WriteLine("Введите первоначальное значение переменной А:");
            firstA = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Введите первоначальное значение переменной B:");
            firstB = Convert.ToDouble(Console.ReadLine());
            secondA = firstA; secondB = firstB; firstA = secondB; firstB = secondA;
            Console.WriteLine("Первоначальное значение А={0}, значение B={1},
\nA стало равняться {2}, а значение В стало равно {3}", secondA, secondB, firstA, firstB);
            Console.ReadKey();
Только начал изучать язык, так что не пинайте сильно. Знаю только основы. Как-то можно сделать проще с моими знаниями?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.04.2013, 18:43
Ответы с готовыми решениями:

Даны 2 переменных, поменять значения местами.
int a = 5; int b = 7; Поменять значения местами, без дополнительных переменных. Одна из...

Поменять местами содержимое переменных A и B и вывести новые значения A и B
помогите срочно решить задачи в C# 1. Поменять местами содержимое переменных A и B и вывести новые...

Значения переменных А, В, С поменять местами так, чтобы оказалось А>=В>=С
Значения переменных А, В, С поменять местами так, чтобы оказалось А>=В>=С. Переменные А, В, С...

Значения переменных А, В, С поменять местами так, чтобы оказалось А>=В>=С
Вот задача: Значения переменных А, В, С поменять местами так, чтобы оказалось А>=В>=С. Переменные...

10
8 / 8 / 2
Регистрация: 09.11.2010
Сообщений: 69
04.04.2013, 19:24 2
Ну можно обойтись 3-мя переменными. Например A, B, C. И сделать так: C=A, A=B, B=C.
0
Неадекват
1446 / 1195 / 234
Регистрация: 02.04.2010
Сообщений: 2,730
04.04.2013, 19:58 3
Если A и B целочисленного типа (int, long), то:
C#
1
2
3
A ^= B; 
B ^= A;
A ^= B;
0
1 / 1 / 0
Регистрация: 17.06.2011
Сообщений: 99
04.04.2013, 21:03  [ТС] 4
Цитата Сообщение от freeba Посмотреть сообщение
1
2
3
A ^= B;
B ^= A;
A ^= B;
Нет, они типа double. Дробные у меня короче) Может и другой тип бы подошел, но я такой использую. А что значит "^=" ?
А действительно можно и в 3 переменных сделать..... Может еще что-то? Мне бы пригодилось. У меня следующее задание наколдовать тоже только с 6 переменными. Хочу быть готовым
0
Администратор
Эксперт .NET
9198 / 4480 / 751
Регистрация: 17.04.2012
Сообщений: 9,277
Записей в блоге: 14
04.04.2013, 21:11 5
Цитата Сообщение от opi Посмотреть сообщение
Ну можно обойтись 3-мя переменными. Например A, B, C. И сделать так: C=A, A=B, B=C.
По мне, так лучший вариант. Вот вам вариация
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
static void Swap(ref double a, ref double b) {
    double c = a;
    a = b;
    b = c;
}
 
static void Main(string[] args) {
    double A = 2d;
    double B = 20.5;
    Swap(ref A, ref B);
    Console.WriteLine(A);  // 20.5
    Console.WriteLine(B);  // 2
}
Цитата Сообщение от freeba Посмотреть сообщение
C#
1
2
3
A ^= B; 
B ^= A;
A ^= B;
На грани фантастики
0
1 / 1 / 0
Регистрация: 17.06.2011
Сообщений: 99
05.04.2013, 07:34  [ТС] 6
Цитата Сообщение от tezaurismosis Посмотреть сообщение
По мне, так лучший вариант. Вот вам вариация
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
static void Swap(ref double a, ref double b) {
    double c = a;
    a = b;
    b = c;
}
 
static void Main(string[] args) {
    double A = 2d;
    double B = 20.5;
    Swap(ref A, ref B);
    Console.WriteLine(A);  // 20.5
    Console.WriteLine(B);  // 2
}
На грани фантастики
Я так понимаю, что это 2 разных программы делающих одно и то же? Я про команду Swap не знал еще... Но учту. А что значит ref? А во второй программе что значит 2d?
0
16 / 16 / 2
Регистрация: 19.03.2013
Сообщений: 48
05.04.2013, 09:09 7
a = a + b;
b = a - b;
a = a - b;
2
Администратор
Эксперт .NET
9198 / 4480 / 751
Регистрация: 17.04.2012
Сообщений: 9,277
Записей в блоге: 14
05.04.2013, 15:20 8
Цитата Сообщение от FaraGod Посмотреть сообщение
Я так понимаю, что это 2 разных программы делающих одно и то же?
Метод Swap вызывается методом Main, который является точкой входа в приложение
Цитата Сообщение от FaraGod Посмотреть сообщение
Я про команду Swap не знал еще
Это не команда, это метод, который я только что создал. Это не надо запоминать
Цитата Сообщение от FaraGod Посмотреть сообщение
А что значит ref?
Передача переменной по ссылке
Цитата Сообщение от FaraGod Посмотреть сообщение
А во второй программе что значит 2d?
Число 2, выражаемое типом double (число с плавающей точкой двойной точностью)

Прислушайтесь: вы так не научитесь программировать, ваши знания очень фрагментированны. Все заданные вами вопросы - элементарные вещи, достаточно просто прочесть. Прочтите Шилдта или ещё какую-нибудь книгу для новичков.
0
1 / 1 / 0
Регистрация: 17.06.2011
Сообщений: 99
05.04.2013, 15:53  [ТС] 9
Цитата Сообщение от tezaurismosis Посмотреть сообщение
Прислушайтесь: вы так не научитесь программировать, ваши знания очень фрагментированны. Все заданные вами вопросы - элементарные вещи, достаточно просто прочесть. Прочтите Шилдта или ещё какую-нибудь книгу для новичков.
Я начал читать "Visual C# 2008 Базовый курс" Карли Уотсон и прочие... Там дошел до циклов странице на 100 и застрял, так как не понимал, о чем написано. Чтобы понять начал делать программы из программы Pascal ABC (если скачать там прилагаются программы дял решения), просто сам писал их на языке шарп. Что за Шилдт? Как книга называется поточнее? Находится только самоучитель по С++
0
Администратор
Эксперт .NET
9198 / 4480 / 751
Регистрация: 17.04.2012
Сообщений: 9,277
Записей в блоге: 14
05.04.2013, 16:46 10
Вот так она выглядит
Ну а проблем найти её нет
1
1 / 1 / 0
Регистрация: 17.06.2011
Сообщений: 99
05.04.2013, 16:50  [ТС] 11
Благодарю. Тему можно закрывать.
0
05.04.2013, 16:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.04.2013, 16:50

Поменять местами значения целых переменных х и у, не используя дополнительные переменные
Ребят, срочно нужна помощь. Нужно сделать программу в windows forms. Нужно использовать 2 textbox и...

Значения переменных X, Y, Z поменять местами так, чтобы они оказались упорядоченными по убыванию
Ребят, помогите плз с лабой . Вот задание : Значения переменных X, Y, Z поменять местами так,...

Поменять местами значение строки
Народ туплю... как свапнуть значение в строке: "37.497441 55.849797" на "55.849797 37.497441" ?

Первое значение матрицы поменять местами с последним
Нужно написать программу в которой матрица 3 на 3 заполняется с клавиатуры.И первое значение...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru