Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.11;
Скачать: CL | DM;

Вниз

Задачка...   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.011 c
6-33239
Smile
2003-06-04 08:48
2003.08.11
Отправка файла NMStrm


7-33378
BJValentine
2003-05-28 10:52
2003.08.11
Tray+Reboot


14-33313
app
2003-07-23 13:20
2003.08.11
Моделирование человеческой личности (Dmitriy O. 23.07.03 13:17


9-33035
R2D2
2003-02-10 16:39
2003.08.11
GLScene - режимы фильтрации текстур


1-33112
Nucl
2003-07-29 17:24
2003.08.11
Как клонировать компоненты на форме