русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Методологические вопросы прикладной статистики


Дата добавления: 2014-09-25; просмотров: 787; Нарушение авторских прав


 

· Алгоритмический язык TP ориентирован на работу в среде MS-DOS.

Базовый язык Pascal разработан Н.Виртом (1968) как язык обучения программированию. Все реализации языка унаследовали принципы, позволяющие разрабатывать читабельные, структурные, надежные и эффективные программы.


 

· В основе этих принципов заложена концепция типа данных, которую можно сформулировать следующим образом:

1)каждая переменная, константа, выражение и функция относятся к определенному типу данных;

2)тип данных задается явно;

3)над данными каждого типа допустимы определенные операции.

· Язык Pascal называют языком со строгой типизацией данных. Строгая типизация данных требует некоторых дополнительных затрат от разработчика программы на этапе проектирования и реализации на алгоритмическом языке, однако эти затраты окупаются на стадии отладки и модификации программы, поскольку у компилятора имеется возможность более детального синтаксического анализа исходного текста во время компиляции и создания машинного кода, способного более строго контролировать корректность операций на шаге выполнения.

· Каждая реализация языка ТP является расширением базового (стандартного) языка Pascal. Для того чтобы создавать мобильные программы, необходимо в данной конкретной реализации отличать средства, относящиеся к стандарту, и возможности, относящиеся к расширению стандарта.

· Программа - цепочка символов, слова, разделители, пробелы.

· Программа - последовательность предложений (вложенность)

· Структура программы: [Заголовок], секция описаний, секция действий.

· Алфавит языка TP содержит прописные и строчные буквы латинского алфавита (буквой считается символ подчеркивания "_"),

цифры от 0 до 9,

символы + - * / = > < ( ) [ ] { } . , ; : ' @ # ^ $ и пробел.



· К элементам языка относятся:

идентификаторы - имена переменных, констант, процедур, функций и т.д., зарезервированные (или ключевые) слова,

стандартные идентификаторы (предопределенные имена)

специальные символы - комбинации символов алфавита.

· Идентификатором в TP может быть любое слово, состоящее из букв и цифр, начинающееся с буквы. Компилятор не различает прописные и строчные буквы, кроме того, следует иметь в виду, что компилятор анализирует лишь первые 63 символа идентификатора.

· Все зарезервированные (ключевые) слова алгоритмического языка следует помнить, поскольку нельзя использовать в программе идентификаторы, совпадающие с ключевым словом. В списке ключевых слов значком "+" помечены слова, не используемые в стандарте языка Pascal:

 

and   Mod shr+
asm file Nil string+
array for Not then
begin   object+ to
case function Of type
const goto or unit+
constructor+ if packed until
destructor+ implementation+ procedure uses+
div in program var
do inline+ record  
downto interface+ repeat while
else   set with
end label shl+ xor+

 

· Стандартные идентификаторы могут быть переопределены в программе, однако при этом теряется возможность использования соответствующих предопределенных средств. Например, в программе можно описать переменную "sin", но доступ к стандартной функции синуса будет закрыт в области действия этой переменной.

· Специальные символы обозначают следующие элементы языка:

+ - * / - арифметические операции;

+ - * - операции над множествами;

= < > <= >= <> - отношения;

:= - присваивание;

. - конец программы, составной идентификатор, селектор поля записи;

, - разделитель элементов списка;

: - используется при описаниях;

; - разделитель операторов языка;

.. - диапазон;

[ ] или (. .) - селектор элемента массива;

{ } или (* *) - скобки для выделения комментариев;

+ - операция конкатенации строк

# - обозначение символа по его коду;

@ - обозначение адреса переменной;

$ - обозначение директивы компилятора или шестнадцатеричной константы;

^ - обозначение указателя.

· Комментарии { } (* *)

· Классификация типов данных:

 

· О совместимости типов данных.

