Форум: "Потрепаться";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];
ВнизЗадачка... Найти похожие ветки
← →
UserName (2003-07-23 20:37) [0]Вот тут мне недавно задали такую задачку: нужно "поменять" значения двух переменных (тоесть в первую переменную записать значение второй, а во вторую соответсвенно значение первой), без использования вспомогательных переменных переменной.
Говорят, существует "чисто математическое решение", но я его пока не нашел. А какие у вас идеи?
← →
AlexRush (2003-07-23 20:39) [1]Чисто математически это невозможно.
но есть
asm
xchg eax,ebx
end;
← →
ZZ (2003-07-23 20:45) [2]:) Такие задачки задают на олимпиаде в 8 классе :) И балл у них не очень большой...
ЗЫ. А попробуй на бумажке поскладывать и повычитьать эти числа (там даже умножать не надо) - всего 3 действия
← →
Романов Р.В. (2003-07-23 20:47) [3]a := a + b
b := a - b
a := a - b
← →
SergP (2003-07-23 20:51) [4]Вот чисто математически, хотя с использованием дополнительной переменной было бы проще и быстрее...
a:=a+b;
b:=a-b;
a:=a-b;
← →
Palladin (2003-07-23 20:51) [5]Чисто математического не существует, существует чисто алгоритмическое, указанное выше.
← →
Романов Р.В. (2003-07-23 20:56) [6]
> Чисто математического не существует
В математике и переменных то нет :))
Наверно имелось в виду с использованием математических операций, а не другой способ для целых чисел с использованием логических операций
← →
SergP (2003-07-23 21:00) [7]
> Романов Р.В. © (23.07.03 20:47)
> a := a + b
> b := a - b
> a := a - b
М-да... Вот что значит глючный инет... Разница в 4 минуты...
← →
fdutchuo (2003-07-23 22:01) [8]a:=a xor b;
b:=a xor b;
a:=b xor a;
← →
Anatoly Podgoretsky (2003-07-23 23:06) [9]SergP © (23.07.03 20:51)
Математически это вообще абсурд a = a + b
← →
SergP (2003-07-23 23:39) [10]
> Anatoly Podgoretsky © (23.07.03 23:06)
> SergP © (23.07.03 20:51)
> Математически это вообще абсурд a = a + b
1. Не a=a+b, а a:=a+b
2. То что математически это абсурд - в некоторой степени согласен.
3. Имхо вопрошающий хотел увидеть именно это.
← →
Романов Р.В. (2003-07-24 06:07) [11]
> Anatoly Podgoretsky © (23.07.03 23:06)
> SergP © (23.07.03 20:51)
> Математически это вообще абсурд a = a + b
Ничего подобного. b = 0, a - любое число :)))
← →
Дрын (2003-07-24 06:39) [12]В школе на третем уроке по программированию учитель задал домой эту задачу и сказал: "Кто на следуйщем уроке даст правильный ответ тому в году 5 баллов". Я ответил секунд так через 30-40 и он был в шоке. :)
← →
Palladin (2003-07-24 07:29) [13]Он наверно понятия не имеет о всемирной глобальной сети
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.007 c