Урок Информатики "Изучение основ программирования. Алгоритмизация"


Тема: Изучение основ программирования. Алгоритмизация.

Количество учебных часов: 2ч.

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


Цель занятия: овладение практическими навыками представления программ в виде алгоритмов.


Студент должен знать:

  • виды алгоритмов;

  • характеристики алгоритмов;

  • формы представления алгоритмов;

  • основные типы диалоговых сред;

  • основные правила программирования;


Студент должен уметь:

  • разрабатывать алгоритмы обработки информации

  • представлять алгоритмы в различных формах

  • использовать осмысленные имена переменных, функций, процедур

  • контролировать входные данные

  • различать типы диалоговых сред


Базисные вопросы

  1. Понятие программы.

  2. Разновидности программ.

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

  4. Среды программирования

  5. Виды данных

Вопросы по теме занятия

  1. Перечислите основные характеристики алгоритма.

  2. Назовите основные типы алгоритмических структур.

  3. Какие формы представления алгоритма вы знаете?

  4. Какие задачи относятся к детерминированным?

  5. В чем отличие интеллектуальных задач от эвристических?

  6. Перечислите основные правила программирования

  7. Назовите основные типы диалоговых сред.

Информационно-дидактический блок

1. ТЕОРИЯ АЛГОРИТМОВ

1.1 Алгоритмы и основные алгоритмические структуры

Разработка эффективных алгоритмов обработки информации является одной из важнейших теоретических проблем информатики.

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

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

Основные характеристики алгоритмов: дискретность, определенность, конечность и универсальность.

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

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

Конечность (или результативность) алгоритма предполагает, что его исполнение сводится к выполнению конечного числа шагов и всегда приводит к некоторому результату. Один из возможных результатов, установление факта, что задача решения не имеет.

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

Формы представления алгоритмов: вербальная, построчная запись, блок-схема, запись на языке программирования.

Вербальная форма представления алгоритма – это словесное описание последовательности действий. Построчная запись имеет более четкое предписание чем вербальная форма. Блок-схема алгоритма – это самая наглядная и точная форма представления алгоритма в виде отдельных боков. Запись на языке программирования – это тоже одна из форм представления алгоритма.

1.2. Разработка алгоритмов

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

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

а) линейная б) разветвляющая в) циклическая


Линейным называется алгоритм, при выполнении которого исполнитель выполняет одну команду за другой в порядке их следования. Разветвляющимся называется алгоритм, при выполнении которого действия исполнителя определяются результатами проверки некоторых условий. Циклическим называется алгоритм, при выполнении которого отдельные команды или группы команд повторяются многократно.

1.3. Представление алгоритмов в виде блок-схем

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

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

Начертания блоков

Назначения блоков


Начало алгоритма


Конец алгоритма


Вычислительное действие


Проверка условий


Ввод данных, вывод данных


Начало цикла


Вызов вспомогательного алгоритма


1.4. Задачи обработки информации

Задачи обработки информации можно разделить на 4 класса.

  1. Детерминированные задачи. Это строго определенные и четко поставленные задачи. К ним относятся вычислительные задачи.

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

  3. Интеллектуальные задачи. Решение таких задач требует формализации понятий и обработки знаний. Например, задача распознавания речи. Задача формулируется на символах определенного языка в данной предметной области.

  4. Эвристические задачи. Эти задачи связанны с имитацией и моделированием творческой деятельности человека. Алгоритмы их решения носят эвристический характер. Например, игра в шахматы, сочинение стихов.

Самыми массовыми задачами решаемыми на ЭВМ являются детерминированные задачи. Для решения детерминированных задач требуется пройти следующие этапы:

  1. Поиск метода решения задачи (Формализация).

  2. Разработка алгоритма.

  3. Написание программы на языке программирования.

  4. Ввод и отладка программы на ЭВМ.

  5. Анализ результатов решения задачи.

Из перечисленных этапов самым важным является первый. Чем труднее задача - тем сложнее найти решение. Поэтому решение сложных задач требует кроме глубоких знаний в соответствующих областях науки и техники, еще творческие способности.

1.5. Основные правила программирования

  1. При разработке больших программ попытайтесь разбить программу на отдельные модули, которые можно написать и отладить отдельно.

  2. Используйте осмысленные имена переменных, функций, процедур. Например имя MAXLONG скажет Вам больше, чем имя ML, при анализе или отладке программы.

  3. Не жалейте времени на комментарии. Иначе через некоторое время Вам придется изрядно потрудиться, чтобы вспомнить нюансы и тонкости (хитрости) вашей программы. Кроме того, сопровождать вашу программу придется, может быть кому-то другому. По меткому выражению одного из программистов фирмы Microsort “Комментарии не должны быть письмами самому себе”.

  4. При написании программы используйте метод “левого верхнего угла”. Не забывайте про отступы при написании циклов и операторов условия.

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

  6. Контролируйте входные данные. Постарайтесь учесть реакцию вашей программы на все возможные действия пользователя.