TP - язык со строгой типизацией данных. Это означает, что во время выполнения программы производится проверка справедливости (допустимости) выполняемых операций. Строгая типизация налагает определенные ограничения, которые объединены понятием совместимости типов данных. В основном программист должен сам предвидеть и обеспечивать явное преобразование типов данных там, где это необходимо. В TP явное преобразование типа данных осуществляется по схеме NewType(value), где значение value будет преобразовано к новому типу данных NewType.

Однако существуют ситуации, когда происходит неявное преобразование типов. Эти ситуации реализуются в операциях, при присваивании, при передаче параметров и регламентированы законами совместимости.

· В TP выделены три вида совместимости типов данных, и каждый вид предоставляет определенные возможности по совместному использованию данных. Два типа данных могут характеризоваться как одинаковые, совместимые по операциям (или просто совместимые) и совместимые по присваиванию.

· Две переменные относятся к одинаковым (эквивалентным) типам, если описания переменных:

а)ссылаются на одно и то же имя типа;

б)ссылаются на различные имена типов (пусть Т1 и Т2), которые в разделе описания типов объявлены идентичными (TYPE T1=T2);

· Бинарные операции могут быть выполнены над операндами, относящимися к совместимым (по операциям) типам данных. Два типа совместимы (по операциям), если:

а)типы одинаковы (эквивалентны);

б)оба типа целые или оба типа вещественные;

в)один тип есть диапазон другого, или оба есть диапазоны от третьего;

г)оба типа - строка (STRING);

д)один тип - строка, а другой - ARRAY[1..n] of CHAR, или просто CHAR;

е)оба типа - множества с совместимыми по операциям базовыми типами;

ж)один тип - ссылочный, другой бестиповый указатель;

з)оба типа - процедурные типы с одинаковым числом параметров, типы которых соответственно эквивалентны. Для функциональных типов необходима еще и эквивалентность типов результатов.

и)Считается, что каждый объект типа "множество" совместим с пустым множеством и каждый объект типа "указатель" совместим с константой NIL.

· Величина может быть присвоена переменной, если их типы совместимы по присваиванию. Выражение f типа F называется совместимым по присваиванию с переменной w типа W, если :

а)F и W - эквивалентные, не файловые типы (и не содержат файловые типы в качестве полей);

б)оба типа - совместимые ординарные типы и значения выражения f попадают в диапазон допустимых значений типа W;

в)оба вещественные типы и значение выражения f допустимо для типа W;

г)W - вещественный тип , F - целый;

д)W - строка, F - либо строка, либо символ, либо массив символов;

е)W и F - совместимые множественные типы, причем множество f целиком входит во множество W;

ж)W и F - совместимые ссылочные типы или совместимые процедурные типы;

з)W - процедурный тип, а f - имя процедуры или функции (параметры и типы должны быть согласованны);

и)W и F - объектные типы, причем тип F потомок типа W, либо оба типа ссылочные на совместимые объектные типы.

 

Хотя формулировки совместимости типов представляются довольно громоздкими, в их основе лежит простой здравый смысл. Разрешены действия, приводящие к естественному осмысленному результату без потери информации (или точности). Все операции округлений и усечений должны быть предусмотрены разработчиком программы и кодироваться явно.

 

Методологические вопросы прикладной статистики

«Зрелость науки обычно измеряется тем, в какой мере она использует математику. Сама же математика не является наукой в эмпирическом смысле, но представляет собой формальную логическую, символическую систему, своего рода игру знаков и правил», — так начинает С.С. Стивене известный психолог в своей книге «Экспериментальная психология».

Наиболее естественным путем, которым математика проникает в психологию, являетсяматематическая статистика.

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

1) доказывать правильность и обоснованность используемых методических приемов и методов;

2) строго обосновывать экспериментальные планы;

3) обобщать данные эксперимента;

4) находить зависимости между экспериментальными данными;

5) выявлять наличие существенных различий между группами испытуемых (например, экспериментальными и контрольными);

6) строить статистические предсказания;

7) избегать логических и содержательных ошибок имногое другое.

 

Следует заметить, что нельзя переоценивать значение математики (статистики) в психологии. Сама по себе статистика – это только инструментарий, помогающий психологу в сложном экспериментальном материале. Наиболее важным в любом эксперименте является четкая постановка задачи, тщательное планирование эксперимента, построение непротиворечивых гипотез.

При разработке и применении методов прикладной статистики необходимо опираться на четкие методологические принципы, разработанные поколениями специалистов. Рассмотрим некоторые из них.

Разработка и применение методов прикладной статистики предполагает последовательное осуществление трех этапов исследования.

Первый - от исходной практической проблемы до теоретической чисто математической задачи.

Второй – внутриматематическое изучение и решение этой задачи.

Третий – переход от математических выводов обратно к практической проблеме.

В области моделирования задач прикладной статистики, как, впрочем, и в иных областях применения математики и кибернетики, целесообразно выделять четверки проблем:

ЗАДАЧА – МОДЕЛЬ - МЕТОД - УСЛОВИЯ ПРИМЕНИМОСТИ.

Обсудим каждую из только что выделенных составляющих.

Задача, как правило, порождена потребностями той или иной прикладной области. Вполне понятно, что при этом происходит одна из возможных математических формализаций реальной ситуации.

Задача может быть порождена также обобщением потребностей ряда прикладных областей.

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

В соответствии с поставленной задачей строится (или выбирается из арсенала уже известных) модель,которая в наибольшей мере подходит для решения поставленной задачи.

Математическая модель –это система математических соотношений, приближенно, в абстрактной форме описывающих изучаемый процесс или систему; это отражение оригинала в виде функций, уравнений, неравенств, …

Одна и та же математическая модель может применяться для решения самых разных по своей прикладной сущности задач.

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

Ясно, что для решения той или иной задачи в рамках одной и той же принятой исследователем модели может быть предложено много методов. В настоящее время для решения практически важных задач могут быть использованы современные информационные технологии на основе метода статистических испытаний и соответствующих датчиков псевдослучайных чисел. Они уже заметно потеснили асимптотические методы математической статистики. В проблеме однородности для проверки одной и той же гипотезы совпадения функций распределения, например, могут быть применены самые разные методы – Смирнова, Лемана - Розенблатта, Вилкоксона и др.

Наконец, рассмотрим последний элемент четверки - условия применимости. Он - полностью внутриматематический. С точки зрения математика замена условия (кусочной) дифференцируемости некоторой функции на условие ее непрерывности может представляться существенным научным достижением, в то время как прикладник оценить это достижение не сможет. Для него, как и во времена Ньютона и Лейбница, непрерывные функции мало отличаются от (кусочно) дифференцируемых функций. Точнее, они одинаково хорошо (или одинаково плохо) могут быть использованы для описания реальной действительности.

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

Математики и прикладники. Таким образом, в настоящее время наблюдается значительное расхождение интересов "типового" математика и "типового" прикладника. Конечно, мы рассуждаем здесь, строя гипотетические модели восприятия и поведения того и другого. Опишем эти модели более подробно.

Прикладник заинтересован в научно обоснованном решении стоящих перед ним реальных задач. При этом при формализации задач он готов принять достаточно сильные математические предположения. Например, с точки зрения прикладника случайные величины могут принимать конечное множество значений, или быть финитными, или иметь нужное математику число моментов, и т.д. Как говорил А.Н. Колмогоров, переход от дискретности к непрерывности для прикладника оправдан только тогда, когда этот переход облегчает выкладки и расчеты, как в математическом анализе переход от сумм к интегралам облегчает рассуждения и вычисления. Если же при переходе к непрерывности возникают сложности типа необходимости доказательства измеримости тех или иных величин относительно тех или иных сигма-алгебр, то прикладник готов вернуться к постановке задачи с конечным вероятностным пространством. Здесь уместно напомнить, что один из выдающихся вероятностников ХХ в. В. Феллер выпустил свой учебник по теории вероятностей в двух книгах, посвятив первую дискретным вероятностным пространствам, а вторую - непрерывным.

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

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

 



<== предыдущая лекция | следующая лекция ==>
Начало систематического изложения Turbo Pascal (TP) | Измерительные шкалы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.424 сек.