Re[2]: Вот и выросло....
От: Michael7 Россия  
Дата: 30.10.23 10:20
Оценка: 1 (1) +4
Здравствуйте, dom1532, Вы писали:


D>В итоге 4 же ответ, верно? 1 это ерунда какая то


Правильный ответ именно 1. Потому что между 3 и скобкой опущен знак умножения и выражение 3(8-6) является единым блоком для деления.
Если бы было записано 3*(8-6), то тогда 4.
Re: Вот и выросло....
От: graniar  
Дата: 30.10.23 19:04
Оценка: +4
Вот поэтому-то, когда возникают малейшие сомнения в приоритете операторов, стоит поставить лишние скобки и не заморачиваться.
Re[4]: ..за четыре года
От: nikkit  
Дата: 31.10.23 08:01
Оценка: +4
O>если там перейти на вкладку Math input и вкопипастить 1/2x и 1/2*x совершенно разные вещи получаются
O>а на вкладке natural language — вещи получаются одинаковые
O>такие дела

спросил спеца по матану

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

Re: Вот и выросло....
От: Alekzander Россия  
Дата: 30.10.23 03:42
Оценка: +3
Здравствуйте, Antidote, Вы писали:

A>Image: 18525388.jpg

A>

И каков же ответ? У опущенного умножения приоритет тот же, что эксплиситного, или повышен?

Почитал, пишут, что всё наоборот: в школьной алгебре приоритет умножения выше, чем у деления, и знак опускают, подчёркивая этот факт. Чему детей учат, извращуги.
Re[2]: Вот и выросло....
От: pva  
Дата: 30.10.23 07:20
Оценка: +2
Здравствуйте, Alekzander, Вы писали:

A>Почитал, пишут, что всё наоборот: в школьной алгебре приоритет умножения выше, чем у деления, и знак опускают, подчёркивая этот факт. Чему детей учат, извращуги.

Приоритет умножения выше по сравнению с чем? Любой компонент выражения неразрывно связан со своим знаком. В примере выше :3 — единый компонент. Поэтому не может быть никакого 3*2, может быть только :3*2 = 2/3.
newbie
Re[3]: Вот и выросло....
От: Pzz Россия https://github.com/alexpevzner
Дата: 30.10.23 07:51
Оценка: +1 -1
Здравствуйте, pva, Вы писали:

pva>Приоритет умножения выше по сравнению с чем? Любой компонент выражения неразрывно связан со своим знаком. В примере выше :3 — единый компонент. Поэтому не может быть никакого 3*2, может быть только :3*2 = 2/3.


Чего? Кого?

Где здесь единый компонент?

expression
    : term
    | expression '+' term
    | expression '-' term
    ;

term
    : factor
    | term '*' factor
    | term '/' factor
    | term '%' factor
    ;

factor
    : primary
    | '-' factor
    | '+' factor
    ;

primary
    : IDENTIFIER
    | INTEGER
    | FLOATING_POINT_LITERAL
    | '(' expression ')'
    ;


(взято отсюда: https://stackoverflow.com/questions/34603011/grammar-rule-for-math-expressions-no-left-recursion)
Re[2]: ..за четыре года
От: Real 3L0 Россия http://prikhodko.blogspot.com
Дата: 30.10.23 10:34
Оценка: +2
Здравствуйте, ononim, Вы писали:

O>https://www.yaplakal.com/forum7/st/625/topic1987710.html


Я в афиге!
Либо впервые слышу про такое, либо успешно забыл.
Вселенная бесконечна как вширь, так и вглубь.
Re[3]: Вот и выросло....
От: Alekzander Россия  
Дата: 30.10.23 12:25
Оценка: +1 :)
Здравствуйте, sambl74, Вы писали:

A>>Почитал, пишут, что всё наоборот: в школьной алгебре приоритет умножения выше, чем у деления, и знак опускают, подчёркивая этот факт. Чему детей учат, извращуги.


S>Это происки англосаксов — https://tass.ru/obschestvo/6725047


Если синтаксический сахар (опускание знака умножения) должен всё упрощать, а на деле приводит к международным конфликтам, то это плохой синтаксический сахар.
Re[4]: Вот и выросло....
От: Michael7 Россия  
Дата: 30.10.23 23:44
Оценка: -2
Здравствуйте, Jester, Вы писали:

M>>Правильный ответ именно 1. Потому что между 3 и скобкой опущен знак умножения и выражение 3(8-6) является единым блоком для деления.

M>>Если бы было записано 3*(8-6), то тогда 4.

J>Я очень надеюсь, что с такой логикой Вы либо не являетесь нашим коллегой, либо не пишете никаких критичных систем.


Вообще, признаться забыл, что знак умножения ВСЕГДА имеет приоритет перед делением. Так что есть или нет там знака * правильный ответ всегда 1. Так как всегда сначала 3 умножается на (8-6).
Re[2]: ..за четыре года
От: Real 3L0 Россия http://prikhodko.blogspot.com
Дата: 31.10.23 08:06
Оценка: +2
Здравствуйте, ononim, Вы писали:

O>https://www.yaplakal.com/forum7/st/625/topic1987710.html


Нашёл этот учебник 1967 года и спросил у профессора математики:
— Это ещё актуально? (скриншот из учебника, как на yaplakal.com)
— Видимо нет. Вопрос как договориться. Лучше ставить скобки, зачем путать людей такой формой записи?
— Получается, что в этом примере (скриншот из корневого сообщения) у тебя получается 4 без вариантов?
— Да.
Вселенная бесконечна как вширь, так и вглубь.
Отредактировано 31.10.2023 8:47 Real 3L0 . Предыдущая версия . Еще …
Отредактировано 31.10.2023 8:07 Real 3L0 . Предыдущая версия .
Re[2]: Вот и выросло....
От: Alekzander Россия  
Дата: 31.10.23 08:32
Оценка: +2
Здравствуйте, dom1532, Вы писали:

D>В итоге 4 же ответ, верно? 1 это ерунда какая то


ИМХО, единственный правильный ответ — Operator expected (скобки это не лекарство).

P.S. Не, ну, в принципе, 3 is not a function тоже сгодится (так говорит Джаваскрипт).
Re[7]: Вот и выросло....
От: big.muzzy  
Дата: 01.11.23 00:34
Оценка: 1 (1)
Здравствуйте, Michael7, Вы писали:


M>Можешь проверить на Wolfram Mathematica https://www.wolframalpha.com/input?i=36%3A3*%288-6%29



Могу ошибаться, но похоже, что деление записывается как "/". ":" означает что-то другое

Корректный результат:
https://www.wolframalpha.com/input?i=36%2F3*%288-6%29


Exact result
24

Re[4]: Вот и выросло....
От: pva  
Дата: 30.10.23 08:20
Оценка: :)
Здравствуйте, Pzz, Вы писали:

Pzz>Чего? Кого? Где здесь единый компонент?

Люди чуть поумнее компиляторов. Впрочем, не все, да.
Ты своих детей младшей школе тоже через грамматики учил? И как твоя грамматика обрабатывает школьные упрощения типа 99 + 98 — 97 = 99 + 1 или (99 — 97) + 98?
А школьнику достаточно просто понять что (+99) + (+98) + (-97) можно менять местами как угодно по переместительному закону, равно как и a : b * c = (a) * (1:b) * (c).
В выражении выше :3 = (1:3) поэтому нельзя 3 * 2.
newbie
Re[3]: ..за четыре года
От: ononim  
Дата: 30.10.23 12:01
Оценка: +1
R3>Либо впервые слышу про такое, либо успешно забыл.
почувствуй разницу: 1/2x 1/2*x
Как много веселых ребят, и все делают велосипед...
Re[3]: Вот и выросло....
От: Jester Канада  
Дата: 30.10.23 17:12
Оценка: +1
Здравствуйте, Michael7, Вы писали:

M>Правильный ответ именно 1. Потому что между 3 и скобкой опущен знак умножения и выражение 3(8-6) является единым блоком для деления.

M>Если бы было записано 3*(8-6), то тогда 4.

Я очень надеюсь, что с такой логикой Вы либо не являетесь нашим коллегой, либо не пишете никаких критичных систем.
Re[2]: Вот и выросло....
От: wl. Россия  
Дата: 30.10.23 20:36
Оценка: :)
Здравствуйте, graniar, Вы писали:

G>Вот поэтому-то, когда возникают малейшие сомнения в приоритете операторов, стоит поставить лишние скобки и не заморачиваться.


что, даже в алгебре бывает Undefined Behavior? Весьма неожиданно
Re[5]: Вот и выросло....
От: Real 3L0 Россия http://prikhodko.blogspot.com
Дата: 31.10.23 08:44
Оценка: +1
Здравствуйте, Michael7, Вы писали:

M>Вообще, признаться забыл, что знак умножения ВСЕГДА имеет приоритет перед делением. Так что есть или нет там знака * правильный ответ всегда 1. Так как всегда сначала 3 умножается на (8-6).


Вселенная бесконечна как вширь, так и вглубь.
Re[3]: Вот и выросло....
От: BVA Интернет  
Дата: 14.11.23 17:10
Оценка: +1
Здравствуйте, wl., Вы писали:

wl.>Здравствуйте, graniar, Вы писали:


G>>Вот поэтому-то, когда возникают малейшие сомнения в приоритете операторов, стоит поставить лишние скобки и не заморачиваться.


wl.>что, даже в алгебре бывает Undefined Behavior? Весьма неожиданно


В алгебре нет, а вот у нейронных сетей бродящих вокруг результаты бывают непредсказуемыми.
--
http://www.slideshare.net/vyacheslavbenedichuk
https://www.linkedin.com/in/vbenedichuk
Вот и выросло....
От: Antidote  
Дата: 30.10.23 02:09
Оценка:

Чему бы грабли ни учили, а сердце верит в чудеса.
Re[2]: Вот и выросло....
От: __kot2  
Дата: 30.10.23 05:28
Оценка:
Здравствуйте, Alekzander, Вы писали:
A>И каков же ответ? У опущенного умножения приоритет тот же, что эксплиситного, или повышен?
то, что в скобках будет вычислено первым, а деление на 6 под чертой будет последним, поэтому сводится до того, чему равно
36/3*2
вообще у такого кривого деления приоритет такой же как умножения (длинная черта при делении на 6 не случайно стоит) и по сути делиться должно то что над чертой на то что под чертой
Re[2]: Вот и выросло....
От: Real 3L0 Россия http://prikhodko.blogspot.com
Дата: 30.10.23 06:52
Оценка:
Здравствуйте, Alekzander, Вы писали:

A>Почитал, пишут, что всё наоборот: в школьной алгебре приоритет умножения выше, чем у деления, и знак опускают, подчёркивая этот факт. Чему детей учат, извращуги.


Есть тут родители школьников? Дайте в учебник посмотреть!
Вселенная бесконечна как вширь, так и вглубь.
Re[2]: Вот и выросло....
От: sambl74 Россия  
Дата: 30.10.23 07:36
Оценка:
Здравствуйте, Alekzander, Вы писали:

A>Почитал, пишут, что всё наоборот: в школьной алгебре приоритет умножения выше, чем у деления, и знак опускают, подчёркивая этот факт. Чему детей учат, извращуги.


Это происки англосаксов — https://tass.ru/obschestvo/6725047
Re[3]: Вот и выросло....
От: Pzz Россия https://github.com/alexpevzner
Дата: 30.10.23 07:45
Оценка:
Здравствуйте, __kot2, Вы писали:

__>то, что в скобках будет вычислено первым, а деление на 6 под чертой будет последним, поэтому сводится до того, чему равно

__>36/3*2
__>вообще у такого кривого деления приоритет такой же как умножения (длинная черта при делении на 6 не случайно стоит) и по сути делиться должно то что над чертой на то что под чертой

Бывает еще левая ассоциативность/правая ассоциативность. Ну т.е., последовательность действий с одинаковым приоритетом не обязательно именно слева направо исполняется.

Интересно, что споры такого рода периодически возникают вокруг. Что это, разная ассоциативность операций в зависимости от культуры, или просто народ выражает сво@ творческое многообразие?
Re: Вот и выросло....
От: dom1532 Россия  
Дата: 30.10.23 08:31
Оценка:
Здравствуйте, Antidote, Вы писали:

В итоге 4 же ответ, верно? 1 это ерунда какая то
Отредактировано 30.10.2023 8:33 dom1532 . Предыдущая версия .
Re: ..за четыре года
От: ononim  
Дата: 30.10.23 09:34
Оценка:
https://www.yaplakal.com/forum7/st/625/topic1987710.html
Как много веселых ребят, и все делают велосипед...
Re[3]: Вот и выросло....
От: Alekzander Россия  
Дата: 30.10.23 12:19
Оценка:
Здравствуйте, Real 3L0, Вы писали:

A>>Почитал, пишут, что всё наоборот: в школьной алгебре приоритет умножения выше, чем у деления, и знак опускают, подчёркивая этот факт. Чему детей учат, извращуги.


R3>Есть тут родители школьников? Дайте в учебник посмотреть!


Если что, я это прочитал не в учебнике, а на каком-то форуме, так что не поручусь за достоверность.
Re[3]: ..за четыре года
От: ononim  
Дата: 30.10.23 12:28
Оценка:
R3>Либо впервые слышу про такое, либо успешно забыл.
и еще вот: https://www.wolframalpha.com/input?i2d=true

если там перейти на вкладку Math input и вкопипастить 1/2x и 1/2*x совершенно разные вещи получаются
а на вкладке natural language — вещи получаются одинаковые
такие дела
Как много веселых ребят, и все делают велосипед...
Re[4]: ..за четыре года
От: Вумудщзук Беларусь  
Дата: 30.10.23 12:33
Оценка:
O>если там перейти на вкладку Math input и вкопипастить 1/2x и 1/2*x совершенно разные вещи получаются
O>а на вкладке natural language — вещи получаются одинаковые
O>такие дела
так, а исходная задача написана в math или в natural input?

вообще это задача из разряда "угадай способ мышления вопрошающего". Т.е. не про математику, а про чтение мыслей
Re[5]: ..за четыре года
От: ononim  
Дата: 30.10.23 12:34
Оценка:
В>вообще это задача из разряда "угадай способ мышления вопрошающего". Т.е. не про математику, а про чтение мыслей
Таки да, потому и срач. Многолетний кстати уже
Как много веселых ребят, и все делают велосипед...
Отредактировано 30.10.2023 12:35 ononim . Предыдущая версия .
Re[3]: Вот и выросло....
От: Mr.Delphist  
Дата: 30.10.23 21:08
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Правильный ответ именно 1. Потому что между 3 и скобкой опущен знак умножения и выражение 3(8-6) является единым блоком для деления.


Это какая-то новая спека от комитета по Мат++?
Re[4]: Вот и выросло....
От: Michael7 Россия  
Дата: 30.10.23 23:14
Оценка:
Здравствуйте, Mr.Delphist, Вы писали:


M>>Правильный ответ именно 1. Потому что между 3 и скобкой опущен знак умножения и выражение 3(8-6) является единым блоком для деления.


MD>Это какая-то новая спека от комитета по Мат++?


Старая. Называется арифметическая и алгебраическая запись умножения.
Re[2]: Вот и выросло....
От: Michael7 Россия  
Дата: 30.10.23 23:45
Оценка:
Здравствуйте, dom1532, Вы писали:


D>В итоге 4 же ответ, верно? 1 это ерунда какая то


Насчет 4 при знаке * я должен признаться, что невольно ввел в заблуждение в предыдущем посте. Немного проверил и действительно правильный ответ всегда 1.
Re[5]: ..за четыре года
От: ononim  
Дата: 31.10.23 08:08
Оценка:
N>спросил спеца по матану
N>А уж то, какие правила записи математических выражений в разных программулях и как в зависимости от этого меняется результат — это вообще смешно обсуждать.
да уж

N>В математике опускается знак умножения только между цифрой и буквой. А между цифрой и скобкой нет.

https://img1.labirint.ru/rcimg/c411695d56591061be1615960c2284aa/960x540/books51/509927/ph_1.jpg?1563863267
(Лифшиц если чо)
Как много веселых ребят, и все делают велосипед...
Отредактировано 31.10.2023 8:11 ononim . Предыдущая версия . Еще …
Отредактировано 31.10.2023 8:10 ononim . Предыдущая версия .
Re[5]: ..за четыре года
От: big.muzzy  
Дата: 31.10.23 08:17
Оценка:
Здравствуйте, nikkit, Вы писали:


N>спросил спеца по матану


Аналогично. Спросил своего коллегу (д.т.н.) занимающегося математикой — говорит ерунда написана, не морочь людям голову.

Про приоритет умножения перед делением сказал то же самое.
Я видел скриншот из книги, представленный на ЯП, но что это за учебник искать, признаюсь, не стал. Ссылок и названия книги на скринах нет.
Re[6]: Вот и выросло....
От: Michael7 Россия  
Дата: 31.10.23 09:05
Оценка:
Здравствуйте, Real 3L0, Вы писали:


M>>Вообще, признаться забыл, что знак умножения ВСЕГДА имеет приоритет перед делением. Так что есть или нет там знака * правильный ответ всегда 1. Так как всегда сначала 3 умножается на (8-6).


R3>


Можешь проверить на Wolfram Mathematica https://www.wolframalpha.com/input?i=36%3A3*%288-6%29
Re[7]: Вот и выросло....
От: Real 3L0 Россия http://prikhodko.blogspot.com
Дата: 31.10.23 13:21
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Можешь проверить на Wolfram Mathematica https://www.wolframalpha.com/input?i=36%3A3*%288-6%29


Хорошо, что я никогда не пользовался этой поделкой. А теперь и подавно не буду.
Вселенная бесконечна как вширь, так и вглубь.
Re[3]: Вот и выросло....
От: Silver_S Ниоткуда  
Дата: 10.11.23 23:35
Оценка:
Здравствуйте, pva, Вы писали:

pva>Приоритет умножения выше по сравнению с чем? Любой компонент выражения неразрывно связан со своим знаком. В примере выше :3 — единый компонент. Поэтому не может быть никакого 3*2, может быть только :3*2 = 2/3.


А здесь какой вариант лучше?
 amount:count = am:c

 amount:count = am(ount)2:c
Re[4]: Вот и выросло....
От: pva  
Дата: 11.11.23 13:14
Оценка:
Здравствуйте, Silver_S, Вы писали:

S_S>А здесь какой вариант лучше?

S_S>
 amount:count = am:c

S_S>
 amount:count = am(ount)2:c

Что значит "лучше"? Нет здесь никакого "лучше", а только игра с неопределенностью записи. Считать ли знак ":" эквивалентом "/" или дробной черты?
Можешь переписать выражение выше в терминах сложения-вычитания и сразу станет понятно "какой вариант лучше".
newbie
Re[5]: Вот и выросло....
От: Silver_S Ниоткуда  
Дата: 11.11.23 15:06
Оценка:
Здравствуйте, pva, Вы писали:
S_S>>
 amount:count = am:c

S_S>>
 amount:count = am(ount)2:c

pva>Что значит "лучше"? Нет здесь никакого "лучше", а только игра с неопределенностью записи.

Здесь вопрос — какое соглашение для приоритетов лучше. Неявное умножение для однобуквенных переменных должно бы иметь приоритет побольше, чем явные операции ab=a*b

В программировании однобуквенные переменные и неявные умножения не приживутся — слишком мало букв. Но сильно повышают читабельность арифметических выражений. Так что такой синтаксис актуальный, и с приоритетами не должно быть путаницы.

pva>Считать ли знак ":" эквивалентом "/" или дробной черты?


Это вроде синонимы, для операции деления. Нет смысла задавать разные приоритеты для ":" и "/".
Re[6]: Вот и выросло....
От: pva  
Дата: 11.11.23 16:22
Оценка:
Здравствуйте, Silver_S, Вы писали:

S_S> Здесь вопрос — какое соглашение для приоритетов лучше. Неявное умножение для однобуквенных переменных должно бы иметь приоритет побольше, чем явные операции ab=a*b

Как бы да, но с другой стороны — нет. 3a * 4b == 3 * 4 * a * b. Но мы же понимаем что нельзя записать 34ab из-за неоднозначности.

pva>>Считать ли знак ":" эквивалентом "/" или дробной черты?

S_S>Это вроде синонимы, для операции деления. Нет смысла задавать разные приоритеты для ":" и "/".
Да, синонимы, но ведь пропуск * является синонимом самого умножения. Но почему-то a / bc трактуют как a / (b * c).
Здесь еще интересная тема написания дробей с целым, например 3 и 1/2. В строку не запишешь же 31/2. Остается только 3+1/2.
Так и символы : и / можно было бы разделить. Ведь дробь в строку писать сложно. Можно было бы сказать что a / expr == a / (expr). Например, "a / b * c" не является эквивалентом a * c / b, а означает a / (b * c)

Короче, как по мне, вся эта каша из пальца высосана. Как тут уже много раз предлагали — не надо мудрить, а если есть разночтения — использовать скобки.
newbie
Re: Вот и выросло....
От: serb Россия  
Дата: 14.11.23 21:51
Оценка:
Здравствуйте, Antidote, Вы писали:

A>Image: 18525388.jpg

A>

Замени (8 — 6) на x, и сократи дроби — потом подставь х, что получится?
Re[5]: ..за четыре года
От: Alekzander Россия  
Дата: 15.11.23 01:32
Оценка:
Здравствуйте, nikkit, Вы писали:

N>спросил спеца по матану


N>

N>исходный пример вообще ни разу не алгебра, там ни одной буквы нет.


Элемента́рная а́лгебра — самый старый раздел алгебры, в котором изучаются алгебраические выражения и уравнения над вещественными и комплексными числами.


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


