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

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

Войти
Регистрация
Восстановить пароль
 
DenyaA
0 / 0 / 0
Регистрация: 08.10.2011
Сообщений: 6
#1

Поменять местами два числа, не используя дополнительные ячейки памяти - C++

08.10.2011, 19:09. Просмотров 509. Ответов 6
Метки нет (Все метки)

Когда вводишь два числа нужно что бы они поменялись местами, не используя при это дополнительные ячейки то есть всего 2 ячейки

C++
1
2
3
4
5
6
7
8
9
#include <iostream>
using namespace std;
int main() {
    int a,b;
    cin>>a>>b;
    Дальше вот тут вывести какую-то формулу;
    cout<<a<<b<<endl;
    return 0;
}
Просто в cout поменять b и a нельзя.
Помогите.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.10.2011, 19:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поменять местами два числа, не используя дополнительные ячейки памяти (C++):

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

Кратчайший код: поменять два числа местами и вывести их - C++
Вот борюсь за первое место в рейтинге Задачка Swap 1000 надо ввести два числа поменять их местами и вывести их я сделал так ...

Поменять цифры заданного двузначного числа местами, используя математические операции - C++
Ввести двузначное число a. Поменять цифры числа местами используя математические операции

Даны два числа m и n и матрица размера axb. Поменять местами строки матрицы с номерами m и n - C++
Помогите, пожалуйста:boredom:на турбо С++

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

Поменять местами два массива - C++
for(int i=0;i&lt;100;i++) for(int j=0;j&lt;100;j++) {if (rl1&lt;rl2) rl2=rl1; rl1=rl2; хочу поменять два массива...

6
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
08.10.2011, 19:12 #2
Попробуйте записать одно число в текстовый файл (использовать его как буфер). Суть та же, да, но заданию-то не протеворечит
0
alkagolik
Заблокирован
08.10.2011, 19:28 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C
1
2
3
4
5
6
7
8
9
10
11
#include<stdio.h>
 
int main(){
    int a = 9, b = 6;
    printf("a = %d, b = %d\n", a, b);
    a += b;
    b = a - b;
    a = a - b;
    printf("a = %d, b = %d\n", a, b);
    return 0;
}
0
x1Mike7x
217 / 130 / 6
Регистрация: 06.11.2010
Сообщений: 234
08.10.2011, 19:28 #4
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream> 
using namespace std; 
int main() 
{ 
    int a,b; 
    cin>>a>>b; 
    b ^= a ^= b ^= a %= b; 
    cout<<a<<b<<endl; 
    return 0; 
}
0
alkagolik
Заблокирован
08.10.2011, 19:35 #5
x1Mike7x,
Код
a = 0, b = 9
a = 9, b = 0

a = 1, b = 8
a = 8, b = 1

a = 2, b = 7
a = 7, b = 2

a = 3, b = 6
a = 6, b = 3

a = 4, b = 5
a = 5, b = 4

a = 5, b = 4
a = 4, b = 1

a = 6, b = 3
a = 3, b = 0

a = 7, b = 2
a = 2, b = 1

a = 8, b = 1
a = 1, b = 0

a = 9, b = 0
Исключение в операции с плавающей точкой
0
DenyaA
0 / 0 / 0
Регистрация: 08.10.2011
Сообщений: 6
08.10.2011, 19:43  [ТС] #6
Спасибо большое за ответы, но в формуле нужно использовать только знаки "+" и "-".
И кстати что за знак "^".
Я просто изучаю С++ 4 дня, так что я совсем нуб.
0
alkagolik
Заблокирован
08.10.2011, 19:49 #7
DenyaA, это логические (побитовые) операции с двоичными векторами, вы наверное уже проходили булеву алгебру.
ИЛИ |
И &
НЕ ~
исключающее ИЛИ ^ еще говорят сложение по модулю 2 используется в алгебре Жегалкина основная арифметическая операция дискретных ВУ.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.10.2011, 19:49
Привет! Вот еще темы с ответами:

Поменять местами два массива - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;windows.h&gt; const int n=9; int a, b; inline int pr(void) { ...

Поменять местами два полуслова - C++
Прошу помочь с программой: Дана форма, в ней задается слово, при нажатие кнопки Swap два полуслова в слове меняются местами.

Поменять местами два элемента массива - C++
Помогите решить пжл! в С++ ваще не шарю , а скора сессия I сем – Алгоритмические языки программирования Разработать схемы...

Поменять местами два элемента массива - C++
подскажите ,массив из 16 HWND элементов ,как обменять 2 элемента местами в массиве простите ,ошибся в заголовке


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

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

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