Вход

Алгоритм и программа для вычислительной машины

Контрольная работа по информатике и информационным технологиям
Дата добавления: 18 декабря 2007
Язык контрольной: Русский
Word, rtf, 716 кб
Контрольную можно скачать бесплатно
Скачать
Данная работа не подходит - план Б:
Создаете заказ
Выбираете исполнителя
Готовый результат
Исполнители предлагают свои условия
Автор работает
Заказать
Не подходит данная работа?
Вы можете заказать написание любой учебной работы на любую тему.
Заказать новую работу

Содержание. Содержание. 2 Алгор итмы. 3 Понят ие и свойства алгоритма. 3 1. Дис кретность. 3 2. Опр еделенность (детерминированность). 3 3. Рез ультативность (финитность, конечность). 3 4. Мас совость. 4 Виды а лгоритмов 4 Язык б лок-схем 4 Основ ные (базовые) структуры алгоритмов 4 Приме ры простой и непростых программ: 5 Основ ные (базовые) структуры алгоритмов и их производные: 6 Следо вание 6 Цикл с постусловием 6 Цикл с предусловием 6 Разве твление 6 Обход 6 Множе ственный выбор 6 Стади и создания алгоритма: 6 Прогр амма. 6 Основ ные языки программирования 7 Вычис лительные машины. 7 Хроно логия Вычислительных Машин 7 Списо к использованной литературы. 9 Алгоритмы. Понятие и свойства алгоритма. Алгоритм - формальное описание последов ательности действий, которое необходимо выполнить для решения задачи ; - п редписание, определяющее ход вычислительного процес са, связанного с преобразованием данных от некоторого их исходного сост ояния к требуемому результату. Формальные описания алгоритмов аналоги чны представлениям основных частей программ, которые их реализуют, поэт ому многое, что относят к описанию конкретных программ, применимо к алго ритму и наоборот. Появление алгоритмов связывают с зарождением матема тики. Более 1000 лет назад (в 825 году) ученый из города Хорезма Абдулла (или Абу Д жафар) Мухаммед бен Муса аль-Хорезми создал книгу по математике, в которо й описал способы выполнения арифметических действий над многозначными числами. Само слово алгоритм возникло в Европе после перевода на латынь книги этого математика. Теория алгоритмов имеет большое практическое значен ие. Алгоритмический тип деятельности важен не только как мощный тип деят ельности человека, но и как одна из эффективных форм его труда. Через алго ритмизацию, через расчленение сложных действий на все более простые дей ствия, выполнение которых доступно машинам, пролегает путь к автоматиза ции. Создание алгоритма для решения задач какого-либо типа, его представ ление исполнителю в удобной для него форме – это творческий акт. Образн о говоря, историю математики можно было бы назвать историей открытия алг оритмов и их внедрения в человеческую практику. Если внимательно оглядеться вокруг, то можно обнаружи ть множество постоянно выполняемых алгоритмов. Мир алгоритмов очень ра знообразен. Несмотря на это, удается выделить общие свойства, которыми о бладает любой алгоритм ( Рис. 1 ) . Рис. 1 Свойства алгоритмов 1. Д84Dи84yс84ѓк84{р84‚е84uт84„н84~о84Ђс84ѓ т84„ь84Ћ . Алг оритм представляет процесс решения задачи как последовательность выпо лнения шагов-этапов. Для выполнения каждого этапа требуется определенн ое время, т.е. преобразование исходных данных в результат происходит дис кретно во времени. 2. О84Oп84Ѓр84‚е84uд84tе84uл84|е84uн84~н84~ о84Ђс84ѓт84„ь84Ћ ( д84tе84uт84„е84uр84‚м84}и84yн84~и84yр84‚ о84Ђв84rа84pн84~н84~о84Ђс84ѓт84„ь84Ћ ). Каждое правило алгоритма должно быть четким и однозначным. Отсюда выполнение алгоритма носит механический х арактер. 3. Р84Qе84uз84xу84…л84|ь84Ћт84„а84pт84„и84y в84rн84~о84Ђс84ѓт84„ь84Ћ ( ф84†и84yн84~и84yт84„н84~о84Ђс84ѓ т84„ь84Ћ , к84{о84Ђн84~е84uч84‰н84~о84Ђс84ѓт84„ь84Ћ ). Алг оритм должен приводить к решению задачи за конечное число шагов. 4. М84Mа84pс84ѓс84ѓо84Ђв84rо84Ђс84ѓт84„ь84Ћ . Алгоритм ре шения задачи разрабатывается в общем виде, т.е. он должен быть применим дл я некоторого класса задач, различающихся исходными данными (область при менимости алгоритма). Виды алгоритмов : 1. Линейный алгоритм (описа ние действий, которые выполняются однократно в заданном п орядке) . 2. Циклический алгоритм (описание дейс твий, которые должны повторятся указанное число раз или по ка не выполнено задание) . 3. Разветвляющий алгоритм (алгоритм, в к отором в зависимости от условия выполняется либо одна, либо другая после довательность действий). 4. Вспомогательный алгоритм (алгоритм, который можно использовать в других алгоритмах, указав только его имя). Язык блок-схем - способ формального описания алгоритмов. Схема наглядно демонстрирует все связи между элементами. Хорошо различ аются элементы, в которых записаны условия ветвления (ромбы), элементы, в которых записаны указания о работе на д числами (прямоугольники), а так же элементы ввода и вывода информации (паралле лограммы). Язык схем настолько четок, что исполнитель, получивши й схему алгоритма, ни в каких дополнительных разъяснениях не нуждается. Язык схем алгоритмов – важный тип языка для представления алгоритмов; с хема может быть важным дополнением к алгоритму, записанному в какой – л ибо форме. Основные (базовые) структуры алгоритмов – это ограниченный набор стандартных способо в соединения отдельных блоков или структур блоков для выполнения типич ных последовательностей действий. Доказано, что программу для любой про стой логической задачи можно составить из структур следование, разветв ление и повторение (цикл). Эти базовые структуры были положены в основу технологии структурного п рограммирования. Эта технология для разработки сложных программ реком ендует разбивать (декомпозировать) программу на подпрограммы (процедур ы), решающие отдельные подзадачи, т.е. базируется на процедурной декомпоз иции. Простая программа - алгоритм, для которого: · Существует единственный вход и единственный выход. · Для каждого элемента алгоритма сущ ествует путь от входа к выходу через этот элемент (т.е. алгоритм не содержи т бесконечных циклов и не содержит бесполезных (недостижимых) фрагменто в). Примеры простой и непростых п рограмм : Простая программа Бесконечный цикл Недостижимый фрагмент Рис. 3 Примеры программ Основные (базовые) структуры алгоритмов и их производные : С84Rл84|е84uд84tо84Ђв„rа84pн84~и84yе84u - последовательное выполнение действий (блоков). Ц84Wи84yк84{л84| с84ѓ п84Ѓо84Ђс84ѓт84„у84…с84ѓл84|о84Ђв84rи84yе„uм84} - тело цикла (блок 2) выполняется до тех пор , пока условие (блок 3) не станет истинным. Ц84Wи84yк84{л84| с84ѓ п84Ѓр84‚е84uд84tу84…с84ѓл84|о84Ђв84rи84yе„uм84} - пока не будет нарушено условие (блок 3), ос уществляется повторение тела цикла (блок 2). Р84Qа84pз84xв84rе84uт84„в84rл84|е„uн84~и84yе84u - применяется, когда в зависимости от условия требуется выполнить либо одно действие, л ибо другое. О84Oб84qх84‡о84Ђд84t - частный случай разветвления, когда одна ветвь не содержит ни каких действий. М84Mн84~о84Ђж84wе84uс84ѓт84„в84rе„uн84~н84~ы84Ќй84z в84rы84Ќб84qо84Ђр84‚ - в зависимости от значения переменной I выполняется одно из неско льких действий. Рис. 4 Структуры алгоритмов Стадии создания алгоритма : 1. Алгоритм должен быть пре дставлен в форме, понятной челов еку, который его разрабаты вает. 2. Алгоритм должен быть представлен в ф орме, понятной тому объекту (в том числе и человеку), который будет выполня ть описанные в алгоритме действия. Идеальными исполнит елями являются машины, роботы, компьютеры... Алгоритм, записанный на «понятном» компьютеру языке программирования, называется программой. Программа. Программа вычислительной машины - описа ние алгоритма решения задачи, заданное на языке программирования (на маш инный язык конкретной ЭВМ переводится автоматически при помощи трансл ятора). Процесс составления программ называют программированием. Язык программирования — формал ьная знаковая система, предназначенная для описания алгоритмов в форме, которая удобна для исполнителя (например, компьютера). Язык программиров ания определяет набор лексических, синтаксических и семантических пра вил, используемых при составлении компьютерной программы. Он позволяет программисту точно определить то, на какие события будет реагировать ко мпьютер, как будут храниться и передаваться данные, а также какие именно действия следует выполнять над этими данными при различных обстоятель ствах. Со времени создания первых программируемых машин чел овечество придумало уже более двух с половиной тысяч языков программир ования. Каждый год их число пополняется новыми. Некоторыми языками умеет пользоваться только небольшое число их собственных разработчиков, дру гие становятся известны миллионам людей. Профессиональные программист ы иногда применяют в своей работе более десятка разнообразных языков пр ограммирования. Основные языки программирования Используемые в разработк е ABAP/4 | Ада | ActionScript | Ассемблеры | Awk | BASIC | C | COBOL | C++ | C# | ColdFusion | D | Delphi | Forth | FoxPro | DataFlex | Фортран | Groovy | Haskell | Java | JavaScript | J++ | J# | Icon | Limbo | Лисп | Lua | Objective-C | Оберон | Oz | Паскаль | Perl | PHP | PL/I | Пролог | Руби | Python | Tcl | Scheme | Smalltalk | SQL | Visual DataFlex | Visual Basic | VB.NET | Visual FoxPro Академические АПЛ | Clean | Curry | Лого | MATLAB | ML IEC61131-3 Instruction List | FBD | Ladder Diagram | SFC Прочие Алгол | Алгол 68 | Мо дула-2 | Miranda Эзотерические INTERCAL | Brainfuck Вычислительные машины . Вычислительная машина, счётная машина — механизм, электромеханическое или электронное устройство, предназн аченное для автоматического выполнения математических операций. В последнее время, это понятие чаще всего ассоциирует ся с различными видами компьютерных систем. Тем не мен ее, вычислительные механизмы появились задолго до того, как заработал пе рвый компьютер. Хронология Вычислительных Ма шин В 1623 году немец Вильгельм Шикард создал так называемые «Считающ ие часы», которые сегодня принято считать первым автоматическим кальку лятором. В письмах к Иоганну Кеплеру Шикард объяснял, как можно использо вать его машину для расчёта астрономических таблиц. Машина Шикарда умел а складывать и вычитать шестизначные числа, оповещая звонком о переполн ении. Более сложные вычисления выполнялись с помощью набора костяшек Не пера, установленного на корпусе механизма. К сожалению, оригинал машины был потерян при пожаре ещё до начала двадцатого столетия. В 1960 году на осно ве сохранившихся чертежей была построена копия этого вычислителя, подт вердившая его существование и работоспособность. В 1642 году машину, помогающую в сложении чисел, изобрёл ф ранцузский учёный Блез Паскаль. «Паскалина», как назвал свою конструкци ю изобретатель, представляла собой механическое устройство в виде ящич ка, наполненного многочисленными шестерёнками. Складываемые числа вво дились в машину за счёт соответствующего поворота наборных колёсиков. Н а каждом из этих колёсиков, соответствовавших одному десятичному разря ду, были нанесены деления с цифрами от 0 до 9. При вводе числа колёсики прокр учивались до соответствующей цифры. При завершении полного оборота изб ыток над цифрой 9 переносился на соседний разряд (на 1 позицию сдвигалось соседнее колесо) и так далее. «Машина Паскаля» позволяла выполнять не то лько сложение, но и другие операции, однако при этом требовала применени я довольно неудобной процедуры повторных сложений. В 1673 году другой известный учёный — Готфрид Вильгельм Лейбниц изготовил механический калькулятор, позволявший легко выполня ть вычитание, умножение и деление. 1723 год — немецкий математик и астроном Христиан Людви г Герстен на основе работ Лейбница создал арифметическую машину. Машина высчитывала частное и произведение (за счёт последовательно выполняем ых операций сложения). Кроме того, в ней была предусмотрена возможность к онтроля за правильностью ввода данных. В 1820 году француз Тома де Кальмар наладил промышленный выпуск арифмометров. Разработанная в 1823 году разностная машина англичанина Чарльза Бэббиджа предназначалась для расчётов математических таблиц. Изучение работ Бэббиджа и его советы помогли шведскому изобретателю Пе ру Георгу Шойцу, начиная с 1854 года, построить несколько разностных машин, а в 1859 даже продать одну из них канцелярии английского правительства. Ещё одна «Разностная машина», построенная вскоре Мартином Вибергом, так же была в своей основе улучшенной версией машины Чарльза Бэббиджа и испо льзовалась для расчёта и публикации печатных логарифмических таблиц. К 1890 году американцем Германом Холлеритом была разработана электрическ ая табулирующая система, которая использовалась в переписях населения США в 1890-м и 1900-м годах. В 1938 году немецкий инженер Конрад Цузе на квартире роди телей построил свою первую машину, названную «Z1». Это была пробная модель полностью механической программируемой цифровой вычислительной маши ны. В том же году Цузе приступил к созданию машины «Z2». А в 1941 году Цузе созда ёт первую вычислительную машину, обладающую всеми свойствами современ ного компьютера «Z3». Таким образом, в ычисл ительная машина - это интегрированный набор алгоритмо в и структур данных, способный хранить и выполнять программы. Вычислител ьная машина может быть построена как реальное физическое устройство, со стоящее из проводов, транзисторов, магнитных сердечников и тому подобны х деталей; в этом случае она называется реальной выч ислительной машиной, или аппаратной вычислительной машиной . Но она может быть построена и с помощью программ, выполняемых н а некоторой другой вычислительной машине; в этом случае она называется программно-моделируемой вычислительной машиной Машина, выполняющая оттранслированные программы, мож ет оказаться иногда аппаратной машиной, но обычно это виртуальная вычислительная машина , состоя щая частично из аппаратуры, а частично из программного обеспечения Список использованной литературы. 1. Себеста Р.У. Основные к онцепции языков программирования, Изд. Дом «Вильямс», 2001. 2. Вирт Н. Алгоритмы и структуры данн ых, Мир, 1989. 3. Н.А. Криницкий. Алгоритмы вокруг н ас.- М.: Наука,1977. 4. В.А. Успенский. Машина Поста - М.: Нау ка,1979 . 5. Румянцев Д.Г ., Монастырский Л.Ф. Путь программиста, Изд. дом «ИнфраМ», 2000. 6. Касаткин В. Н. Информация, Алгорит мы ЭВМ, - М.: Просвещение, 1991.- 192 с. 7. В. Ф. Шолохович. – 4-е изд. – М.: Просв ещение, 1997. – 256 с. 8. Т. Пратт Языки программирования. Разработка и реализация. - М.: М ир, 1979. с.

© Рефератбанк, 2002 - 2018