- •II курса заочного отделения
- •Проблемы и перспективы информатизации общества
- •Назначение и структура рынка информационных услуг
- •Правовое регулирование на информационном рынке
- •Предмет и задачи информатики
- •Информация и формы ее представления
- •Понятие количества информации
- •Свойства и формы адекватности информации
- •Информационные процессы и технологии
- •Система классификации информации
- •Архитектура современных вычислительных средств
- •Архитектура организации эвм основных классов и типов Методы классификации компьютеров
- •Классификация по назначению
- •Большие эвм (Main Frame)
- •МиниЭвм
- •МикроЭвм
- •Персональные компьютеры
- •Классификация по уровню специализации
- •Классификация по размеру
- •Классификация по совместимости
- •Дискретная вычислительная техника
- •Структура современного персонального компьютера
- •Перспектива развития вычислительных средств
- •Архитектура современных программных средств и основы программирования
- •Языки описания архитектуры
- •Виды (views)
- •Состав и функции программного обеспечения эвм Программное обеспечение
- •Системное по
- •Прикладное по
- •Инструментальное по
- •Этапы подготовки и решения задач на эвм
- •2. Постановка задачи
- •3. Математическое описание задачи
- •4. Выбор и обоснование метода
- •5. Алгоритмизация вычислительного процесса
- •6. Составление программы
- •7. Отладка программы
- •8. Решение задачи на эвм и анализ результатов
- •Категория специалистов, занятых разработкой и эксплуатацией программного обеспечения
- •Алгоритмы и способы их описания Понятие алгоритма
- •Основные понятия программирования
- •Обзор языков программирования Язык: Фортран (fortran)
- •Язык: Кобол (cobol)
- •Язык: Бейсик (basic)
- •Язык: Си (c)
- •Язык: Паскаль (Pascal)
- •Язык: Пёрл (Perl)
- •Язык: Питон (Python)
- •Язык: Руби (Ruby)
- •Язык: php
- •Язык: Java
- •Язык: JavaScript
- •Язык: Ruby on Rails (фреймворк на Ruby)
- •Япву Turbo Pascal
- •Массивы Turbo Pascal
- •Рекурсии Turbo Pascal Рекурсия Pascal-Паскаль
- •Записи Turbo Pascal
- •Системное программное обеспечение эвм Системное по
- •Характеристика и виды операционных систем
- •1.3.3. Классификация операционных систем
- •Оболочки операционных систем
- •Программы обслуживания магнитных дисков
- •Программы архивирования данных
- •Компьютерные вирусы и антивирусные продукты
- •Работа антивируса
- •Базы антивирусов
- •Операционная система Windows
- •Графические интерфейсы и расширения для dos
- •Семейство Windows 9x
- •Семейство Windows nt
- •Семейство ос для карманных компьютеров
- •Краткая история создания ос Windows
- •1975 ─ 1981: Microsoft загружается
- •1982 ─ 1985: Введение в Windows 1.0
- •1987 ─ 1992: Windows 2.0 ─ 2.11. Больше окон, больше скорости
- •1990 ─ 1994: Windows 3.0 ─ Windows nt. Графика
- •1995 ─ 2001: Windows 95. Компьютер взрослеет, Интернет становится популярным
- •2001 ─ 2005: Windows xp. Стабильнее, надёжнее и быстрее
- •2006 ─ 2008: Windows Vista. Упор на безопасность
- •2009 ─ Сегодняшний день: Windows 7. История продолжается
- •Новые возможности Windows 7
- •Прикладное программное обеспечение общего назначения рикладное программное обеспечение общего назначения
- •Компьютерные сети и телекоммуникации
- •Архитектура компьютерных сетей
- •Семиуровневая сетевая архитектура
- •Локальные вычислительные сети (лвс)
- •Построение сети
- •Адресация
- •Общие сведения об Интернете Общие сведения об Internet/Intranet
- •1.1. Основы технологии Internet/Intranet
- •1.1.1. Сети Internet и www
- •Передача информации в Интернете
- •World Wide Web-Всемирная Информационная паутина Интернет, World Wide Web - www, Web
Алгоритмы и способы их описания Понятие алгоритма
Для составления программы, предназначенной для решения на ЭВМ какой-либо задачи, требуется составление алгоритма ее решения.
Алгоритм — это точное предписание, которое определяет процесс, ведущий от исходных данных к требуемому конечному результату. Алгоритмами, например, являются правила сложения, умножения, решения алгебраических уравнений, умножения матриц и т.п. Слово алгоритм происходит от algoritmi, являющегося латинской транслитерацией арабского имени хорезмийского математика IX века аль-Хорезми. Благодаря латинскому переводу трактата аль-Хорезми европейцы в XII веке познакомились с позиционной системой счисления, и в средневековой Европе алгоритмом называлась десятичная позиционная система счисления и правила счета в ней.
Применительно к ЭВМ алгоритм определяет вычислительный процесс, начинающийся с обработки некоторой совокупности возможных исходных данных и направленный на получение определенных этими исходными данными результатов. Термин вычислительный процесс распространяется и на обработку других видов информации, например, символьной, графической или звуковой.
Если вычислительный процесс заканчивается получением результатов, то говорят, что соответствующий алгоритм применим к рассматриваемой совокупности исходных данных. В противном случае говорят, что алгоритм неприменим к совокупности исходных данных. Любой применимый алгоритм обладает следующими основными свойствами:
результативностью;
определенностью;
массовостью.
Результативность означает возможность получения результата после выполнения конечного количества операций.
Определенность состоит в совпадении получаемых результатов независимо от пользователя и применяемых технических средств.
Массовость заключается в возможности применения алгоритма к целому классу однотипных задач, различающихся конкретными значениями исходных данных.
Для задания алгоритма необходимо описать следующие его элементы:
набор объектов, составляющих совокупность возможных исходных данных, промежуточных и конечных результатов;
правило начала;
правило непосредственной переработки информации (описание последовательности действий);
правило окончания;
правило извлечения результатов.
Алгоритм всегда рассчитан на конкретного исполнителя. В нашем случае таким исполнителем является ЭВМ. Для обеспечения возможности реализации на ЭВМ алгоритм должен быть описан на языке, понятном компьютеру, то есть на языке программирования.
Таким образом, можно дать следующее определение программы.
Программа для ЭВМ представляет собой описание алгоритма и данных на некотором языке программирования, предназначенное для последующего автоматического выполнения.
Основные понятия программирования
Программирование - это раздел информатики, изучающий методы и приемы составления программ для компьютеров. Кроме того, программирование - это подготовка задачи к решению ее на компьютере.
Программа - это последовательность команд, понятных компьютеру.
Программа записывается в виде символов, к числу которых относятся латинские и русские буквы, цифры, знаки препинания и знаки операций.
Требования, предъявляемые к программе
1. Минимальные требования к компьютеру, на котором работает программа.
2. Ясность входных и выходных данных и простота программы.
3. Минимальное время создания программы и простота ее изменения.
4. Минимальное время работы программы, минимум занимаемой памяти и минимум использованных в программе операторов.
Чтобы программа удовлетворяла этим противоречивым требованиям, необходимо обладать искусством программирования.
Свойства программ - выполнимость, мобильность, правильность, эффективность.
Выполнимость - возможность выполнения программы на данном типе компьютеров.
Мобильность - возможность переноса программы на другой тип компьютеров.
Правильность программы - правильность результатов, получаемых с помощью данной программы.
Эффективность - минимум времени выполнения, минимум машинной памяти и других ресурсов компьютера.
Языки программирования - языки для записи программ для компьютеров. Это совокупность средств и правил представления алгоритма в виде, приемлемом для компьютера.
Оператор - выражение обозначающее и описывающее какую-либо операцию.
Типы языков программирования: машинные, машинно-ориентированные, алгоритмические, логические, функциональные, учебные, инструментальные, диалоговые, графические и т.д.
Алгоритмический язык - это формальный язык, предназначенный для записи алгоритмов.
Системы программирования - это набор средств ввода, редактирования, трансляции и выполнения программ на ЭВМ.
Транслятор - это комплекс программ, обеспечивающий перевод программы, написанной на символическом языке, в совокупность машинных команд.
Компилятор - это транслятор, обеспечивающий перевод программы, написанной на алгоритмическом языке, в совокупность машинных команд без ее выполнения в компьютере.
Интерпретатор - это транслятор, обеспечивающий перевод каждой конструкции алгоритмического языка в машинные команды и одновременное выполнение этой конструкции в компьютере.
Все системы (языки) программирования имеют свой транслятор, компилятор и интерпретатор.
Виды языков программирования:
1. Машинно-ориентированные языки (языки ассемблера).
2. Языки высокого уровня.
3. Командные языки баз данных.
Примеры языков программирования высокого уровня: Фортран, Алгол, Бейсик (Basic), Паскаль (Pascal), Си++, Пролог, Лисп, Форт и др.
