Реферат: Реализация алгоритма на ЭВМ
💣 👉🏻👉🏻👉🏻 ВСЯ ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻
Здесь мы рассмотрим проблему реализации алгоритма на ЭВМ. Однако, прежде введем ряд понятий.
Определение 9.1. Программа - алгоритм, представленный в форме пригодной для его восприятия и выполнения ЭВМ.
Определение 9.2. Алгоритмический язык - формальная алгоритмическая система, предназначенная для реализации алгоритмов на ЭВМ.
Итак, в чем суть рассматриваемой проблемы? Программа, т.е. реализация алгоритма на ЭВМ, должна удовлетворять ряду требований:
не требовать больших затрат на подготовку к выполнению и хранение;
Преобразование алгоритма в форму программы человеком должно быть эффективным:
это должно требовать от человека разумных усилий, чем эти усилия меньше, тем лучше;
величину этих усилий обычно измеряют временем, необходимым для написания программы и количеством ошибок, допущенных при написании.
Программа должна быть легко читаемой и понимаемой разными людьми;
Программа должна быть эффективно проверяемой на корректность, т.е. отсутствие ошибок.
Требование 3 связано с тем, что программа, как правило, эксплуатируется не только ее автором. Поэтому, если в ходе ее эксплуатации у пользователя возникают вопросы, связанные с ее работой, то он, прочтя программу, мог бы найти ответы. Аналогичная ситуация возникает либо, когда мы хотим повторно использовать уже существующую, не нами написанную программу, как фрагмент в другой программе, либо когда нам необходимо модифицировать программу без ее автора. Другой важной причиной для требования ясности текста программы является обмен алгоритмами между людьми.
Ну и наконец, требование 4. Хорошо известно, что человеку свойственно ошибаться. Поэтому, даже когда мы записываем алгоритм, корректность которого была строго доказана, мы не можем гарантировать, что при перезаписи этого алгоритма в форму программы, мы не сделали ошибок, т.е. в программе нет ошибок. Корректность программы необходимо проверить.
Определение 9.3. Корректной будем называть программу, которая для любых исходных данных из множества допустимых исходных данных, дает правильный результат.
Подробнее мы рассмотрим понятия корректности программы, правильного результата позднее, в лекции 18.
Заметим, что под множеством допустимых исходных данных программы мы понимаем область применимости ее алгоритма, представленную в надлежащей форме.
Итак, алгоритм должен быть записан на алгоритмическом языке, чтобы быть исполненным. Сам алгоритмический язык должен быть с одной стороны понятен ЭВМ, а с другой - он должен быть достаточно выразителен для человека. Чтобы удовлетворять первому условию, алгоритмический язык должен иметь:
строго определенный синтаксис и словарь.
словарь должен содержать только те действия и типы данных, с которыми может работать ЭВМ.
Компьютер не может бегать, прыгать, плакать, смеяться, целоваться и т.д. Поэтому, в словаре алгоритмического языка не может быть таких действий.
Существуют сотни разных алгоритмических языков. Поскольку все они предназначены для записи алгоритмов, то естественно что они имеют много общего. При изучении понятия алгоритма мы уже выделили основные его компоненты:
данные, представленные константами и переменными;
тип данных, как множество возможных значений;
выражения, как действия, определяющие правило вычисления значения; Действия в выражениях называются операциями.
действия, изменяющие состояние вычислительного процесса, и называемые операторами.
К последнему пункту относятся действия, определяющие куда разместить полученные значения, и действия, определяющие порядок вычисления.
Написать программу на Pascal, вычисляющую сумму гармонического ряда, т.е. ряда вида . Эта программа представлена на рис. 9.1.
{ Программа Harmonic вычисляет сумму n первых членов гармонического ряда от 1 до п ;
1. varn, i : integer; {n - количество суммируемых членов ряда;
write (¢Введите п= ¢) ; {Приглашение к вводу}
readln (n) ; {Ввод исходных данных}
writeln (¢Сумма¢, п , ¢ членов гармонического ряда = ¢ ,s)
elsewriteln (¢Ошибка в исходных данных n должно быть >0¢)
Рис. 9.1. Программа для примера 9.1.
На этом рисунке строки 1 и 2 определяют набор используемых в программе переменных и их типы. Операторы в строках 3 и 4 обеспечивают ввод исходного значения n . Операторы в строках 5 и 6 определяют начальные значения надлежащих переменных перед входом в цикл. В строках 7 и 8 записан оператор цикла, организующий вычисление суммы первых n членов гармонического ряда. Последовательность действий i:=i+1; s:=s+1/i будет выполняться до тех пор, пока выражение i должна всегда стоять слева от символа := алфавита языка Pascal, а синтаксическая конструкция <выражение> - справа от него. Если мы теперь определим, что в каких-то случаях <переменная> есть <имя>, то тем самым мы определим синтаксис понятия "переменная", так как синтаксис понятия "имя" мы уже определили ранее. На семинарских занятиях Вы подробно ознакомитесь как с разными способами определения синтаксиса конструкций языка Pascal, так и с синтаксисом самих этих конструкций.
Несколько замечаний необходимо сделать о наборе символов, использование которых допускается в программе на языке Pascal. Наряду с символами латинского алфавита и цифрами в этот набор входит небольшое количество вспомогательных символов. Необходимо знать ограничения этого набора символов, определяемого стандартом ASCII - Американский Стандартный Код для Обмена Информацией.
В ASCII набор, например, не входят математические символы S, £, ", $ и т.д. Часто этот набор расширяют национальными алфавитами. Например, программисты в России должны иметь возможность писать комментарий по-русски.
Под семантикой той или иной языковой конструкции понимается ее смысл. Для примера рассмотрим фразу: "На столе лежит карандаш.". Мы знаем, какие объекты реального мира обозначаются словом "стол", какие объекты обозначаются словом "карандаш" и что обозначает слово "лежать". Заметим, что, например, слово "стол" обозначает сразу множество объектов реального мира, а не один какой-то конкретный объект.
Если мы увидим фразу: "Стол съел карандаш", то без дополнительных комментариев она для нас бессмысленна, так как объекты реального мира, обозначаемые словом стол, не могут ничего и никого съесть. Таким образом, конструкции языка могут быть корректны синтаксически, а семантически - нет.
Итак, семантика - это отображение, соответствие между конструкциями языка и объектами из некоторого множества объектов, называемого миром или Universum. Так, в примере со столом, когда фраза, пусть даже синтаксически правильная, описывала ситуацию, не согласующуюся со здравым смыслом (столы не могут никого/ничего есть), мы рассматривали эту фразу как бессмысленную, т.е. семантически не корректную. Что же это означает применительно к языкам программирования?
Вспомним, что всякому алгоритму соответствует множество вычислительных процессов. Всякий вычислительный процесс - это цепочка состояний множества всех переменных этого алгоритма, а действие или шаг алгоритма определяет переход из состояния в состояние.
Поскольку программа - суть алгоритм, оформленный должным образом, то все вышесказанное справедливо и по отношению к программе. Вернемся к нашему примеру 9.1 и рассмотрим выполнение этой программы для n=5.
После выполнения строки 4 переменная n примет значение 5, а значения переменных s и i будут неопределенными. Обозначим это состояние так - (5, ", "). После строки 5 мы получим состояние (5, ", 0), затем (5, 1, 0). Вся последовательность состояний приведена на рис 9.3.
Поскольку всякой программе соответствует множество вычислительных процессов, то всякий оператор определяет переход из множества состояний в множество состояний. Особенности, специфика этого перехода и составляет смысл, семантику этого оператора.
Название: Реализация алгоритма на ЭВМ
Раздел: Рефераты по информатике, программированию
Тип: реферат
Добавлен 06:43:07 27 февраля 2008 Похожие работы
Просмотров: 94
Комментариев: 15
Оценило: 2 человек
Средний балл: 5
Оценка: неизвестно Скачать
Срочная помощь учащимся в написании различных работ. Бесплатные корректировки! Круглосуточная поддержка! Узнай стоимость твоей работы на сайте 64362.ru
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.
Реферат: Реализация алгоритма на ЭВМ
Курсовая Работа На Тему Организация Обслуживания Туристов
Реферат: No Modern Camelot Essay Research Paper No
Курсовая работа по теме Выбор поставщика при закупке ресурсов
Образец Сочинения 9.2 Огэ 2022
Реферат Статус Русского Языка В Современном Мире
Направление Сочинений 2022 Год
Реферат: Fast Food Reality Essay Research Paper Fast
Реферат На Тему Сужение Левого Предсердно-Желудочкового Отверстия: Симптоматология, Объективное Исследование И Диагноз
Доклад: Мальчики и девочки продают себя. А вы их хотите иметь даром?
Курсовая работа по теме Антикризисное управление в комерческом банке
Английский 10 Класс Спотлайт Контрольные Работы
Реферат по теме Обеспечение техники безопасности, производственной санитарии и пожарной безопасности при работе с полевой кормозаготовительной техникой, монтаже и эксплуатации машин и оборудования в кормоприготовительных цехах
Практика По Статистике Отчет
Феликс Кривин Два Камня Сочинение Егэ
Сайт Сочинение На 5
Контрольная Работа По Геометрии 7 Класс Задачи
Реферат: Внешняя политики СССР в 20-30е гг
Сочинение Интерьер
Рефераты По Музыке 7 Класс
Реферат: Влияние проявлений тревожности на социальную адаптацию детей младшего школьного возраста с задер
Реферат: География и геополитика
Доклад: Опасность школьной дезадаптации
Реферат: Танзания