6. Знакомство с языком программирования. Этапы решения задач с помощью персональных компьютеров
При решении любой задачи на компьютере предполагается, что некоторая информация подвергнется обработке по предварительно составленной инструкции, называемой программой.
Поэтому под решением задачи на компьютере подразумевается гораздо больший круг действий, чем только работа самого компьютера. Эти действия делятся на ряд этапов, выполнение которых носит характер последовательного приближения к конечной цели.
1. ПОСТАНОВКА ЗАДАЧИ. Решение задачи начинается с ее постановки, которая раскрывает содержание задачи и определяет конечную цель. Задача формулируется на уровне профессиональных понятий и выбирается общий подход к ее решению. Исходные положения и описания задачи должны быть корректны и понятны, так как ошибка в постановке задачи, обнаруженная на последующих этапах, приведет к необходимости начать решение задачи с самого начала.
На этом этапе осуществляется формализация задачи путем описания ее с помощью математических и логических выражений, определяется перечень исходных данных и получаемых результатов, начальные условия, точность и прочее. Можно сказать, что, по существу, разрабатывается математическая модель решаемой задачи независимо от того будь то задача вывода спутника на орбиту Земли или задача создания мультимедийной компьютерной игры.
Для иллюстрации изложенного предположим, что перед нами стоит задача создать модель для оценки деятельности высшего учебного заведения (ВУЗ). На этапе постановки задачи в первую очередь нам будет необходимо определить конечную цель. Например, выберем в качестве критерия оценки работы ВУЗа профессиональный уровень получаемого студентами образования. Как правило, подобного рода критерии носят интегральный характер и зависят от огромного количества факторов. Нам нужно будет определить и описать все параметры и зависимости, влияющие на конечный результат. Например, своевременное получение учебных материалов, уровень подготовки преподавателей, оборудование аудиторий и многое другое по нашему усмотрению вплоть до расстояния от учебного корпуса ВУЗа до ближайшей станции метро. При этом необходимо определить не только различные факторы и параметры, но и их вес, то есть степень влияния на конечный результат. В итоге мы можем получить исходный материал для решения нашей задачи, состоящий из математических и логических формул и дополнительных описаний.
2. ПОСТРОЕНИЕ АЛГОРИТМА. Как правило, даже имея математическую модель задачи, не удается получить решение в явном виде, например, в виде формулы, связывающей исходные данные и результаты. В этом случае устанавливается необходимая логическая последовательность математических операций и других действий, с помощью которых будут получены результаты, то есть создается алгоритм решения задачи.
Алгоритм – некоторая конечная последовательность предписаний (правил), определяющая процесс преобразования исходных и промежуточных данных в результат решения задачи. Описание такой последовательности правил может быть выполнено на обычном языке, с помощью математических формул или специальных символов. Разработка алгоритма для решения любой задачи является наиболее ответственным и важным моментом, так как именно алгоритм определяет последовательность действий, выполняемых компьютером. Поэтому основной целью при решении задачи является построение хорошего алгоритма.
В нашем примере по созданию модели ВУЗа нам будет необходимо связать сформулированные на первом этапе зависимости между собой. В итоге мы должны будем получить подробную запись решения задачи, как правило, расписанную в виде отдельных процедур, соединенных между собой логическими связями. Предположим, что в наш алгоритм мы включили процедуру оценки влияния отмен и переносов занятий на качество подготовки студентов, которая должна влиять с какого-то определенного количества отмены занятий. Для этого в структуру алгоритма нам нужно будет включить блок, проверяющий выполнение следующего условия: «Количество переносов занятий больше N?” (N – задаваемое нами число). Если это условие не выполняется, осуществляется переход к очередной процедуре. Если это условие выполняется, сначала вносятся изменения в конечный критерий, а потом осуществляется переход к очередной процедуре. Таким образом, в итоге мы должны получить алгоритм решения нашей задачи в виде отдельных, но связанных между собой процедур, выполнение которых завершается расчетом критерия оценки качества подготовки студентов.
3. РАЗРАБОТКА ПРОГРАММЫ. Программа – это последовательность предложений, написанных на каком либо языке программирования, допускающая однозначность толкования и реализующая конкретный алгоритм. Иными словами, программа представляет собой запись алгоритма для решения задачи на компьютере. Процесс разработки программы состоит в том, что алгоритм записывается на каком-либо алгоритмическом языке программирования. Как правило, всю программу стараются разбить на подпрограммы, которые могут быть оформлены как самостоятельные процедуры. Конечным продуктом является текст программы, но программу компьютер еще не может исполнить, так как «не понимает» ее текст. Для запуска программы на компьютере ее нужно перевести на машинный язык, то есть на язык, понятный компьютеру.
Разработкой программы завершаются этапы решения задачи, которые выполняются человеком без использования компьютера. На последующих этапах в решении задачи компьютер начинает играть одну из главных ролей.
Вернемся к нашему примеру. Несмотря на то, что мы создали подробный и понятный даже студентам алгоритм оценки качества их обучения, все же существует один из участников решения нашей задачи, который его абсолютно не воспринимает и не понимает. Конечно же это - компьютер. Поэтому на данном этапе решения задачи мы должны будем выбрать какой-либо устраивающий нас алгоритмический язык программирования и составить при помощи его программу или, иными словами, осуществить запись алгоритма на языке, который пусть даже при помощи специального «переводчика» компьютер уже сможет «понять».
4. ТРАНСЛЯЦИЯ ПРОГРАММЫ. Перевод программы на машинный язык осуществляется с помощью специальной программы, называемой транслятором. Для каждого языка высокого уровня существуют свои трансляторы. Исходными данными для транслятора является текст программы на соответствующем языке программирования, а результатом работы – текст программы на машинном языке.
При переводе программы на машинный язык транслятор проводит синтаксический анализ исходного текста для выявления возможных ошибок и выдает соответствующее сообщение. Полученная в результате трансляции программа может быть запущена или исполнена компьютером.
В нашем примере мы при помощи какого-либо текстового редактора должны набрать текст программы в компьютере. а потом запустить программу-транслятор, которая «переведет» его на машинный язык и запишет результат в отдельном файле. Казалось бы, осталось только запустить программу на компьютере и заняться анализом полученных результатов. Однако не все проблемы еще решены.
5. ОТЛАДКА ПРОГРАММЫ. Любая программа до ее практического использования должна пройти этап отладки. Цель отладки состоит в том, чтобы выявить и устранить ошибки, допущенные на предыдущих этапах, и получить программу, к результатам работы которой можно относиться с доверием.
Суть отладки программы состоит в том, что подготавливается система контрольных тестов, с помощью которой проверяется работа программы в различных режимах. Каждый тест должен содержать набор исходных данных, для которых известен конечный результат. При несоответствии результатов осуществляется поиск и устранение ошибки, которая в принципе может быть допущена на любом из предыдущих этапов.
В рассматриваемом примере нам будет необходимо рассчитать вручную при различных исходных данных несколько величин критерия оценки и сравнить их с полученными нашей программой. Если мы хорошо поработали на предыдущих этапах, то у нас не будет непреодолимых трудностей. Однако надо иметь в виду, что часто этап отладки программы по длительности намного превосходит этап ее создания.
6. ЭКСПЛУАТАЦИЯ ПРОГРАММЫ. Для программы, прошедшей отладку, разрабатывается эксплуатационная документация, после чего она готова для практического использования на компьютере. Разработанная программа и ее сопроводительная документация передается заказчику, который начинает ее эксплуатацию. Очень часто процесс решения задачи или создания программы на этом не завершается. В процессе эксплуатации не редко у пользователей возникают предложения по усовершенствованию и улучшению работы программы, о которых они сообщают разработчику программы для внедрения.
И наконец, возвращаясь к нашему примеру, нам остается только сесть за компьютер и заняться процессом обработки информации, то есть решением задачи повышения эффективности обучения студентов в ВУЗе, вводя различные начальные условия и возмущающие факторы и анализируя их влияние на конечный результат.
- Конспект лекций по дисциплине «информатика»
- 1. Автоматизированная обработка информации: основные понятия и технологии
- 1.1. Информация, информационные процессы и информационное общество Структура информационного процесса
- Контрольные вопросы
- 1.2.Технологии обработки информации. Управление базами данных. Компьютерные коммуникации
- Информационный продукт
- Способность к взаимодействию
- Ликвидация промежуточных звеньев
- Глобализация
- Конвергенция
- Контрольные вопросы
- 2. Общий состав и структура персональных эвм и вычислительных систем, их программное обеспечение
- 2.1. Архитектура персонального компьютера, структура вычислительных систем. Программное обеспечение вычислительной техники.
- Сведения о некоторых важных характеристиках микропроцессоров фирмы Intel.
- Стандартные устройства ввода-вывода
- Клавиатура
- Модем и акустический адаптер
- Дискеты и жесткие диски
- * Винчестеры типа at-Bus
- Принтер
- Накопитель на лазерном диске (cd-rom)
- Устройства ввода изображений
- Коммуникационное оборудование
- Подготовка компьютера к работе
- Чтобы включить...
- И чтобы выключить…
- Аппаратные средства персонального компьютера
- Архитектура персонального компьютера
- Функциональные и технические характеристики устройств персонального компьютера
- 1. Процессор
- 2. Основная память
- 3. Электронные платы.
- 4. Системный интерфейс
- 5. Устройства внешней памяти
- 6. Устройства ввода информации
- 7. Мониторы и видеоконтроллеры
- 8. Принтеры
- 9. Другие устройства, подключаемые к компьютеру
- 10. Портативные и мультимедийные компьютеры
- Выбор конфигурации персонального компьютера
- Сведения об операционной системе ms dos
- Диалог пользователя с ms dos
- Обзор команд ms dos
- 2.2. Операционные системы и оболочки Программная оболочка Norton Commander Работа с программой Norton Commander
- 2.3. Операционные системы и оболочки. Графическая Операционная Система Windows Общие сведения о Windows
- Пользовательский интерфейс
- Составляющие части окна
- Значок “Корзина”
- Контрольные вопросы
- 2.4. Прикладное программное обеспечение: файловые менеджеры, программы – архиваторы, утилиты. Обслуживание дисков
- Размещение информации на дисках и форматирование дисков.
- Уборка и проверка дисков.
- Оптимизация размещения файлов на диске.
- Восстановление на дисках удаленной информации.
- Программы-архиваторы. Начало работы и вид окна программы-архиватора WinRar
- Контрольные вопросы
- 3. Организация размещения, обработки, поиска, хранения и передачи информации, антивирусные средства зашиты информации. Понятие компьютерного вируса.
- Контрольные вопросы
- 4. Локальные и глобальные компьютерные сети, сетевые технологии обработки информации
- Контрольные вопросы
- 5. Прикладные программные средства
- 5.1. Текстовые процессоры Введение
- Управление курсором.
- Подготовка текстового документа.
- 1. Набор текста.
- 2. Редактирование текста.
- 3. Форматирование текста.
- 4. Печать текста.
- 5. Ведение архива текстов.
- 1. Выделение фрагмента текста.
- 3. Поиск, замена символов, фрагментов текста и параметров форматирования.
- Контрольные вопросы
- 5.2. Электронные таблицы
- 1. Основы работы с табличным процессором.
- 1.1. Назначение и области применения табличных процессоров.
- 1.2. История и тенденции развития.
- 1.3. Основные понятия.
- 1.3.1. Типовая структура интерфейса.
- 1.3.2. Данные, хранимые в ячейках электронной таблицы.
- 1.4. Функциональные возможности табличных процессоров.
- 1.4.1. Характеристика режимов и команд.
- 1.4.2. Графические возможности.
- 1.5.2. Проектирование электронной таблицы.
- 1.5.3. Объединение электронных таблиц.
- 1.5.4. Электронная таблица для поддержки принятия решений.
- 2. Табличный процессор ms Excel.
- 2.1. Знакомство с табличным процессором ms Excel.
- 2.1.1. Запуск ms Excel.
- 2.1.2. Знакомство с экраном ms Excel.
- 2.1.3. Панели инструментов в окне ms Excel.
- 2.1.4. Основное меню ms Excel.
- 2.1.5. Получение справочной информации.
- 2.1.6. Работа с файлами в ms Excel.
- 2.2. Ввод и редактирование данных.
- 2.2.1. Ввод и восстановление информации в ячейке.
- 2.2.2. Формат данных.
- 2.2.3. Ввод чисел и текста.
- 2.2.4. Стиль представления данных.
- 2.2.5. Ввод даты и времени.
- 2.2.6. Ввод последовательных рядов данных.
- 2.2.7. Формирование заголовков таблиц.
- 2.3. Работа с функциями и формулами.
- 2.3.1. Внесение изменений в формулу.
- 2.3.2. Использование ссылок.
- 2.3.3. Значения ошибок в формулах.
- 2.3.4. Перемещение и копирование формул.
- 2.3.5. Распространение формул.
- 2.3.6. Формулы преобразования текста.
- 2.3.7. Функции даты и времени.
- 2.3.8. Логические функции.
- 2.4. Диаграммы и графики.
- 2.5. Работа с базами данных.
- Контрольные вопросы
- 5.3. Системы управления базами данных. Основные понятия теории баз данных
- 3.6.4. Форма-диаграмма.
- 3.7.7. Простой отчет.
- Контрольные вопросы
- 5.4. Информационно – поисковые системы Эффективная технология работы с растущими потоками несистематизированной текстовой информации
- Контрольные вопросы
- 6. Знакомство с языком программирования. Этапы решения задач с помощью персональных компьютеров
- Основные понятия теории алгоритмов
- Языки программирования
- Основные понятия языка программирования Паскаль
- 1.2. Основные определения языка
- Davlenie 5 Пробел недопустим в составе имени
- 1.3. Составные части программы
- Контрольные вопросы
- 7. Автоматизированные системы: понятие, состав, виды.
- Контрольные вопросы
- Список литературы: