Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.94
Чеченец
1 / 1 / 0
Регистрация: 14.11.2012
Сообщений: 37
#1

Поменять местами значения целых переменных A и B - C++

14.04.2013, 16:53. Просмотров 2751. Ответов 16
Метки нет (Все метки)

Поменять местами значения целых переменных. А и B, не используя дополнительные переменные.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2013, 16:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поменять местами значения целых переменных A и B (C++):

Поменять местами значения целых переменных х и у не используя дополнительных переменных - C++
Знаю, что это очень простая задача, но никак не могу сделать, пожалуйста помогите!!! Поменять местами значения целых переменных х и у не...

Поменять местами значения целых переменных - C++
1.Поменять местами значения целых переменных Х, Y, Z таким образом, чтобы оказалось X\geq Y\geq Z.

Поменять местами значения целых переменных А и В, не используя дополнительные переменные - C++
Задача 9. Поменять местами значения целых пере¬менных А и В, не используя дополнительные переменные. Задача 39. Во введенной строке...

Значения переменных X, Y, Z поменять местами так - C++
Значения переменных X, Y, Z поменять местами так, чтобы они оказались упорядоченными по убыванию. Подскажите пожалуйста просто я только...

Поменять местами значения вещественных переменных - C++
Поменяйте местами значения вещественных переменных x и y

Поменять местами значения 2 переменных с использованием указателей - C++
Здравствуйте, что-то недопонимаю.... # include <iostream> using namespace std; //3.Используя указатели и оператор разыменования, ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,402
Завершенные тесты: 1
14.04.2013, 16:57 #2
Надо поменять значение переменных местами
Maxim1923
2 / 2 / 0
Регистрация: 19.05.2012
Сообщений: 13
14.04.2013, 16:57 #3
A = A xor B;
B = B xor A;
A = A xor B;
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,402
Завершенные тесты: 1
14.04.2013, 17:10 #4

Не по теме:

Вот так, дай палец - руку по локоть отгрызут


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream.h>
 
int main()
{
   int a, b;
 
   cout << "Enter number a:";
   cin >> a;
   cout << "Enter number b:";
   cin >> b;
   cout << "Inserted numbers: a - " << a << ", b - " << b << endl;
   b = b ^ a;
   a = a ^ b;
   b = b ^ a;
   cout << "Numbers after exchange: a - " << a << ", b - " << b << endl;
 
   system("pause");
 
   return 0;
}
Чеченец
1 / 1 / 0
Регистрация: 14.11.2012
Сообщений: 37
14.04.2013, 17:56  [ТС] #5
Огромное спасибо вам.
hofmn
Helter Skelter
61 / 61 / 1
Регистрация: 19.09.2012
Сообщений: 133
01.05.2013, 13:33 #6
C++
1
2
3
4
5
6
void swap (int a, int b)
{
    a += b;
    b = a - b;
    a -= b;
}
Somebody
2788 / 1602 / 145
Регистрация: 03.12.2007
Сообщений: 4,193
Завершенные тесты: 1
01.05.2013, 16:12 #7
C++
1
a ^= b ^= a ^= b;
Bend3r
149 / 136 / 18
Регистрация: 29.07.2012
Сообщений: 709
01.05.2013, 16:18 #8
C++
1
2
3
tmp = a;
a = b;
b = tmp;
hofmn
Helter Skelter
61 / 61 / 1
Регистрация: 19.09.2012
Сообщений: 133
01.05.2013, 21:16 #9
Цитата Сообщение от Bend3r Посмотреть сообщение
C++
1
2
3
tmp = a;
a = b;
b = tmp;
Сказано ведь: "без дополнительных переменных".
Цитата Сообщение от Чеченец Посмотреть сообщение
Пожалуйста сделайте программу.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
int main()
{
    int a = 42, b = 24;
 
    a += b;
    b = a - b;
    a -= b;
 
    std::cout << "a = " << a << ", b = " << b << std::endl;
 
    return 0;
}
__Nevidimk@__
Сообщений: n/a
01.05.2013, 21:28 #10
можно вот так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <algorithm>
 
using namespace std;
 
int main()
{
  int a = 7 , b = 5;
  
  swap(a,b);
  
  cout << a << endl << b << endl;
  system("pause");
  return 0;    
}
Чеченец
1 / 1 / 0
Регистрация: 14.11.2012
Сообщений: 37
21.05.2013, 18:42  [ТС] #11
Я незнаю почему выдает ошибка в программе. помогите братья
Поменять местами значения целых переменных A и B, не используя дополнительные переменные.


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <algorithm>
 
using namespace std;
 
int main()
{
  int a = 7 , b = 5;
  
  swap(a,b);
  
  cout << a << endl << b << endl;
  system("pause");
  return 0;    
}
Вложения
Тип файла: rar 3.rar (270 байт, 2 просмотров)
Croessmah
Модератор
Эксперт CЭксперт С++
13147 / 7410 / 830
Регистрация: 27.09.2012
Сообщений: 18,243
Записей в блоге: 3
Завершенные тесты: 1
21.05.2013, 18:51 #12
какую ошибку выдает и где?
Чеченец
1 / 1 / 0
Регистрация: 14.11.2012
Сообщений: 37
21.05.2013, 19:03  [ТС] #13
РАЗНЫЕ ОШИБКИ ПРОГРАММЕ
ZaMaZaN4iK
Мой лучший друг-отладчик!
163 / 163 / 9
Регистрация: 24.06.2012
Сообщений: 662
Записей в блоге: 5
Завершенные тесты: 1
21.05.2013, 19:42 #14
Чеченец, во-первых, swap() внутри себя создает дополнительные переменные, так что он наврядли он подходит.Во-вторых, ваш код у меня прекрасно компилируетсяи работает (dev-C++ и MSVS 2010).

А если надо без доп переменных, то можно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <algorithm>
 
using namespace std;
 
int main()
{
   int a = 7 , b = 5;
   a=a+b;
   b=a-b;
   a=a-b;
   cout << a << endl << b << endl;
   system("pause");
   return 0; 
}
gray_fox
What a waste!
1511 / 1214 / 69
Регистрация: 21.04.2012
Сообщений: 2,550
Завершенные тесты: 3
21.05.2013, 21:08 #15
Цитата Сообщение от Чеченец Посмотреть сообщение
C++
1
system("pause");
C++
1
#include <cstdlib>
Добавлено через 3 минуты

Не по теме:

Хотя может просто не С++ компилятор )

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.05.2013, 21:08
Привет! Вот еще темы с ответами:

Поменять местами значения двух переменных, не используя дополнительной - C++
4.Напишите программу,которая меняет местами значения двух переменных в памяти. В задаче 4 попробуйте найти решение которое не использует...

Значения переменных а, Ь и с поменять местами так, чтобы оказалось а >= Ь >= с. - C++
Значения переменных а, Ь и с поменять местами так, чтобы оказалось а &gt;= Ь &gt;= с. помогите пожалуйста

Решение задачи Абрамяна: поменять местами значения двух переменных - C++
Алгоритм и коды программы

Поменять местами значения двух переменных, используя один указатель - C++
Это вообще реально? С двумя указателями вот так, с вероятностью ошибки т. к. засылаем на неизвестный адрес. #include &lt;iostream.h&gt; ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
21.05.2013, 21:08
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru