После трёх лет разработки вышла (http://ftp.gnu.org/gnu/bash/) новая версия командного интерпретатора GNU Bash 4.3 (http://www.gnu.org/software/bash/), используемого по умолчанию в большинстве дистрибутивов Linux.Из улучшений можно отметить:
- Поддержка назначения и использования элементов массивов с отрицательными значениями индекса (напрмер, a[-1]=2, echo ${a[-1]}), при этом, отрицательное значение задаёт обратный отчёт с последнего элемента массива (a[-1] - предпоследний элемент и т.п.).
- В командах return и exit добавлена возможность указания отрицательных кодов завершения работы;
- В коде автодополнения имён файлов и команд обеспечено раскрытие переменных, определяющих часть пути. Если автодополнение связано с директорией, то в конце теперь добавляется символ "/";- Встроенная команда read теперь игнорирует нулевые байты при вводе;
- При автодополении команды в коде сопоставления теперь игнорируются пробелы и операторы присваивания;
- Опции "-nt" и "-ot" команды test теперь позволяют осуществлять проверки c наносекундной точностью;- Механизм подстановки теперь допускает использование внутри блоков {}< специальных переменных (например, BASH_XTRACEFD) и выражений, подобных {array[ind]};
- Добавлена переменная BASH_COMPAT для управления совместимостью с прошлыми реализациями командой оболочки;- В cd добавлена опция "-@" для для просмотра расширенных атрибутов файла на системах с поддержкой O_XATTR;
- В бинарном операторе test/[/[[ '-v variable' добавлена поддержка ссылок на массивы;
- Изменения в библиотеке Readline:
- Добавлена поддержка переменной colored-stats для организации выделения цветом разных типов файлов (цветной аналог visible-stats);
- Добавлена переменная show-mode-in-prompt для включения индикации режима редактирования в приглашении командной строки;
- Улучшена обработка поступления SIGHUP и других фатальных сигналов в процессе ввода;
- Добавлены команды history-substring-search-forward и history-substring-search-backward для поиска по истории с учётом текущей позиции;
- Обеспечено создание резервной копии файла с историей ввода и его восстановление при возникновении ошибки при записи в основной файл;
- Улучшение встроенной системы подсказки. Для команды helptopic реализовано автодополнение всех разделов помощи, а не только встроенных команд. Изменён порядок выборки ключевых слов поиска, вместо выборки по маске теперь вначале осуществляется проверка точного совпадения;- Добавлена возможность сборки оболочки с отключением вывода сообщений о завершении процессов по SIGTERM;
- Добавлена новая опция globasciiranges, при активации которой в операциях сортировки принудительно используется порядок символов, определённый в локали C;
- Попытка определения в режиме POSIX функции, имя которой пересекается с предопределёнными функциями, теперь приводит к выводу ошибки;- Указание в переменных HISTSIZE, history-size и HISTFILESIZE отрицательных значений теперь воспринимается как снятие ограничений на число элементов списка и размер файла с историей операций;
- Добавлена новая опция "bind -X", которая выводит список привязки всех клавиатурных комбинаций с командам Unix;
- История ввода команд теперь сохраняется для всех сеансов оболочки, а не только интерактивных;
- Поддержка переменных nameref, опций -n(/+n) для их установки и команды "test -R" для их проверки;
- Добавлена переменная CHILD_MAX для управления числом запоминаемых состояний завершения выполнения дочерних процессов;
- Добавлена опция сборки "--enable-direxpand-default" для включения по умолчанию опции direxpand;
- Во встроенную команду wait добавлена опция "-n" для ожидания изменения статуса следующего дочернего процесса;
- При указании %(...)T в printf без явного указания аргументов формата теперь выводится текущее время.
URL: http://ftp.gnu.org/gnu/bash/
Новость: https://www.opennet.ru/opennews/art.shtml?num=39205
Молодцы, что постепенно развиваются, стагнация=смерть.> История ввода команд теперь сохраняется для всех сеансов оболочки, а не только интерактивных
Что за ерунда. У меня в .bash_history будет вывод всех запускавшихся на хосте скриптов?
Как-то они мамонтово развиваются, крохоборят. Давно пора уже становиться модулем systemd.
не болтай ерунды.
В ближайшей перспективе чести стать частью systemd может удостоиться разве что util-linux. Учитывая, что их разработчики работают в смежных отделах одной конторы.
Правильно. Все равно в качестве интерактивного шелла zsh удобнее. А так хоть в systemd поддержка bash-скриптов будет.
Systemd не является проектом GNU. Надеюсь, что гнушники начнут пилить свой, идеологически правильный заменитель init.
> Надеюсь, что гнушники начнут пилить свой, идеологически правильный заменитель init.он («правильный») давно есть и работает, его не надо переписывать.
>он («правильный») давно есть и работает, его не надо переписывать.но ментейнеры большинства дистиибутивов, видимо, получают мощнейшую эрекцию при прочтении заявленых возможностей systemd, вся кровь от мозга отливает, и они становятся не способны критически оценивать последствия своих решений.
как следствие - выпиливается действующая система инициализации и грубо (без вазелина) впиливается systemd.
некоторые из них просто не хотят понимать, чем грозит «системдызация». это идиоты, которых опыт с пульсой ничему не научил, и никакой другой опыт никогда ничему не научит.некоторые — просто мастеры-ломастеры, чующие «родную душу».
а некоторые — всё понимают, но по каким-то своим причинам хотят превратить пингвинус в очередную винду.
собственно, ничего шибко неожиданного нет. хоть и печально.
> некоторые из них просто не хотят понимать, чем грозит «системдызация». это идиоты, которых опыт с пульсой ничему не научил, и никакой другой опыт никогда ничему не научит.
> некоторые — просто мастеры-ломастеры, чующие «родную душу».
> а некоторые — всё понимают, но по каким-то своим причинам хотят превратить пингвинус в очередную винду.Но все как один - разработчики линуксовых дистров.
А все протестуны против системды - в большинстве своем пользователи, причем преимущественно не линукса.
Видимо, трезвый, свободный от заблужедний, ум дарован только подоконникам.
> А все протестуны против системды - в большинстве своем пользователи, причем преимущественно
> не линукса.статистику в студию.
>Видимо, трезвый, свободный от заблужедний, ум дарован только подоконникам.А потому что есть с чем сравнивать. У Линукса есть свои особенности и зачастую именно они и привлекают юзверей других ОС, потеряв их, Линукс утратит свою привлекательность. Проще говоря: вторая (недо)В-нда не нужна. И вообще, попытки превратить Линукс в В-нду или МакОСь со стороны смотрятся дико - почему сразу не заюзать их, а пыжиться сделать Линукс-суррогат?
Патамушта иногда требуется ОСь для людей далеких от ИТ с привычками , сформированнными на винде.
> ...ОСь для людей далеких от ИТ......уже есть, и не одна.
> Патамушта иногда требуется ОСь для людей далеких от ИТ с привычками ,
> сформированнными на винде.Ну так берите винду и не парьтесь. Она, между прочим, с любым компом идёт.
Кстати, для "далёких от ИТ" лучше подойдёт не винда, а бесплатная ОSX.
>> некоторые из них просто не хотят понимать, чем грозит «системдызация». это идиоты, которых опыт с пульсой ничему не научил, и никакой другой опыт никогда ничему не научит.
>> некоторые — просто мастеры-ломастеры, чующие «родную душу».
>> а некоторые — всё понимают, но по каким-то своим причинам хотят превратить пингвинус в очередную винду.
> Но все как один - разработчики линуксовых дистров.Ложь.
> А все протестуны против системды - в большинстве своем пользователи, причем преимущественно
> не линукса.Ложь.
> некоторые из них просто не хотят понимать, чем грозит «системдызация». это идиоты,
> которых опыт с пульсой ничему не научил, и никакой другой опыт
> никогда ничему не научит.
> некоторые — просто мастеры-ломастеры, чующие «родную душу».
> а некоторые — всё понимают, но по каким-то своим причинам хотят превратить
> пингвинус в очередную винду.
> собственно, ничего шибко неожиданного нет. хоть и печально.Ну вот, Вы снова прицепились к этому systemd ;)
Хотя речь идет про Bash.
И не все так грустно как Вам кажется https://www.opennet.ru/openforum/vsluhforumID3/94561.html#85
Или лично Вам придется произвести огромный объем работы по переводу ваших ОС/ПО/Проектов с одной системы инициализации на другую? Тогда, если можно, список в студию! А то вдруг я использую Ваш продукт, и об вашем авторстве мне неизвестно :( Плюс ко всему, придется перестать обновлять (ну скажем одну из виртуальных машин) систему, что бы Ваш ценный сервис не упал (вдруг ;)
И да, в systemd есть поддержка запуска скриптов (или это только в документации).
> он («правильный») давно есть и работает, его не надо переписывать.Только почему-то никому нафиг не сдался в XXI веке. Даже гентушники, и то свой лисапед сварганили и продвигают.
>> он («правильный») давно есть и работает, его не надо переписывать.
> Только почему-то никому нафиг не сдался в XXI веке. Даже гентушники, и
> то свой лисапед сварганили и продвигают.Видимо, потому, что людям нужна не эфемерная "идеологическая правильность", а реальная эффективность, то есть способность решать существующие проблемы. Решать в 2014 году задачи, стоявшие в 1980-х, при помощи технологий 1980-х - весьма бессмысленное и неоптимальное занятие.
> Решать в 2014 задачи, стоявшие в 1980-х, при помощи технологий 1980-х - весьма бессмысленное
> и неоптимальное занятие.выкинь свой компьютер — это реально технологии середины прошлого века.
Разрешите Вас попроавить:
то есть способность решать СИЮМИНУТНЫЕ проблемы.
>>> он («правильный») давно есть и работает, его не надо переписывать.
>> Только почему-то никому нафиг не сдался в XXI веке. Даже гентушники, и
>> то свой лисапед сварганили и продвигают.
> Видимо, потому, что людям нужна не эфемерная "идеологическая правильность", а реальная
> эффективность, то есть способность решать существующие проблемы. Решать в 2014 году
> задачи, стоявшие в 1980-х, при помощи технологий 1980-х - весьма бессмысленное
> и неоптимальное занятие.
> Решать в 2014 году
> задачи, стоявшие в 1980-х, при помощи технологий 1980-х - весьма бессмысленное
> и неоптимальное занятие.Солнце моё, до технологий 1980-х нынешние писюки ещё не добрались.
>> он («правильный») давно есть и работает, его не надо переписывать.
> Только почему-то никому нафиг не сдался в XXI веке.отучаемся вещать за всю сеть.
> Даже гентушники, и то свой лисапед сварганили и продвигают.Openrc работает с init (или runit), а не вместо.
Неуч, а всё туда же — других учить.
> Только почему-то никому нафиг не сдался в XXI веке.Вот пришел "дваццатьпервый век", и сразу все нужно с ног на голову перевернуть, все равно что и как, но лишь бы не так, как раньше.
>> он («правильный») давно есть и работает, его не надо переписывать.
> Только почему-то никому нафиг не сдался в XXI веке. Даже гентушники, и
> то свой лисапед сварганили и продвигают.Вы наверное имеете в виду openrc?
Но тут (имхо) PID1 и система инициализации в одном флаконе (или я чего то недопонимаю).
> Надеюсь, что гнушники начнут пилить свой, идеологически правильный заменитель init.Один чувак с лора как-то написал товарищу Столману письмо с вопросом "что вы думаете о systemd?". И Столман даже ответил ему, примерно в таком духе: "ничего плохого в systemd не вижу".
«да слышал я этого вашего Карузо: фигня какая-то. мне Рабинович вчера напел!»
По телефону...
Столлману главное чтоб он под GPL был ;)
>> Надеюсь, что гнушники начнут пилить свой, идеологически правильный заменитель init.
> Один чувак с лора как-то написал товарищу Столману письмо с вопросом "что
> вы думаете о systemd?". И Столман даже ответил ему, примерно в
> таком духе: "ничего плохого в systemd не вижу".Да что там столлмен, если даже патрегх сказал "интересная вещь" .. :-)
Он ответил примерно в таком духе: я не разбирался в системде, чтоб иметь мнение об этом, но то что оно линуконли - существенный минус.
>модулем systemd.Зачем им баш, когда Поццеринг уже давно пилит собственный ini based programming language? Вон ветвления уже реализовали, правда пока весьма плохенькие, но по мере перехода на systemd всё большего и большего числа людей это наверняка исправят. Думаю, лет через 5-10 они уже догонят стандартный шелловский test.
Осталось только дождаться реализации циклов и полноценного ООП (благо наследование там уже реализовано, см. drop-in)
>ini based programming languageскорее xml based programming language
ребята не в курсе, что оно уже есть. счастливые…
>> История ввода команд теперь сохраняется для всех сеансов оболочки, а не только интерактивных
> У меня в .bash_history будет вывод всех запускавшихся на хосте скриптов?Сразу не заглядывая никуда и навскидку:
'История _ввода_ команд'
Предполагаю это будет (в самом начале):
https://www.opennet.ru/base/sys/bash_tips.txt.htmlНарод держаший руками, подсказвал не так давно, что в этом плане лучше был zsh.
По моему скромному, в bash, это очень полезная фича.
не понял, что добавили в cd. Просмотр??
> не понял, что добавили в cd. Просмотр??$ cd /root
bash: cd: /root: Permission deniedесли есть xarrt, они при ошибке будут показаны.
> $ cd /root
> bash: cd: /root: Permission denied
> если есть xarrt, они при ошибке будут показаны.Разве права доступа - это xattr? А если нет - зачем их показывать?
%(...)T в printf такой гемор. до сих пор удобнее использовать форк и вывод date.
Дайте float и double, хочу mp3 плеер на баше!
А long double, complex не хочешь? И bash в качестве замены всяких там матлабов? :)
дудик, complex это вектор, в компьютерах - массив.
Как математик вынужден констатировать, что дудиком являетесь как раз вы. Комплексные числа это ни разу не вектор и обычным массивом не являются.
Таки вектор. Вещественная и мнимая оси образуют плоскость, на которой можно откладывать радиус-вектора, то бишь, конкретные комплексные числа.Ну а вектор в этих ваших ЭВМ представляется массивом как раз. В некоторых языках массивы так и именуются векторами.
На пальцах
a и b массивы
c и d комплексные числа
Что будет результатом следующих операций:
a+b
c+d
a*b
c*d
sin(a)
sin(c)Аналогично можно сравнить по возможным операциям с векторами и понять, что вектора это не массивы и не комплексные числа.
> вектора это не массивыСколько классов закончили? :D
МАССИВ - это куча дерьма, что ты с ним дальше будешь делать, так это и назовут
Прикинь даже так можно: int ARRAY[0]; массив есть, а элементов нет. Пичалька.
Куча дерьма != вектор. Сюрприз?
Северный наш друг, а сходи-ка ты почитай, что такое "массив", а что - "вектор". Например, C++ STL тебе в этом очень даже поможет. А затем, прихватив с собой своего начальника i.e. Санта-Клауса, возвращайся в наш уютненький Лор. С любовью и лобызанием к твоему мозгу, Анон.
> На пальцах
> a и b массивы
> c и d комплексные числа
> Что будет результатом следующих операций:Демагогия. Пока не определено, что это за язык, не определена и семантика этих операций. Дальнейшие рассуждения пусты.
>Как математикНу вот и не лезьте в программирование. С точки зрения программы комплексные числа можно представить вектором, это всего лишь способ хранения данных. А операции с ними всегда можно определить как душе угодно.
Ага, ага. А ещё компьютеры занимаются только поиском и сортировкой. С точки зрения программы.
А вы тут bash, systemd... Да это же одно и тоже получается! Они просто определили порядок операций как душе угодно.
Я еще и программист. Представь себе. И в отличии от тебя не вижу смысла в использовании массивов даже для хранения составных частей(ты хоть в курсе, что re и im это не единственный вариант представления?) комплексных чисел. Не говоря уже о таком бреде как переопределение операций для массивов.
И еще раз для тупых, вектор это не одномерный массив. Также как двумерный массив не является матрицей.
Если уж так хочется дать компьютерный термин, то в большинстве языков общего назначения вектора, комплексные числа и матрицы реализуются в виде классов. Разницу между классом, даже использующим массивы, и просто массивом объяснять надо?
> И еще раз для тупых, вектор это не одномерный массив. Также как двумерный массив не является матрицей.И ЕЩЁ РАЗ ДЛЯ УПОРОТЫХ: Число, комлексн. число, квантернионы, вектора, матрицы, тензоры,... - МАССИВЫ
С точки зрения людей, незнающих математику и программирование - почему бы и нет. Жду дальнейших откровений, может еще физиков порадуете, рассказав им, что килограмм, метр, секунда и даже килограмм-метр на секунду в квадрате это все float. Жгите, не стесняйтесь.
> С точки зрения людей, незнающих математику и программирование - почему бы и
> нет. Жду дальнейших откровений, может еще физиков порадуете, рассказав им, что
> килограмм, метр, секунда и даже килограмм-метр на секунду в квадрате это
> все float. Жгите, не стесняйтесь.Слив засчитан.
>> И еще раз для тупых, вектор это не одномерный массив. Также как двумерный массив не является матрицей.
> И ЕЩЁ РАЗ ДЛЯ УПОРОТЫХ: Число, комлексн. число, квантернионы, вектора, матрицы, тензоры,...
> - МАССИВЫНе структуры (комплексн. число как структра из 2 union навскидку), не примитивные типы (число), а именно МАССИВЫ?
Обязательно целое как array of(binary coded decimal)?
Хорошо ли Вы подумали, уважаемый?
>Если уж так хочется дать компьютерный термин, то в большинстве языков общего назначения вектора, комплексные числа и матрицы реализуются в виде классовepicfacepalm.png.gz
Нет, прав был дедушка Дейкстра. Computer science - это одно из сложнейших направлений прикладной математики, и плохим математикам лучше оставаться математиками.
Деточка, ты ведь даже не понял, о чем я говорил, а лезешь советовать. Программирование на уровне "комплексные числа это вектор, а вектор это массив" серьезно уступает по сложности математике последних классов средней школы. Первый курс мехмата таким погромистам просто мозг разорвет. А Computer science это отнюдь не то, чем вы занимаетесь.
Понты тут кидать не надо, для выпускника университета это унизительно должно быть. Ты давай предметно покажи, почему вектор - не массив, а комплексные числа нужно представлять классом и ни в коем случае не как массивом.На закуску:
#include <complex.h>
#include <stdio.h>int main(void)
{
double complex test = 5.0 + 2.0 * I;
printf("Real: %f, Imag: %f\n", creal(test), cimag(test));double *array = (double *) &test;
printf("Real: %f, Imag: %f\n", array[0], array[1]);return 0;
}Результат:
Real: 5.000000, Imag: 2.000000
Real: 5.000000, Imag: 2.000000Где твой бог теперь?
Ну и что ты показал? Что C/C++ позволяет на низком уровне работать с памятью и одним переменным присваивать адреса других? Так это ни для кого не секрет. Или ты хотел показать, что к последовательно лежащим в памяти переменным можно обратится как к массиву?Если ты вдруг забыл, то речь шла о комплексных числах, прочитай в вике, что это такое и какими свойствами они должны обладать. А потом попробуй хотя бы сложить или перемножить две переменных, которых ты определил как double *.
Ну и настоятельно рекомендую заглянуть в реализацию complex и задуматься, почему нужно было все это делать, если согласно умникам достаточно было просто объявить массив.
>А потом попробуй хотя бы сложить или перемножить две переменных, которых ты определил как double *.Вот, смотри, складываю A и B и записываю результат в C:
C[0] = A[0] + B[0];
C[1] = A[1] + B[1];Ты от вопроса-то не уходи. Ты говорил, что вектор - это не массив? Ты говорил, что комплексное число - не вектор? Говорил. Но никаких обоснований, кроме "я математик, а ты дурак, иди читай википедию", от тебя так и не было.
> Ты от вопроса-то не уходи. Ты говорил, что вектор - это не массив?
> Ты говорил, что комплексное число - не вектор? Говорил. Но никаких обоснований,
> кроме "я математик, а ты дурак, иди читай википедию", от тебя так и не было.Это будет означать, что он зря закончил Одесский универ., он с этим не смерится. :D
Ты прикидываешься дураком или реально не понимаешь? Не видишь разницу между сложением массивов и сложением отдельных элементов массива, то бишь сложением скаляров? Просто хранить циферки в ячейках памяти совсем недостаточно, нужен определенный набор операций, которые над ними можно произвести. Именно набор операций определяет что перед нами - массив, вектор, комплексное число или еще какая сущность. А без этого будут просто биты в ячейках памяти, ну или прыжки электронов в полупроводниках или вообще флуктуации вакуума, смотря до какого уровня опускаться.
>Ты прикидываешься дураком или реально не понимаешь?Учитывая вот это и общие затруднения в выражении и аргументировании собственной точки зрения, я считаю, что Одесский Государственный Университет может гордиться своим выпускником.
>Не видишь разницу между сложением массивов и сложением отдельных элементов массива, то бишь сложением скаляров?
Это тут при чем вообще? Ты просил "сложить или перемножить две переменных, которых ты определил как double *", вот я и сложил их.
>Просто хранить циферки в ячейках памяти совсем недостаточно, нужен определенный набор операций, которые над ними можно произвести
Определи функцию add_complex_numbers(double*, double*, double*) и еще какие тебе нужны. Можешь даже еще заtypedefить double* на my_complex_t, вообще красота будет.
>Именно набор операций определяет что перед нами - массив, вектор, комплексное число или еще какая сущность
Это очень голословное и спорное утверждение. Обосновывай.
Ну и про то, что вектор - не массив и пр., я так и не услышу объяснений?
>>Ты прикидываешься дураком или реально не понимаешь?
> Учитывая вот это и общие затруднения в выражении и аргументировании собственной точки
> зрения, я считаю, что Одесский Государственный Университет может гордиться своим выпускником.Если ты, в отличии от большинства, не понимаешь моей аргументации, то чьи это проблемы? Да, при желании я могу опустится до очень низкого уровня знаний и разжевать хоть ядерную физику ученику младших классов. Вот только нормально это сделать можно только при устной беседе, так как там на выяснение уровня знаний собеседника и его основных заблуждений уходит от пары минут до получаса. А в форумной переписке на это могут уйти недели.
И между прочим заданный мной вопрос является именно вопросом, а не оскорблением. У меня нет желания тратить время на человека, который хочет просто поспорить, а не прояснить для себя непонятное.
>>Именно набор операций определяет что перед нами - массив, вектор, комплексное число или еще какая сущность
> Это очень голословное и спорное утверждение. Обосновывай.Это придется начать примерно со средних классов школы и идти где-то до второго курса университета. И это будет не столько обоснование, сколько объяснение того, что такое математика вообще и как она строится. Извини, но пока ты не ответил на мой вопрос, делать этого я не буду.
> Ну и про то, что вектор - не массив и пр., я
> так и не услышу объяснений?Я уже несколько раз объяснил. Попробую еще одним способом, но это уже последний раз. Для доказательства тождественности требуется показать, что первая сущность всегда является второй и наоборот. Однако мы можем показать полностью обратное.
1. Вектор может быть удобно представлен без массивов вообще. Например структурой/хешем/записью. То бишь если у нас есть вектор, то вовсе не обязательно его данные хранятся в виде массива.
2. Массивы могут хранить не данные вектора, а какие либо другие. Например массив символов. То бишь, если перед нами массив, то вовсе не обязательно, что в нем данные вектора.
Получается правильный вопрос будет, не чем они различаются, а что вообще есть общего у вектора и массива?
>Если ты, в отличии от большинства, не понимаешь моей аргументации, то чьи это проблемы?Очень удобно приплести какое-то "большинство" и говорить от его имени, только это все демагогия, к тому же в этом треде с тобой не согласился далеко не я один. Я еще раз повторюсь: вся твоя аргументация сводится к "ты дурак, а я закончил университет". Изложить свою точку зрения кратко по этому вопросу вполне возможно и без заскоков вроде "придется начать примерно со средних классов школы".
>Я уже несколько раз объяснил.
Где?
>Для доказательства тождественности требуется показать, что первая сущность всегда является второй и наоборот. Однако мы можем показать полностью обратное.
>skip1. Вектор может быть удобно представлен без классов вообще. Например структурой/хешем/записью (или массивом, лол). То бишь если у нас есть вектор, то вовсе не обязательно его данные хранятся в виде объекта класса.
2. Объекты могут хранить не данные вектора, а какие либо другие. Например массив символов. То бишь, если перед нами объект, то вовсе не обязательно, что в нем данные вектора.
Получается правильный вопрос будет, не чем они различаются, а что вообще есть общего у вектора и класса?
Ну и сказать то этим что хотел? Или ты придумал за меня утверждение "вектор это класс" и героически его опроверг? Ну поздравляю, успехов в сражении с ветряными мельницами.
> Если ты вдруг забыл, то речь шла о комплексных числах, прочитай в викеТочно идиот
---
Геометрическая модельГеометрическое представление комплексного числа
Рассмотрим плоскость с прямоугольной системой координат. Каждому комплексному числу z=x+iy сопоставим точку плоскости с координатами {x,y}
(а также радиус-вектор, соединяющий начало координат с этой точкой). Такая плоскость называется комплексной (или плоскостью Аргана).
Вещественные числа на ней занимают горизонтальную ось, мнимая единица изображается единицей на вертикальной оси; по этой причине
горизонтальная и вертикальная оси называются соответственно вещественной и мнимой осями.Часто бывает удобно рассматривать на комплексной плоскости также полярную систему координат, в которой координатами точки являются
расстояние до начала координат (модуль) и угол радиус-вектора точки (показанного синей стрелкой на рисунке) с горизонтальной осью (аргумент).В этом наглядном представлении сумма комплексных чисел соответствует векторной сумме соответствующих радиус-векторов.
При перемножении комплексных чисел их модули перемножаются, а аргументы складываются. Если модуль второго сомножителя равен 1,
то умножение на него геометрически означает поворот радиус-вектора первого числа на угол, равный аргументу второго числа.
Этот факт объясняет широкое использование комплексного представления в теории колебаний, где вместо терминов «модуль» и «аргумент»
используются термины «амплитуда» и «фаза». Геометрическая модель комплексных чисел широко используется в планиметрии: многие планиметрические
теоремы можно доказать как некоторые комплексные тождества. Часто этот метод даёт наиболее простое доказательство.
Пля, мы это ещё в первом семестре учили, мож на втором.
Дальше... Комплексное число - это, следует из его названия, - составное число, для его представления в компьютерах используются
составные объекты: массивы, структуры, объединения, классы, ... Самым простейшим из них является МАССИВ. Если тя в попу клюнуло,
и хочется Im z сделать float, Re z - int, то создаёшь структуру, и дальше по мере усложнения. Хоть язык свой напиши, на простр-ве ℂ
Может вам и объясняли, но ты похоже так и не понял, что геометрическая модель комплексного числа не есть комплексное число. Про идиота ты очень самокритично заметил, но не расстраивайся, просто математика это не твое, но ведь есть другие области, IT например.
> Деточка,"... ваше место возле ... "©
> Комплексные числа это ни разу не вектор и обычным массивом не являются.:popcorn:
Где таких математиков учат, можно узнать? Ну чтоб на работу случайно не принять.
Без проблем. Одесский Государственный Университет, факультет классической математики. Можешь не переживать, на собеседовании мы точно не встретимся.
> факультет классической математики.На, там читай, надоел ..
http://ru.wikipedia.org/wiki/%D0%92%D0%B...
Векторное (линейное) пространство — это математическая структура, которая формируется
набором элементов, называемых векторами, для которых определены операции сложения друг
с другом и умножения на число — скаляр. Введённые операции подчинены восьми аксиомам.
Скаляром же может являться элемент вещественного, комплексного или любого другого поля
чисел.Заодно и тут, узнаешь, что такое кватернион и ваще гиперкомплексные числа.
http://ru.wikipedia.org/wiki/%D0%9A%D0%B...
Ну можно немного схитрить :)$ cat dummy_play.sh
#!/bin/bash
python -c 'print "Hello world"
'
$
Чем оно лучше zsh?
mksh лутше
факториал 20 подсчитает верно?
> факториал 20 подсчитает верно?за каким для этого нужон что тот что этот? :-)
чтоб сравнить тот и этот в одной задаче))
Еще графические примитивы туда добавить.
Забавно, только сегодня обнаружил баг с крашем в BASH_4.2.45
Нужно будет проверить на 4.3
> Забавно, только сегодня обнаружил баг с крашем в BASH_4.2.45
> Нужно будет проверить на 4.3описать, конечно, лапки отсохнут.
Когда я писал пост, я пока не нашёл в чём проблема.
Вот пример
создаём пайпmkfifo /tmp/test.fifo
создаём петлю в скрипте
#!/bin/bash
fifo=/tmp/test.fifo
while [ -p "$fifo" ]; do
read -t0 line <>$fifo
doneЗапускаем петлю, и в другом терминале пытаемся писать в пайп
echo "bla-bla-bla" > /tmp/test.fifo
получаем краш второго терминала, там где пытаемся писать в пайп.
Проверил на bash_4.3 так же. Заметил что краш проиcходит только на 64-битных системах.
Пока дальше ковыряюсь.. >_>
UPD:
Более простой пример:
создаём пайпmkfifo /tmp/test.fifo
пишем в пайпecho "test" > /tmp/test.fifo- так как никто не читает, то echo у нас не завершается.
Во втором терминале читаем с таймаутом в 0read -t0 <>/tmp/test.fifoи у нас крашится первый терминал с "echo".
Если читаем с таймаутом 1 то всё отрабатывает нормальноread -t1 <>/tmp/test.fifo, тут мы прочитаем то что передаёт echo, и echo завершается корректно.
вот же люди, а! ничего в руки нельзя дать — сразу поломают! ;-)
> skippedДзззз...кряк! - сказала японская бензопила, и не смогла перепилить рельс...
Аааа, бл$я! - сказали сибирские лесорубы...
> Дзззз...кряк! - сказала японская бензопила, и не смогла перепилить рельс...
> Аааа, бл$я! - сказали сибирские лесорубы...Нууу.. на самом деле как то так и есть, т.к. я пишу игровой сервер на баше ;)
А в zsh все работатет.