На главную Самоучитель pascal Форум программистов онлайн Решение задач pascal Задачи pascal Поиск
  • Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;
    Начать пользоваться сервисом
  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
    Начать продвижение сайта
20 Июн 13

Обмен значениями двух переменных


Комментарии :  0        Просмотры :  3871


В различных типах задач на языке pascal вы можете столкнуться с такой задачей : Вам потребуется обменять значения двух или нескольких переменных.

В данной статье мы рассмотрим способы обмена значений двух переменных.

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

Реализовать данный обмен можно двумя способами. Первый способ самый простой - обмен с использование третьей переменной. Второй способ - без использования дополнительной переменной.

С использованием дополнительной переменной :

Выглядеть это будет примерно так , как показано на картинке ниже.

Обмен с использованием дополнительной переменной


Как видно на картинке нам потребуются три переменные целочисленного типа. В данном случае названия переменных такие ( a,b,c ). Переменные a,b нужны для хранения значений чисел , которые человек вводит с клавиатуры командой readln(a,b).

Далее в программе идет эта самая передача данных. Допустим мы ввели значения 3 и 5 ( "а" и "б" ) соответственно. Тогда переменная "ц" запоминает значение переменной "а" ( три ). После того как мы запомнили значение первой переменной , её потеря нам не грозит и поэтому мы можем задать ей значение второй переменной без каких-либо опасений.
Теперь первая переменная равна 5 и после этого мы можем задать значение второй переменной. Это делается присваиванием переменной "б" значение переменной "ц". ( b:= c ).
В конце программы мы просто выводим эти переменные командой writeln(a,b).

Без использования дополнительной переменной :

Передача значений без использования дополнительных переменных осуществляется немного сложнее , но при этом понять это будет нетрудно.

Обмен без использования дополнительной переменной


В данной случае нам понадобятся только две переменные (a,b). Обмен совершается так :
Первой переменной задаем значение суммы первой и второй, выглядеть это будет примерно так
( a:= a + b )
( a:= 3 + 5 ). Переменная "а" будет равна 8
Второй переменной будет задана разность первой и второй
( b:= a - b ) , ( b:= 8 - 5 ). Переменная "б" равна 3
( первоначальное значение переменной "а" )
И снова работаем с первой переменной.
Задаем ей значение разности первой и второй
( a:= 8 - 3 ). Переменная "а" будет равна 5
( первоначальное значение переменной "б" )
Вот и все осталось только вывести их на экран.

Вывод :

Какой именно способ использовать решать только вам. В первом случае вам понадобится ещё одна переменная , то есть лишняя нагрузка на память , хотя и совсем маленькая.
Во втором случае переменных потребуется только две , однако в данном случае легко запутаться в вычислениях.
Рейтинг материала : ( 5 / 2 )
Сообщить об ошибке
Комментарии :  0        Просмотры :  3871

Поиск

Решение задач

Если вас интересует решение какой-либо задачи , то вы можете опубликовать
её условие на нашем сайте или форуме. И в скором времени другие пользователи помогут вам.

Опубликовать на сайте

Опубликовать на форуме

Опрос

Какой ваш любимый раздел ?