Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
1 / 1 / 4
Регистрация: 24.10.2014
Сообщений: 200

Процедура ShiftLeft3 сдвиг влево трёх чисел

28.10.2015, 01:32. Показов 1705. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
void ShiftLeft3(double & A,double & B,double & C)
    {
    double temp = C;
    C = A;
    A = B;
    B = temp;
    }
 
int main()
    {
    double A1 = 2, B1 = 3, C1 = 4;
    double A2 = -1.0, B2 = 2.718281828459045,C2 = 3.1415926535;
 
    ShiftLeft3(A1,B1,C1);
    ShiftLeft3(A2,B2,C2);
 
cout << A1 << ' ' << B1 << ' ' << C1 << endl
        << A2 << ' ' << B2 << ' ' << C2 << endl;
    }
Здравствуйте, скажите, что обозначает тут temp и что даёт & в строке?
C++
1
void ShiftLeft3(double & A,double & B,double & C)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.10.2015, 01:32
Ответы с готовыми решениями:

Описать процедуру ShiftLeft3(A,B,C), выполняющую левый циклический сдвиг
Описать процедуру ShiftLeft3(A,B,C), выполняющую левый циклический сдвиг: значение А переходит в значение С, В в А, С переходит в В. (А,В,С...

Где и когда уместно применять операции << (сдвиг влево) и >> (сдвиг вправо)?
Кто может привести пример , когда нужно использовать операции: 1) &lt;&lt; сдвиг влево 2) &gt;&gt; сдвиг вправо

Сдвиг влево
Напишите программу, которая циклически сдвигает элементы массива влево (0-й элемент становится последним, 1-й становится 0-м, ...,...

7
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
28.10.2015, 01:46
Цитата Сообщение от ITALIANO Посмотреть сообщение
Здравствуйте, скажите, что обозначает тут temp и что даёт & в строке?
Здравствуйте.
temp - тоже что и обычно,временную переменную.
& - ссылку.
Совет: уберите и посмотрите что оно там даёт.
0
1 / 1 / 4
Регистрация: 24.10.2014
Сообщений: 200
28.10.2015, 02:07  [ТС]
Спасибо, я её уже убирал, после этого значения были стандартными т.е. сдвига не было...
То, что temp это переменная я не сомневался просто не знаю за что она отвечает...
0
Модератор
Эксперт С++
 Аватар для zss
13778 / 10971 / 6491
Регистрация: 18.12.2011
Сообщений: 29,258
28.10.2015, 07:18
Лучший ответ Сообщение было отмечено ITALIANO как решение

Решение

Чтобы поменять местами 2 предмета надо
1. Вынуть первый и куда-то положить. Обзовем это куда-то temp.
2. Т.к. место первого предмета освободилось, кладем туда второй.
3. Теперь освободилось место второго предмета - кладем туда temp.
У Вас аналогично, только предметов три.

По поводу ссылки(&).
Если переменные передаются в функцию обычным образом (по значению),
то в функции оказывается копия. Соответственно при изменении копии оригинал не меняется.
При передаче по ссылке формальный параметр становится синонимом фактического параметра
(т.е. A - синоним A1, B - B1, C - C1), соответственно, когда меняется он, то меняется и оригинал.
1
1 / 1 / 4
Регистрация: 24.10.2014
Сообщений: 200
29.10.2015, 22:46  [ТС]
Благодарю, вы меня выручили!
0
1 / 1 / 4
Регистрация: 24.10.2014
Сообщений: 200
05.12.2015, 04:24  [ТС]
У меня ещё вопрос. А как можно реализовать сдвиг в том случае, если например я хочу ввести значения сам? Т.е. я ввожу значения, они выводятся на экран, а потом и сам сдвиг выводится на экран после вывода значений... Как-то так...

Добавлено через 50 минут
Не подскажите как можно реализовать?

Я просто переделывал то что было выше, но у пеня почему-то именно предыдущие значения выводятся... то что я задаю, он даже не выполняет...

Добавлено через 12 минут
вот сам код

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
void ShiftLeft3(double A, double B, double C)
    {
    double temp = C;
    C = A;
    A = B;
    B = temp;
    }
 
int main()
    {double A, B, C;
    cin>>A>>B>>C;
 
cout<<A<<B<<C<<endl;
    }
Добавлено через 27 минут
Помогите пожалуйста!...

Добавлено через 1 час 50 минут
Ну хоть кто-нибудь посмотрите, что можно сделать?...

Добавлено через 3 часа 15 минут
zss, У меня ещё вопрос. А как можно реализовать сдвиг в том случае, если например я хочу ввести значения сам? Т.е. я ввожу значения, они выводятся на экран, а потом и сам сдвиг выводится на экран после вывода значений... Как-то так...
0
Модератор
Эксперт С++
 Аватар для zss
13778 / 10971 / 6491
Регистрация: 18.12.2011
Сообщений: 29,258
05.12.2015, 09:53
Почему у Вас не отложилось, что такие параметры надо передавать ПО ССЫЛКЕ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
 
void ShiftLeft3(double& A, double& B, double& C)
{
    double temp = C;
    C = A;
    A = B;
    B = temp;
}
 
int main()
{
   double x,y,z;
   cout<<"A=?";
   cin>>x;
   cout<<"B=?";
   cin>>y;
   cout<<"C=?";
   cin>>z;
   ShiftLeft3(x,y,z);
   cout<<x<<' '<<y<<' '<<z<<endl;
}
0
1 / 1 / 4
Регистрация: 24.10.2014
Сообщений: 200
06.12.2015, 20:17  [ТС]
zss, Спасибо большое я сам уже всё сделал, просто ночью плохо думается, а программа работает, проблема была в месте хранения самой программы.
Вот код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
void ShiftLeft3(double & A,double & B,double & C)
    {
    double temp = C;
    C = A;
    A = B;
    B = temp;
    }
 
int main()
    {
    double A, B, C;
    cin>> A >> B >> C;
    cout<<A<<B<<C<<endl;
 ShiftLeft3(A,B,C);
cout<<A<<B<<C<<endl;
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.12.2015, 20:17
Помогаю со студенческими работами здесь

Битовый сдвиг влево
Спомощью цикла for и битового сдвига влево вывести степень двойки от 4 до 1024 в целом та 16-нам форматах

Сдвиг символа влево
Помогите осуществить сдвиг символа (буквы) из циклического алфавита на n влево. То есть, например, на вход методу дается буква 'A' и число...

Циклический сдвиг влево
Помогите написать программу которая будет осуществлять циклический сдвиг влево введённого числа на N разрядов (например, при сдвиге числа...

Сдвиг слов влево
В переменной a есть строка из 5 слов. Как в цикле сделать сдвиг каждого слова влево и вывести каждый измененный результат? Например...

Логический сдвиг влево
unsigned __int64 number = 239176053778592; ClongNumber c(number); c.print(); for(int i = 0; i &lt; 18; i++) { unsigned...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru