#9065: Проще говоря, плюс один

« картинки и свежие анекдоты | чат

#9065: Проще говоря, плюс один

Знаменитая задача: как переставить два числа, не используя третье? Канонически решается так:

A = A + B
B = A − B
A = A − B

Однако ещё быстрее можно так:

A = A xor B
B = A xor B
A = A xor B

Или так:

push А
push B
pop А
pop B

Но я бы писал, использую третью переменную:

tmp = А
A = В
B = tmp

Да-да, пару тактов разбазарю. И, например, вместо INC А напишу А = А + 1. И не потому, что не знаю такие финты, а потому, что любой осёл поймёт, что тут написано. Глаз не зацепится, мозг будет сосредоточен на задаче, а не на способе её достичь.

«Ваша программа должна быть изменяема, иначе вы родили её мертвой», — сказал кто-то известный. Остаётся добавить: «Причём легко».

Ещё интересное на этом сайте:

Анекдоты и картинки #8649493
Анекдоты и картинки #8649492
Далай-Лама отвечает на вопросы
Взрываем… мозг! (21 фото)
По центральной площади Первоуральска бегала голая девушка (видео)
Обзор сети
Тихий
Космическая PvP-аркада BATTLE ABYSS ONLINE
Папа везет детей в школу
90 км/час на велосипеде
Мрачные произведения, которые легли в основу некоторых добрых сказок (10 фото)
Автомат АК-47 и его эволюция развития (4 фото)
Хижина в облаках (9 фото)
Мировые достопримечательности ночью (25 фото)
Анекдоты и картинки #8649479
Анекдоты и картинки #8649478
Анекдоты и картинки #8649477
Что такое пиздец
Анекдоты и картинки #8649475
Анекдоты и картинки #8649474
« все анекдоты и картинки
Рейтинг@Mail.ru