Дьяконов В.П. Maple 9.5 и 10 в математике, физике и образовании (1185901), страница 18
Текст из файла (страница 18)
Примеры этого творчества можно найти на сайте фирмы чча1ег!оо Мар]е. 2.3.6. Задание новых констант Следующий пример показывает, как можно определить новую константу я и ввести ее в список встроенных констант: > гуре!с,сопвгапг) ) > сопвсапгв:=сопвгапгв,9; сопя(апи:= /а/яе, у, о>, /гие, Са/а!ап, гА/.Е, и, е > гуре(с,сопвгапг) ггие 2.4.
Работа с размерными величинами 2.4.1. Пакет поддержки размерных величин цп)1в В некоторых областях науки и техники, например, в физике, широко используются размерные величины, у которых помимо их значения указывается единицы измерения. Довольно развитую поддержку таких расчетов обеспечивает пакет расширения г]п)15. Он содержит следующие функции (файл цпйв): > е1гп (опагв); )АИВаяеРпй, Аяй/Р1тепя/оп, АяЫВуягет, А~Ы1/пй, Сопчег)ег, Се/Р/тепя1оп, Се/Р/тепя/опя, Се/5улет, Яе/Яуягетя, Се/1/пй, Се/1/пйя, НаяР1тепя)оп, Наябумет, Ная//пй, 1)/а)ига/, ВеточеР!тепягоп, Кеточе.яуя/ет, 5/апс)агс), 1/пй, 1/яеСоп/ехи, 1/яеБуя/ет, 1/ягпеСопгех1я, 1/ягпб5уя/ет) Большинство функций этого пакета достаточно просты и даже очевидны.
2.4.2. Примеры работы с размерными величинами Ограничимся несколькими характерными примерами их применения (файл цп))в): > сопчегс (4. 532, пп1Гв, И/е" 2, 11)>*ГГ/в" 2] /ге" 2]; 3.045363395 12б Глава 2. Типы дапиьсг и работа с ними > сопнегг (и, оппепвгопв), сопнегг (и, оаеепвгопв, ьаве); )ебб)Ь» тов) роиег, пее > еасЬ(0паив(БГапг)аго)): > огвсапсе := 5.5'()пгг(гг) + 2.4*исае(о): с)12иопсе:= 3.466800000 [го[ > Йогсе:= с)гвсапсе*()па и(1Ь) /Бпгй(в) "2; апогее:= 1.572514028 [Я > сопнегс(госсе, спаса, 1Ьг]; .3535152166 [/ЬГ[ > Ч := г*В; 137 3.4.
Работа е размерными величинами 2.4.4. Пакет научных констант вс1епЕ1г1ссопвьапсв Еше в Мар(е 8 был добавлен пакет расширения для добавления и применения научных констант, химических элементов и свойств, что резко расширяет возможности прил(енения системы в физических и химических расчетах. Вызов пакета Бс(еп(1((ССопв(ап1з осуществляется командой: > илгь(эс1епг1г1ссопвгапгв)г Иагп1по, гье паве Е1егоепг Ьав Ьееп геЬоппс( '(А(/г/Сопл/алг, Аг/г/Е/ел(ел/, Аг/г/Ргореку, Сопзгапг, Е/еглепг, Се/Сопл/оп/, Се/Сопл/англ, Се/Е/етеп/„Се/Е1етепи, Се/Еггог, Се/Ьогорез, Сегргорегг/ез, Се/Ргореггу, Сег(/и/г, Се/Уа/ие, НазСолвгапг, НазЕ!етепг, Назргорепу, Мой~уСопзгапг, МоЯуЕ/етеп/') Нетрудно заметить.
что функции пакета обеспечивают следующие возможности для констант (Сопз(ап1), элементов (Е(егпеп() и свойств (Ргорепу): ° АсЫ вЂ” добавление; ° Сое1 — вывод; ° Нав — проверка на наличие объекта в пакете; ° Мо0((у — модификация. Функция сеГЕггог(вс оЬ)) возвращает значение ошибки, с которой задана константа — объект зс оЬ). Знание ошибки существенно при организации критичных к ошибкам научно-технических расчетов. 2.4.5. Работа с научными константами Вызов всех научных констант осуществляется следующим образом (файл всопз(): > и1гь(яс1епгИ1ссопвгапгв)г > Оессопвсапсв()г Е„, Р, С, Со, Кг Ма„а, Мв,, //и Фо, Л' Дтт, Лк* Д ' ) ' Ео' ио' и ' ио' ~' т„, т, т, т, т,)г.)г .)г,)гг)гг)г,)г,)г, пт рптео, ти роте, и, г .
о, о, о/Ета рг/то . г о' г ' г и л Теперь уточним данные по константе 8 — ускорению свободного падения: > Сопвсапг( я ) г Сопл(ап((8) > бег)га1пе( % ) г сегпп11( оо ); 9.80бб5 % 128 Глава 2. Типы данных а работа с ними > оп1гв:-овьпчэувгев() > Сопвеапе( д, оп1ев ) ~т1 Соле)ол)з) (б )~ — ~ Ы А теперь проверим, есть ли в пакете константы я и е(5ц > навсопвгапг(9)) )гие > навсопвгапг(еап)) Га1)е и вычислим погрешность„с которой задана константа С): > оегвггог (Сопвгапе (О) ) ) 0.11 10-)1 2.4.6.
Вызов списка и свойств химических элементов Для вызова имен всех элементов периодической таблицы Менделеева можно использовать следующую команду: > ОеГЕ1елепгв(); Н,Не,2л', Ве, В, С,Ф,О, Р, №,Фа,Ме,А1,%, Р, В,О,Аг,К, Са, Юс, ТК )), Сг,Мл, Ре, Со,№, Си,Ъ), 6а,Ое,А), Яе, Вг, Кг, ВЬ, Яг, У,Ъ;ФЬ, Мо, Тс, Ви, ВЬ, Рг),Ае, Сд,!п, Бл,ЮЬ,Те,),Хе, Сз, Ва,7а, Се, Рг, Фд, Рт, Вт, Еи, Сб, 7Ъ,27у, Но, Ег, Тт, УЫ.и,НЯ Та,%, Ве, 0),1г, Р),Аи, Не, Т1, РЬ, В1, Ро, А), Яп, Рг, Ва, Ас, ТЬ, Ра, К Фр, Ри, Ат, Ст, ВЬ, С7; Ез, Рт, Мд, Фо, 7.г, Щ ЮЬ, Ве, ВЬ, Нк М), (7ип, Уии, ииь,и 7,()иЬ А теперь выведем характеристики элемента А — алюминия: > ОеГЕ1елепе( а1, паве, ве1гьпчроьпе, Ьо111пэроьпе )) 13, пате = а!иттпит, те!)(перо(п) = 1уа)ие = 933.47, ипсег)от)!у = ип))есле)), итув = К1, Ьо)блеро!и) = 1иа)ие = 2792., илсепат)!у = ип))е!н)е)), ипйз = К] 2.4.7. Применение пакета всеепеье1ссопвеапев В справке системы Мар1е 9.5 можно найти примеры применения пакета Бс)- еп(1))ССопз(ап(е в химических и физических расчетах.
Интересные примеры таких расчетах даны в документе «Арр!)са(юпв о(' ())е Бс)еп(16ССопз(ап(з Рас)(аде». На рис. 2.14 показано начало этого документа, в котором содержится пример на вычисление количества молекул. которое необходимо для получения 1О граммов вещества с химической формулой С,Н,О. Вначале математически синтезируется молекула этого вещества, ее вес конвертируется в систему единиц Я и в конце находится число молекул вещества. 229 2 4. Работа с размериыми ееличииами ~в) х) Гв( х! си ссс ссс мс а ос с с хор 1П!1!Э!!АЙ!!ОГ) 1> сиасагс: ! > сг11(с(воаос11111с Соиагасс(5! Глс(с(со сгоснли(ЕГсисп(ЛУРгоусг(и Сог соаг.
Е)еюеи, СиСопиоп! Осссоплогсс. Ое(Ейсасхг Ос(Е(спасе!с, ОиЕоо, Оссйсеоус . О (Егоуегсис. Ое(Ргоусиг!и Осе(п)ш, Оиио! с Носсопсссспс, иоаЕ(юпспс„)(псугоусгсу НооЯ"осе!оп!, 1(ой~уЕ(егпе с) -; Мо!еси! аг ЪУе!дЫ 'Г Нои ипру иоис~лсс оГ ассссис агс и а 10 Гсаи сипр(с) 'П» сЬетяса) (испо)а Гог «ссп с и С) ГГ~ О 'Пас. йс пи)си(ас ссс4а сс > 3 и1с сии( ( О, а(си( еГЧ)сс ) 6*Е1оисп( ( И, сеоисоыо1ЧГ С ) Е и М ( О, ..,! ...,;.'...,.,„:,,'...;,...,, .'„...,,, „, ',',;,, „...,„.о Глава 2. Тины банных и работа с ними Приведенный документ является наглядным примером создания в среде Мар1е электронных документов, уроков и книг.
Он построен с применением открывающихся и закрывающихся ячеек. Читателю, всерьез работаюшего с системой Мар1е стоит приучить себя готовить свои документы в таком же стиле — средства для этого были описаны в Главе 1. В другом примере (рис. 2.15) вычисляется энергия ионизации вещества и строится график ее зависимости от порядкового номера элемента вещества в таблице периодической системы элементов. График наглядно демонстрирует характерные почти периодические колебания энергии ионизации. 2.5. Функции для работы со строковыми данными 2.5.1. Создание и применение строковых данных Строки как тип данных — это просто цепочки символов.
Они обычно используются лля создания текстовых комментариев, имен переменных и символьных выражений. Строки комментариев должны каким-либо образом выделяться, чтобы Мар1е не отождествлял их с именами констант и переменных. Для этого строки-комментарии имеют внутренний разделительный признак, который устанавливается при их вводе (нажатием клавиши Р5, которое приводит к исчезновению знака >). В других случаях последовательность символов рассматривается как строка, если она заключена в двойные кавычки — знаки ", апострофы ' и в обратные апострофы '.
Два апострофа подряд формируют апостроф как знак символьной строки. например 'аЬс"беГ дает строку аЬс'г)еб Любое математическое выражение может входить в строку и, разумеется, оно при этом не выполняется. Например: > 2+2 не всегда ''четыре'''; 2+2 не всегда 'четыре' 2.5.2. Неисполняемые программные комментарии Часто возникает необходимость в задании программных комментариев. Любой текст после знака й в Мар1е рассматривается как не выводимый (неисполняемый) программный комментарий — даже если это математическое выражение. При этом он не вычисляется. Например: 2+3;аэто пример.
А етс выражение не вычисляется: 4+5 Комментарии полезны в программах на Мар!е-языке и обычно используются для объяснения особенностей реализованных алгоритмов. 2.5.3. Контроль типа строковых данных Мар1е имеет несколько форм задания строковых и символьных. Обычные строковые данные представляются совокупностью любых символов.
заключенных в двойные кавычки. например "Привет" или "2+2". Не следует пугать двойные кавычки с апострофами и обратными апострофами. Апострофы задают отложенные вычисления лля выражении, а обратные апострофы задают символическое имя для переменных. 2.5.
Фуикции дея работы со строковьиии даниыми Для контроля объектов на принадлежность к строковым данным служит функция (уре с параметром а(ппд (файл з(ппя): > ягг:= "Не11о!"; я)г:= "Недо!" > Суре(Не11о,ясг1по)г гойе > суре(ягг,ясгьпо)г ггие > Суре(2+З,ясгьпч) )а(яе > суре ("2+3", ясг1по) ) ггие > спаг:=аг сааг:= а > спаг:='а' с))аг:= а Нетрудно заметить, что только при заключении строки в кавычки тип строки определяется как строковый.
В строках могут быть символы кириллицы. но гарантии в правильности обработки таких символов нет — надо мириться с тем, что Мар!е — англоязычная программа, и ее возможности в поддержке других языков ограничены. 2.5.4. Интерактивный ввод строк Для интерактивного ввода строк можно использовать (Ьункцию геа()1(пе((11епап)е), задав в качестве имени файла (еггп)па) или опустив имя файла.
В этом случае ввод строки осуществляется с клавиатуры компьютера: > я:=геаа11пе()г > Привет мой друг! к="Привет мой друг)" Полезно обратить внимание на то, что запрос в ходе интерактивного ввода может быть сделан на русском языке (если установленный для запросов шрифт имеет символы кириллицы). Нужно также, чтобы и шрифт строки вывода содержал кириллицу, иначе в строке вывода будет типичная «абракадабр໠— смесь непонятных символов. 2.5.5. Обработка строк Имеется ряд функций для работы с обычными строками.
Из них наиболее важны следующие: 1епдЫ(а(г) — возвращает число символов, содержащихся в строке в(г; ацЬа(ппд(а(г,а..Ь) — возвращает подстроку строки в(г от а-го символа до Ь-го; ,ГЗг Глава 2. Типы банных и работа с ними са((в1г1,в1г2,...) — возвращает строку, полученную обьединением строк в1г1, в1г2,... (альтернатива — оператор конкатенации в виде точки .); Зеагс))Тех((в,в(г) — производит поиск подстроки в в строке в(г и при его успехе возвращает номер позиции в в строке в(г (при отсугствии в в в(г функция возвращает О).