1.6. Интерактивное программирование

В настоящее время широко применяется интерактивное программирование. Основной метод общения - диалог. Основные правила диалога:

  1. обеспечить простые и конечные последовательности интерактивных действий;

  2. не перегружать пользователя большим количеством возможностей и стилей общения с программой;

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

  4. обеспечить реальность действия пользователя с помощью обратной связи;

  5. в случаи неправильного действия давать возможность пользователю исправить ошибку;

Основные типы диалоговых сред, которые используются при разработке программ:

  1. Сообщение

  2. Меню

  3. Бланк

  4. Таблица

  5. Текст

Сообщение - самый простой тип диалоговый среды. Заключается в выводе на экран краткого сообщения и отображения его до наступления некоторого события. Например, “Введите имя файла”.

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

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

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

Таблицы как и бланки применяются для ввода и корректировки информации. Отличие в том, что таблица содержит структурированную информацию данные которых в общем случае состоят из элементов таким образом, что однотипные элементы разных строк образуют столбцы. Например, таблица “ итоги сессии ”.

Текст применяется для вывода на экран любого текста. Например, инструкция пользователя , помощь и т.д.



1.7. Оптимизация программ

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

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

Содержание занятия:

Контроль исходного уровня знаний

В начале занятия преподаватель оценивает исходный уровень знаний студентов, используя тесты, представленные в приложении 1.

Работа с преподавателем

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

Самостоятельная работа

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

Линейные алгоритмы:

  1. Вычислить сумму, разницу и произведение двух чисел a и b.

  2. Рассчитать объём и площадь поверхности куба со стороной a. Объём рассчитывается по формуле , площадь поверхности –.

  3. Рассчитать среднее арифметическое четырёх чисел.



Разветвляющиеся алгоритмы:

  1. Найти корни квадратного уравнения ax2+bx+c=0. Принять во внимание, что любой из коэффициентов может быть равен нулю. Вывести результат или сообщение об ошибке.

  2. Найти квадрат наибольшего из двух чисел a и b. Вывести наибольшее число и его квадрат.

  3. Определить, является ли число чётным или нечётным. Вывести результат.

  4. Упорядочить 3 введённых числа по возрастанию и убыванию. Вывести результат.

Циклические алгоритмы:

  1. Найти количество цифр во введённом числе.

  2. Найти .

  3. Найти .

  4. Найти .

  5. Вывести все целые числа от a до b.

Контроль итогового уровня знаний

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

Рекомендуемая литература по занятию

  1. Уоллес Вонг. Основы программирования для "чайников".– Пер. с англ.– М: Издательский дом "Вильяме", 2002.– 336 с.

  2. Задачи по программированию / С.А. Абрамов, Г.Г. Гнездилова, Е.Н. Капустина, М.И. Семон.– М.: Наука. Гл. ред. физ.-мат. лит., 1988.– 224 с.

  3. Касаткин В.Н. Информация, алгоритмы, ЭВМ.– М.: Просвещение, 1991.– 192 с.


Приложение 1

Тестовые вопросы для оценки исходного уровня знаний.


