Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 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
1-33116
voprosik
2003-07-29 11:11
2003.08.11
Есть ли способ выводить на канвас


1-33148
Mishenka
2003-07-26 22:15
2003.08.11
Запуск программ.


11-33087
_Ed_
2002-12-06 18:07
2003.08.11
Hicon ---> HBitmap


6-33243
alexd1
2003-06-04 20:48
2003.08.11
Пересылка записи(тип record) через Сокет.


1-33209
LORD
2003-07-26 18:12
2003.08.11
localhost proba file.exe TO d: proba file.exe





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский