VB и степень

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

VB и степень

Сообщение Cytron » 05.11.2007 (Пн) 20:32

Я на днях проводил всякие 'эксперементы' с VB, Windows и т д
и нашел косяк в работе VB

Я написал
Код: Выделить всё
a=0^0

Ответ, как и должно быть, 1.
я написал
Код: Выделить всё
a=-0^0

И удивился! a не была равна 1!
Оказывается, -0^0=-1
НО если учесть что, вообще должно быть
0^0 = -0 ^ 0 так как 0 = -0
То вышепрощитанное это полный бред... :?
Вот так то вот.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 05.11.2007 (Пн) 22:08

Cytron
Нет никаких косяков в VB. Но есть косяки в твоих познаниях элементарных вещей.

А именно, в познании того, что унарный оператор минус имеет меньший приоритет, чем бинарный оператор возведения в степень.

А значит -0 ^ 0 эквивалентно -( 0 ^ 0).

-(0^0) = -(1) = -1 --- всё верно.

Если же поменять приоритет выполнения операций, добавив скобки, т.е. написать (-0)^0 - то будет как положено 1, т.к. любое число возведённое в нулевую степень есть 1.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 05.11.2007 (Пн) 23:40

Хакер
Черт, точно. Моя ошибка.
Сорри

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 06.11.2007 (Вт) 7:10

Ничего, бывает :)
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 06.11.2007 (Вт) 20:30

Cytron писал(а):Хакер
Черт, точно. Моя ошибка.
Сорри


Праям по анекдоту насчет калькулятора и американца:

1 + 2 * 2 = 6

:lol:
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 08.11.2007 (Чт) 2:43

Хм... А кто сказал, что 0^0 равен единице?.. :roll:

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Сообщение iGrok » 08.11.2007 (Чт) 9:06

Ммм.. Ну если это - 0^0 - не схематическое изображение очков. То оно равно единице. Или я забыл математику?
label:
cli
jmp label

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 08.11.2007 (Чт) 10:55

Вообще-то да, любое число в нулевой степени - единица.
Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.11.2007 (Чт) 21:47

Ага, а зато ноль в любой степени -- ноль.

По хорошему, 0^0 неопределён точно так же, как 0/0
Изображение

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 08.11.2007 (Чт) 23:28

Фигли тогда все калькуляторы в ответ на 0^0 выдают единицу?
Изображение

burik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 514
Зарегистрирован: 03.11.2005 (Чт) 22:04
Откуда: Беларусь, Рогачев

Сообщение burik » 08.11.2007 (Чт) 23:30

Калькулятор от Microsoft'а выдает 1 :)
Между слухов, сказок, мифов,
просто лжи, легенд сомнений
мы враждуем жарче скифов
за несходство заблуждений
Игорь Губерман

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 09.11.2007 (Пт) 0:42

Это такой же "спор", который происходит при вопросе "Что будет при делении 0/0?".
1) Если верить школьному учебнику математики, 0/0 = пустое множество.
2) Если смотреть, что числитель дроби равен нулю, 0/0 = 0.
3) Если смотреть, что числитель дроби равен знаменателю, то 0/0 = 1.
4) Если рассматривать свойства гиперболы, т.е. смотреть на то, что при уменьшении знаменателя дроби дробь увеличивается, то 0/0 = +inf.
5) Если рассматривать п.4, только увеличивать знаменатель дроби от -inf к нулю, то 0/0 = -inf.
6) Если верить тому, что если a/b = c, то a=b*c, то из 0/0=с следует 0=0*c, а из этого следует, что 0/0 = любое число, т.е. неопределённость.

Такие же "высказывания" можно привести и на тему 0^0.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 09.11.2007 (Пт) 1:58

Блин, в курсе высшей математики говорится, что при делении 0 на 0 возникает неопределенность и не надо рассматривать это с каких-либо других позиций...
То же самое как бесконечность делить на бесконечность.
И про 0^0 то же самое.

Если уж на то пошло, с каких сторон рассматривать рассматривать эту запись (выражение), то для меня например это картинка всего лишь два яйца, которые кто-то собирается разбить об крышку сковородки (к примеру), готовя например яичницу...
Подпись проходит рефакторинг

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 09.11.2007 (Пт) 6:06

Lumen писал(а):Блин, в курсе высшей математики говорится, что при делении 0 на 0 возникает неопределенность и не надо рассматривать это с каких-либо других позиций...
То же самое как бесконечность делить на бесконечность.
И про 0^0 то же самое.
+1. Я к этому и клонил :) Ответов слишком много (больше одного, по крайней мере) => неопределённость.

Cytron
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 266
Зарегистрирован: 15.02.2007 (Чт) 21:09

Сообщение Cytron » 06.12.2007 (Чт) 3:52

0 ^ 0 это 1 вот почему:
Возведение в степень это:
Ответ = ЧислоУмноженноеСамоНаСебяNРаз * 1
Например,
3^4 = (3 * 3 * 3 * 3) * 1
Соответственно,
0^0 = (НЕТУ) * 1
При этом НЕТУ - это не ноль!
Это НЕТУ, которое убирает себя из выражения.
Остается
0^0 = 1
Вроде так.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 06.12.2007 (Чт) 4:16

Хм, вообще-то, возвести число в степень n - это то же самое, что умножить это число само на себя n раз. Без всяких там умножить или разделить на 1.
Да кстати, а почему именно умножить на 1, а не разделить на 2, а потом умножить на 2? Или там к примеру прибавить 10 и отнять 10? Это вообще по-моему похоже на бред.
И ещё такой вопрос: куда исчезает это твое (НЕТУ)? За пивом что ли убегает? Или в кислоте растворяется?
Подпись проходит рефакторинг

GAGArin
Неистовый флудер
Неистовый флудер
 
Сообщения: 1777
Зарегистрирован: 23.12.2002 (Пн) 12:46
Откуда: я тут взялся, не знаю...

Сообщение GAGArin » 07.12.2007 (Пт) 8:18

Из Википедии, со ссылкой на "А.Б.Будак, Б.М.Щедрин "Элементарная математика" - Подготовка к вступительным экзаменам в МГУ"
Изображение


Изображение
не определен

andrewstolbov
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 65
Зарегистрирован: 23.01.2007 (Вт) 11:02

Сообщение andrewstolbov » 07.12.2007 (Пт) 9:49

Есть в качестве определения 0! = 1. Это соглашение такое, но когда начинаешь работать с рядами и записывать их оператором суммирования, такое определение само напрашивается. Есть также соглашения: "на ноль делить нельзя", "логарифм нуля не существует (даже в области комплексных чисел)" и т.д. Если бы машина выдавала 1+1=3, стоило бы огорчаться, а 0^0 - не пофиг ли - 1 или false?


Вернуться в Народный треп

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 49

    TopList  
cron