Вариант 1
  1. Ввести имя переменной можно:

      1. дважды щелкая мышью по полю заголовка таблицы

      2. дважды щелкая мышью по полю Имя переменной

      3. щелкнув левой кнопкой мыши по полю заголовка таблицы

      4. щелкнув правой кнопкой мыши по полю заголовка таблицы

      5. щелкнув левой кнопкой мыши по полю заголовка переменной

  2. Какой модуль STATISTICA используется для нахождения средних значений

      1. основные статистики и таблицы

      2. множественная регрессия

      3. дискриминантный анализ

      4. факторный анализ

      5. анализ временных рядов

  3. В каком модуле STATISTICA можно проверить закон распределения исследуемых данных

      1. основные статистики и таблицы

      2. множественная регрессия

      3. дискриминантный анализ

      4. факторный анализ

      5. анализ временных рядов

  4. Какая команда STATISTICA используется для вставки новой строки или столбца

      1. ADD

      2. DEL

      3. INSERT

      4. TAB

      5. ESC

  5. Если коэффициент корреляции близок к 1, это означает

      1. связь между величинами слабая

      2. связь между величинами сильная

      3. связи между величинами нет

      4. связь между величинами слабая и обратная

      5. связь между величинами сильная и обратная

  6. Ввести имя наблюдений можно:

      1. дважды щелкнув мышью по полю заголовка таблицы

      2. дважды щелкнув мышью по полю Имя наблюдения

      3. щелкнув левой кнопкой мыши по полю заголовка таблицы

      4. щелкнув правой кнопкой мыши по полю заголовка таблицы

      5. щелкнув левой кнопкой мыши по полю заголовка переменной

  7. Переименовать переменную можно:

      1. дважды щелкнув мышью по полю заголовка таблицы

      2. дважды щелкнув мышью по полю Имя переменной

      3. щелкнув левой кнопкой мыши по полю заголовка таблицы

      4. щелкнув правой кнопкой мыши по полю заголовка таблицы

      5. щелкнув левой кнопкой мыши по полю заголовка переменной

  8. Задать формат отображения переменной можно:

      1. дважды щелкнув мышью по полю заголовка таблицы

      2. дважды щелкнув мышью по полю Имя переменной

      3. щелкнув левой кнопкой мыши по полю заголовка таблицы

      4. щелкнув правой кнопкой мыши по полю заголовка таблицы

      5. щелкнув левой кнопкой мыши по полю заголовка переменной

  9. С помощью кнопки открывается:

      1. диалоговое окно Галерея графиков STATISTICA

      2. STATISTICA Module Switcher

      3. Basic Statistics and Tables

      4. новый файл

      5. электронная таблица

  10. Галерея графиков STATISTICA служит для:

      1. вызова статистических и пользовательских графиков

      2. импорта статистических и пользовательских графиков из MS Word

      3. импорта статистических и пользовательских графиков из MS Excel

      4. расчета статистических функций

      5. создания нового файла



Вариант 2
  1. Можно ли импортировать данные, полученные в системе STATISTICA, в MS Word:

      1. да

      2. нет

  2. Галерея графиков STATISTICA служит для:

      1. вызова статистических и пользовательских графиков

      2. импорта статистических и пользовательских графиков из MS Word

      3. импорта статистических и пользовательских графиков из MS Excel

      4. расчета статистических функций

      5. создания нового файла

  3. Как называются строки в программе STATISTICA

      1. var

      2. cases

      3. data

      4. point

      5. code

  4. Как называются столбцы в программе STATISTICA

      1. var

      2. cases

      3. data

      4. point

      5. code

  5. Какой модуль STATISTICA используется для нахождения средних значений

      1. основные статистики и таблицы

      2. множественная регрессия

      3. дискриминантный анализ

      4. факторный анализ

      5. анализ временных рядов

  6. В каком модуле STATISTICA можно проверить закон распределения исследуемых данных

      1. основные статистики и таблицы

      2. множественная регрессия

      3. дискриминантный анализ

      4. факторный анализ

      5. анализ временных рядов

  7. Какая команда STATISTICA используется для удаления новой строки или столбца

      1. ADD

      2. DEL

      3. INSERT

      4. TAB

      5. ESC

  8. Какой график служит для оценки плотности функции распределения

      1. экспоненциальный

      2. логарифмический

      3. гистограмма

      4. параболический

      5. график остатков

  9. На каком отрезке лежат значения коэффициента корреляции

      1. (0;1)

      2. (-1;1)

      3. (-1;0)

      4. (-∞;+∞)

      5. (0;+∞)

  10. Если в матрице корреляций программы Statistica некоторые числа выделены красным цветом, это означает, что

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

      2. зависимость между переменными с выделенными красным цветом коэффициентами корреляции наименее значимая

      3. данные вышли за границы доверительного интервала

      4. распределение данных отклоняется от нормального

      5. матрица корреляций составлена с недостаточным уровнем значимости


Приложение 2

Контрольные вопросы для заключительного контроля знаний


    1. Что такое алгоритм?

    2. Назовите исполнителей алгоритмов?

    3. Как кодируется звук в компьютере?

    4. Что понимается под командой алгоритма?

    5. Какими свойствами должен обладать алгоритм?

    6. В каком виде можно представить алгоритм?

    7. Какие алгоритмы называются линейными?

  1. Что такое детерминированные задачи?

  2. Перечислите основные правила программирования

  3. Назовите основные типы диалоговых сред.





Нравится материал? Поддержи автора!

Ещё документы из категории информатика:

X Код для использования на сайте:
Ширина блока px

Скопируйте этот код и вставьте себе на сайт

X

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

После чего кнопка «СКАЧАТЬ» станет доступной!

Кнопочки находятся чуть ниже. Спасибо!

Кнопки:

Скачать документ