Спец не знает основ.
Re[3]: Вот и выросло....
От: Кодт Россия  
Дата: 16.11.23 12:58
Оценка:
Здравствуйте, Alekzander, Вы писали:

A>P.S. Не, ну, в принципе, 3 is not a function тоже сгодится (так говорит Джаваскрипт).


Это в жабаскрипе 3 не функция. А в обычной жизни — функция.

Вот смотрим:
sin x — "грешить x"
cos x — "согрешить x"
sin cos x = sin ( cos ( x ) )
у оператора пробельной аппликации правая ассоциативность

sin 3 x = sin ( 3 * x )
3 sin x = 3 * ( sin ( x ) )

аппликация множителя к множимому — одноместная функция кратности.
Перекуём баги на фичи!
Re[8]: Вот и выросло....
От: F3V  
Дата: 16.11.23 14:03
Оценка:
Здравствуйте, big.muzzy, Вы писали:

M>>Можешь проверить на Wolfram Mathematica https://www.wolframalpha.com/input?i=36%3A3*%288-6%29



BM>Могу ошибаться, но похоже, что деление записывается как "/". ":" означает что-то другое


BM>Корректный результат:

BM>https://www.wolframalpha.com/input?i=36%2F3*%288-6%29


BM>

BM>Exact result
BM>24


Да, интересно, согласно Wolframalph'e, имеем три формата записи:

1) Деление столбца по вертикали горизонтальной чертой:
36         36
------- == -- == 4
3*(8-6)    6


2) Умножение и деление в строке равных приоритетов:
36/3*(8-6) == 12 * (8-6) == 24

3) Деление строки по горизонтали вертикальным двоеточием или colon'ой (похоже на транспонированный (1) вариант):
36:3+(8-6) == 36:5 == 72:10 = 7.2

*) Исходная картинка — это смесь этих форматов, которая тоже разрешается формулой:
(36:3*(8-6))/6 == 1

Wolframalpha логичный вывод даёт, только надо понять, что она сделала
Re[4]: Вот и выросло....
От: Alekzander Россия  
Дата: 16.11.23 14:06
Оценка:
Здравствуйте, Кодт, Вы писали:

A>>P.S. Не, ну, в принципе, 3 is not a function тоже сгодится (так говорит Джаваскрипт).


К>Это в жабаскрипе 3 не функция. А в обычной жизни — функция.


К>Вот смотрим:

К>sin x — "грешить x"
К>cos x — "согрешить x"
К>sin cos x = sin ( cos ( x ) )
К>у оператора пробельной аппликации правая ассоциативность

К>sin 3 x = sin ( 3 * x )

К>3 sin x = 3 * ( sin ( x ) )

К>аппликация множителя к множимому — одноместная функция кратности.


Как тогда быть с выражением 3 ( 3 )? Утонуть в рекурсивности? Жаловаться на недостаток аргументов (как моя бывшая)? А, понял: у неё параметр имеет значение по умолчанию, равное 1.
Re[5]: Вот и выросло....
От: Кодт Россия  
Дата: 02.12.23 01:34
Оценка:
Здравствуйте, Alekzander, Вы писали:

A>Как тогда быть с выражением 3 ( 3 )? Утонуть в рекурсивности? Жаловаться на недостаток аргументов (как моя бывшая)? А, понял: у неё параметр имеет значение по умолчанию, равное 1.


Никак нет.
Просто у этой сущности есть несколько интерфейсов.
Интерфейс "просто число". Со всеми свойствами чисел.
И интерфейс "функция". С оператором применения.

3 + 3 = 3.operator+(3)
3 * 3 = 3.operator*(3)
3 (3) = 3.operator()(3)
Перекуём баги на фичи!
Re: Вот и выросло....
От: ӍїϛϮϠǷiя-ȺҜ Россия  
Дата: 02.12.23 12:35
Оценка:
Здравствуйте, Antidote, Вы писали:

A>Image: 18525388.jpg

A>

а на каком языке написано сиё выражение? на C или Fortran? если на последнем, то явно 6 напрашивается, а не 1 или 4
Re[3]: Вот и выросло....
От: ӍїϛϮϠǷiя-ȺҜ Россия  
Дата: 02.12.23 13:32
Оценка:
Здравствуйте, Real 3L0, Вы писали:

R3>Есть тут родители школьников? Дайте в учебник посмотреть!


родители не помогут. тут надо искать описание тела метода "З", которому передан параметр "8-6"
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.