68
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Государственное образовательное учреждение высшего профессионального образования УЛЬЯНОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ИНФОРМАТИКА Методические указания к лабораторным работам по дисциплине «Информатика» для направления 140400 «Электроэнергетика и электротехника», профиль «Электропривод и автоматика», квалификация «бакалавр» Составитель М. В. Петрова Ульяновск УлГТУ 2011

ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственное образовательное учреждение высшего профессионального образования

УЛЬЯНОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ИНФОРМАТИКА

Методические указания к лабораторным работам по дисциплине «Информатика» для направления 140400

«Электроэнергетика и электротехника», профиль «Электропривод и автоматика», квалификация «бакалавр»

Составитель М. В. Петрова

Ульяновск УлГТУ

2011

Page 2: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

2

УДК 681.3.06:004(076) ББК 32.97 я7 И 74

Рецензент доктор технических наук, профессор кафедры «Электро-снабжение» энергетического факультета, Ульяновского государственного технического университета Кузнецов А. В.

Одобрено секцией методических пособий научно-методического

совета университета

Информатика : методические указания / сост. М. В. Петрова.

Ульяновск : УлГТУ, 2011. 67 с. Методические указания адресованы студентам 1-го курса дневной формы

обучения квалификации бакалавр 14400.62 для оказания помощи в освоении дисциплины «Информатика» при выполнении лабораторных работ.

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

Работа подготовлена на кафедре «Электропривод и АПУ».

УДК 681.3.06:004(076)

ББК 32.97 я7

Петрова М. В., составление, 2011 Оформление. УлГТУ, 2011

И 74

Page 3: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

3

СОДЕРЖАНИЕ

Введение.......................................................................................................................4 Раздел 1. Понятие информации................................................................................ 5 Тема 1.1. Общая характеристика процессов сбора, передачи, обработки и накопления информации….....................................................................................5 Тема 1.2. Представление (кодирование) данных….............................................7 Тема 1.3. Логические основы ЭВМ……………………………………………..7 Раздел 2. Технические и программные средства реализации информационных процессов......................................................................................................................9 Раздел 3. Модели решения функциональных и вычислительных задач..............10 Тема 3.1. Системный подход в моделировании систем.....................................10 Тема 3.2. Информационные технологии.............................................................12 Раздел 4. Алгоритмизация и программирование задач.........................................13 Раздел 5. Базы данных...............................................................................................15 Раздел 6. Программное обеспечение и технологии программирования..............16 Раздел 7. Локальные и глобальные сети. Ресурсы Internet....................................18 Раздел 8. Основы информационной безопасности. Методы защиты информации……………………………………………………...19 Приложение А............................................................................................................22 Приложение Б............................................................................................................25 Приложение В............................................................................................................29 Правила выполнения контрольных работ………………………………………...67 Заключение………………………………………………………………………….67

Page 4: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

4

ВВЕДЕНИЕ

Цель дисциплины Цель дисциплины – формирование мировоззрения и развитие системного

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

формирование умений работы с информацией разного вида на базе широкого использования междисциплинарных связей и знаний, полученных при изучении профильных дисциплин;

формирование умений интегрированного использования информационных технологий (ИТ) для решения реальных, профессионально-ориентированных, неформализованных задач;

формирование умений самостоятельно овладевать ИТ; знакомство с методами и средствами информационного моделирования

(в том числе основами алгоритмизации и программирования) в профессиональной деятельности.

Задачи дисциплины В результате изучения данной дисциплины студент должен знать:

основные объекты и методы изучения науки информатики; понятия «информация» и «информационные процессы»; основные подходы к определению понятия «информация»; носители информации, виды и свойства информации, основные

информационные процессы; принципы кодирования и декодирования информации; классификацию систем счисления; историю развития вычислительной техники, поколения ЭВМ; архитектуру персонального компьютера (ПК); основные устройства компьютера, их виды, принципы работы,

характеристики; программное обеспечение компьютера, его виды; представление текстовой, графической, числовой, звуковой информации

в памяти ПК; классификацию компьютерных сетей, адресацию в Internet; классификацию компьютерных вирусов, меры борьбы с ними; понятие алгоритма, его свойства, способы записи, основные

алгоритмические конструкции; классификацию языков программирования; принципы работы компиляторов и интерпретаторов; типы данных, обрабатываемых средствами языка программирования,

операторы языка, способы заполнения массивов, основные задачи на обработку массивов;

Page 5: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

5

понятие модели, свойства информационных моделей, этапы информационного моделирования;

основные логические операции, логические элементы и устройства компьютера.

Студент должен уметь: измерять информацию в соответствии с объемным и вероятностным

подходами; решать задачи на кодирование и декодирование информации; выполнять арифметические действия в различных системах счисления и

осуществлять перевод из одной системы счисления в другую; выполнять арифметические действия с числами, записанными в

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

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

решения профессионально-ориентированных задач; составлять гипертекстовые документы; решать задачи с использованием языка программирования; записывать алгоритмы и программы; составлять информационные модели; составлять таблицы истинности и функциональные схемы логических

устройств; выполнять упрощения логических выражений.

Рекомендации по изучению дисциплины

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

При изучении теоретических вопросов дисциплины студенты должны ответить на контрольные вопросы, поставленные в конце темы, и письменно выполнить контрольные задания в соответствии с вариантом, полученным у преподавателя. РАЗДЕЛ 1. ПОНЯТИЕ ИНФОРМАЦИИ Тема 1.1. Общая характеристика процессов сбора, передачи, обработки и накопления информации

Предмет информатики. Информатизация общества. Основные этапы и перспективы развития вычислительной техники. Основные объекты и методы изучения науки информатики. Основные разделы информатики. Смежные с информатикой дисциплины. Основные подходы к определению понятия «информация». Носители информации. Сигнал, знак, символ. Виды и свойства информации. Измерение информации.

Page 6: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

6

Информационные процессы поиска, отбора, хранения, передачи, обработки, защиты. Процесс кодирования. Задачи на кодирование и декодирование информации. Языки кодирования.

Методические указания

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

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

При изучении темы необходимо обратить внимание на различные подходы к определению понятия «информация», на то, что распространение информации всегда связано с материальным носителем, т. е. средой, для ее записи, хранения, передачи. Необходимо учесть, что основной формой передачи информации являются знаки и сигналы. Следует обратить внимание на существование различных классификаций видов информации. Необходимо уметь приводить примеры на каждое свойство информации. Важно учесть, что единицей измерения количества информации является бит, но смысл ее различен при измерении информации в рамках разных подходов к определению понятия «информация». При изучении наиболее общих информационных процессов следует составить схему их взаимосвязи. Необходимо уметь решать задачи на кодирование и декодирование информации. Уметь давать характеристику ЭВМ каждого поколения.

Контрольные вопросы для самопроверки

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

определениях понятия «информация». Приведите примеры непрерывных и дискретных сигналов. Перечислите признаки, которые можно выбрать в качестве оснований

деления видов информации, и назовите виды информации для каждой классификации.

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

Page 7: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

7

Рекомендуемая литература Информатика: Базовый курс: учебник для вузов / под ред.

С. В. Симонович. – СПб. : Питер, 2005. – 640 с. Информатика: учебник для вузов / под ред. Н. В. Макаровой. – 3-е изд. –

М. : Финансы и статистика, 2001. – 768 с. Тема 1.2. Представление (кодирование) данных

Системы счисления. Правила перевода из одной системы счисления в другую.

Методические указания Под системой счисления понимают совокупность приемов обозначения

(записи) чисел. Все системы счисления делят на позиционные и непозиционные. Для информатики особый интерес представляют двоичная, восьмеричная и шестнадцатеричная системы счисления. Следует обратить внимание на правила перевода вещественных чисел из одной системы счисления в другую. Знать правило перевода правильных дробей из десятичной системы в произвольную. Уметь выполнять действия в различных системах счисления, осуществлять перевод из одной системы счисления в другую.

Контрольные вопросы для самопроверки

1. Приведите примеры записи чисел в позиционной и непозиционной системах счисления.

2. Дайте определения базису, основанию системы счисления. 3. Сформулируйте правила перевода вещественных чисел из десятичной

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

4. Сформулируйте правило перевода правильных дробей из десятичной системы в произвольную. Приведите пример.

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

1. Андреева, Е. Информатика: Системы счисления и компьютерная арифметика / Е. Андреева, И. Фалина. – М. : Лаборатория Базовых Знаний, 2001. – 256 с.

Тема 1.3. Логические основы ЭВМ

Основные логические операции. Таблицы истинности. Логические выражения и их преобразования.

Основные логические элементы и устройства компьютера.

Методические указания Алгебра логики (алгебра высказываний) – раздел математической логики,

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

Page 8: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

8

При изучении темы необходимо уяснить отличие высказывания от предложения, знать виды высказываний. Уметь заполнять таблицы истинности для основных логических операций. Следует обратить внимание на алгоритм заполнения таблицы истинности для сложного высказывания. Важно понять, что все логические устройства ПК состоят из логических элементов – преобразователей, которые могут, получая сигналы об истинности отдельных простых высказываний, обработать их и в результате выдать значение логического произведения или логической суммы, или отрицания. Необходимо изучить назначение и принципы работы логических элементов И, ИЛИ, НЕ, знать их условные обозначения. Особо обратить внимание на функциональные схемы таких логических устройств, как полусумматоры, сумматоры, шифраторы, дешифраторы, триггеры, счетчики, регистры. Знать их структурные формулы. Необходимо уметь составлять по структурной формуле функциональную схему устройства и наоборот.

Контрольные вопросы для самопроверки

1. Дайте определение высказыванию, приведите примеры истинных и ложных, простых и сложных высказываний.

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

3. Сформулируйте алгоритм заполнения таблицы истинности для сложного высказывания.

4. Объясните назначение и принципы работы логических элементов И, ИЛИ, НЕ. Изобразите соответствующие схемы.

5. Охарактеризуйте сущность основных логических устройств. 6. Изобразите функциональные схемы и структурные формулы основных

логических устройств.

Рекомендуемая литература 1. Бузук, Г. Л. Логика и компьютер/ Г. Л. Бузук. – М. : Финансы и

статистика, 1995. – 208 с. 2. Ваш персональный компьютер / М. К. Буза, Л. В. Певзнер, С. Р. Сорока,

И. А. Хижняк. – М. : Минск : Высшая шк., 1995. – 333 с. 3. Интегральные микросхемы и их зарубежные аналоги: справочник. Т. 2 /

А. В. Нефедов. – М. : ИП РадиоСофт, 1998. – 640 с. 4. Лыскова, В. Ю. Логика в информатике / В. Ю. Лыскова, Е. А. Ракитина. –

М. : ИНФО, 1999. – 135 с. 5. Мендельсон, Э. Введение в математическую логику / Э. Мендельсон. –

М. : Наука, 1971. 6. Новиков, П. С. Элементы математической логики / П. С. Новиков. – М. :

Наука, 1973. 7. Отечественные микросхемы и зарубежные аналоги : справочник /

Б. Л. Перельман, В. И. Шевелев.– М. : «НТЦ Микротех», 1998. – 376 с.

Page 9: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

9

РАЗДЕЛ 2. ТЕХНИЧЕСКИЕ И ПРОГРАММНЫЕ СРЕДСТВА РЕАЛИЗАЦИИ ИНФОРМАЦИОННЫХ ПРОЦЕССОВ

Структура персонального компьютера. Классификация компьютеров. Аппаратное обеспечение компьютера. Архитектура компьютера. Основные устройства компьютера (ввода, вывода, отображения, хранения, передачи, обработки информации). Их виды, принципы работы, характеристики.

Программное обеспечение компьютера (ПО). Классификация ПО. Операционные системы и оболочки компьютера. Этапы загрузки операционной системы Windows. Файловая система. Способы образования имен файлов.

Методические указания

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

Аппаратное обеспечение компьютера включает архитектуру и устройство компьютера. Архитектура компьютера – общее описание структуры и функций ЭВМ, ее ресурсов. Ресурсы ЭВМ – средства вычислительной системы, которые могут быть выделены процессу обработки данных на определенный интервал времени.

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

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

В состав современного персонального компьютера входит системный блок, клавиатура, монитор. Устройства компьютера следует характеризовать по следующим признакам: класс устройств (название), назначение, принципы работы, особенности, основные технические (пользовательские) характеристики (потребительские свойства), программная поддержка. Необходимо уметь характеризовать устройства каждого вида. Следует обратить внимание на понятия носителя и накопителя информации. Знать основные типы носителей и накопителей.

Программное обеспечение – это набор программ, имеющихся в наличии у ПК. Оно подразделяется на базовое, системное, служебное и прикладное. Необходимо обратить внимание на ПО каждого вида. Уметь классифицировать программы. Знать назначение программ-утилитов, драйверов, программ-архиваторов, браузеров. Следует знать, что операционная система (ОС) – это набор программ, который обеспечивает взаимодействие всех устройств ПК и позволяет пользователю осуществлять общее управление ПК (процессором, памятью, устройствами ввода–вывода, данными). Обратить внимание на главное назначение ОС. Знать суть работы большинства программ-оболочек, наиболее популярные оболочки. При изучении файловой системы обратить внимание на способы образования имен файлов, конструкцию самого имени файла, шаблоны для имен.

Page 10: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

10

Контрольные вопросы для самопроверки 1. Перечислите классификационные признаки деления компьютеров. 2. Изобразите схему взаимодействий устройств компьютера согласно

архитектуре фон Неймана. 3. Внутренние устройства системного блока. 4. Системы, расположенные на материнской плате. 5. Основные параметры процессора. 6. Микросхема ПЗУ и система BIOS. 7. Шинные интерфейсы материнской платы. 8. Переферийные устройства персонального компьютера. 9. Назовите четыре основных уровня программного обеспечения. 10. Перечислите основные функции операционной системы. 11. Расскажите о видах интерфейса пользователя, применяемых в разных

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

файловой структуры. 14. Что такое файловая навигация? 15. Объясните правила, по которым формируют короткое имя файла. 16. В чем заключается операция установки приложений? 17. Что такое однозадачные и многозадачные операционные системы? 18. Опишите дополнительные функции операционных систем.

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

1. Информатика: Базовый курс: учебник для вузов / под ред. С. В. Симонович. – СПб. : Питер, 2005. – 640 с.

2. Фигурнов, В. Э. IBM PC для пользователя/В. Э. Фигурнов.– М. : ИНФРА-М, 2001.– 640 с.

3. Информатика : учебник для вузов / под ред. Н. В. Макаровой. – 3-е изд. – М. : Финансы и статистика, 2001.– 768 с.

4. Каймин, В. А. Информатика : учебник для вузов/В. А. Каймин. – 2-е изд. – М. : ИНФРА-М, 2002. – 272 с.

5. Леонтьев, В. П. Новейшая энциклопедия персонального компьютера 2002./В. П. Леонтьев. – М. : ОЛМА-ПРЕСС, 2002. – 920 с.

РАЗДЕЛ 3. МОДЕЛИ РЕШЕНИЯ ФУНКЦИОНАЛЬНЫХ И ВЫЧИСЛИТЕЛЬНЫХ ЗАДАЧ Тема3.1. Системный подход в моделировании систем

Понятие модели. Виды моделей. Свойства моделей. Этапы информационного моделирования. Системный подход в моделировании систем. Классификация видов моделирования. Информационные модели. Моделирование информационных процессов. Информационные объекты и

Page 11: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

11

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

Методические указания

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

Контрольные вопросы для самопроверки 1. Дайте краткую характеристику таким классам моделей, как материальные

(натурные), воображаемые и информационные. 2. Перечислите возможные основания деления моделей на классы. 3. Охарактеризуйте компьютерные модели. 4. Назовите набор свойств, характеризующий такие аспекты

моделирования, как внешний вид объекта моделирования, его структура и поведение.

5. Перечислите этапы моделирования, охарактеризуйте каждый из них. 6. Объясните сущность формализации. 7. Приведите пример информации, формализованной в табличной форме, в

форме графа. 8. Постройте логико-смысловую модель понятия «Модель». 9. Охарактеризуйте каждый этап решения задачи с помощью компьютера. 10. Что такое имитационное моделирование?

Рекомендуемая литература Глинский, Б. А. Моделирование и когнитивные репрезентации /

Б. А. Глинский, О. Е. Баксанский. – М. : Альтекс,2000. – 148 с. Горстко, А. Б. Познакомьтесь с математическим моделированием /

А. Б. Горстко. – М. : Знание, 1991. Компьютеры, модели, вычислительный эксперимент. Введение в

информатику с позиций математического моделирования. – М., 1988.

Page 12: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

12

Тема 3.2. Информационные технологии Информационные технологии. Представление текстовой, графической,

числовой и звуковой информации в памяти ПК. Программные средства и технологии обработки. Основные виды информационных систем.

Методические указания

Информационная технология (ИТ) – совокупность средств и методов преобразования информационных данных для получения информации нового качества (информационного продукта) о состоянии объекта, процесса или явления. Цель информационной технологии – производство информации, удовлетворяющей информационные потребности человека.

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

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

Следует обратить внимание на существование различных таблиц кодировки. Знать наиболее популярные таблицы кодировки.

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

Знать, как представлена звуковая информация в памяти компьютера. Уметь характеризовать этапы оцифровки и дискретизации.

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

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

Контрольные вопросы для самопроверки

1. Сформулируйте отличительные особенности технологии. 2. Перечислите составляющие информационной технологии. 3. Опишите технологию поиска литературы в библиотеке. 4. Назовите наиболее популярные таблицы кодировки. 5. Перечислите аппаратные и программные средства обработки текстовой

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

числовой информации.

Page 13: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

13

8. Дайте характеристику основным способам представления графических изображений.

9. Назовите аппаратные и программные средства обработки графической информации.

10. Охарактеризуйте типы компьютерного звука. 11. Назовите аппаратные и программные средства обработки звуковой

информации. 12. Охарактеризуйте информационную систему. 13. Перечислите основные возможности систем управления базами данных. 14. Дайте характеристику основным моделям данных в базах данных. 15. Охарактеризуйте сетевые информационно-поисковые системы.

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

1. Информатика: Базовый курс : учебник для вузов / под ред. С. В. Симонович. – СПб. : Питер, 2000– 640 с.

2. Информатика: Практикум по технологии работы на компьютере : учебное пособие для вузов / под ред. Н. В. Макаровой. – 2-е изд. – М. : Финансы и статистика, 2003.– 256 с.

3. Информатика : учебник для вузов / под ред. Н. В. Макаровой. – 3-е изд. – М. : Финансы и статистика, 2001.– 768 с.

4. Основы современных компьютерных технологий : учебное пособие / под ред. А. Д. Хомоненко. – 2-е изд. – СПб. : Корона принт, 2002.– 448 с.

5. Фигурнов, В. Э. IBM PC для пользователя / В. Э. Фигурнов. – М. : ИНФРА-М, 2001.– 640 с.

РАЗДЕЛ 4. АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ ЗАДАЧ

Основные этапы решения задач на компьютере. Постановка задачи. Математическое или информационное моделирование.

Алгоритмитзация задач. Понятие алгоритма и его свойств. Понятие программы. Ввод программы и исходных данных. Тестирование и отладка программы. Исполнение отлаженной программы и анализ результатов.

Методические указания

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

Обратить внимание на исполнителя алгоритма – техническое устройство (автомат и робот). При изучении темы следует знать свойства алгоритма, уметь приводить примеры на каждое из них. Необходимо обратить внимание на различные способы записи алгоритмов, уметь объяснять сущность алгоритмического стиля деятельности. Следует уяснить основные алгоритмические конструкции и уметь изображать их в виде блок-схем.

Page 14: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

14

Языки программирования: компиляторы и интерпретаторы. Классификация языков программирования. Структура программ. Алфавит языка. Типы данных, обрабатываемых средствами языка программирования. Операторы языка. Подпрограммы. Процедуры. Функции. Формальные и фактические параметры. Рекурсивные подпрограммы и функции. Их особенности. Способы заполнения массивов. Вывод одномерных и многомерных массивов на экран. Основные задачи на обработку массивов (поиск заданного элемента, определение числа заданных элементов в массиве, суммирование элементов, определение среднего арифметического и среднего геометрического элементов массива, сортировка).

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

Контрольные вопросы для самопроверки

1. Перечислите свойства алгоритма. Приведите примеры на каждое свойство.

2. Охарактеризуйте исполнителей алгоритмов. 3. Объясните сущность алгоритмического стиля деятельности. 4. Сформулируйте определение линейного алгоритма, изобразите его блок-

схему. 5. Сформулируйте определение разветвляющегося алгоритма, изобразите

соответствующие блок-схемы. 6. Сформулируйте определение циклического алгоритма, изобразите блок-

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

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

процедурные, функциональные, логические, объектно-ориентированные языки.

11. Назовите основные элементы структуры программы на языке Pascal, алфавит языка.

12. Перечислите основные типы данных языка Pascal и охарактеризуйте каждый из них.

13. Дайте характеристику основным операторам языка Pascal, запишите формат каждого из них.

14. Объясните назначение подпрограмм, особенности использования процедур и функций.

15. Сформулируйте отличия фактических переменных от формальных. 16. Назовите особенности рекурсивных описаний. 17. Перечислите способы заполнения массивов и приведите фрагменты

программ для каждого способа.

Page 15: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

15

18. Сформулируйте основные задачи на обработку массивов и запишите соответствующие фрагменты программ.

19. Объясните сущность таких методов сортировки, как метод поиска минимального (максимального элемента (или сортировка выбором), метод пузырька (или сортировка обменом) и метод вставок.

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

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

Информатика : учебник для вузов / под ред. Н. В. Макаровой. – 3-е изд. – М. : Финансы и статистика, 2001.– 768 с.

Епанешников, А. М. Программирование в среде Turbo Pascal 7.0. / А. М. Епанешников, В. А. Епанешников. – М. : «Диалог МИФИ», 1996. – 288 с.

Касьянов, В. Н. Курс программирования на Паскале в задачах и упражнениях / В. Н. Касьянов. – Новосибирск,2001.

Фаронов, В. В. Турбо Паскаль 7.0. Практика программирования : учебное пособие / В. В. Фаронов. – М. : Нолидж,1997. – 432 с.

РАЗДЕЛ 5. БАЗЫ ДАННЫХ

Базы данных и системы управления базами данных. Структура базы данных. Свойства полей базы данных. Типы данных. Безопасность баз данных. Проектирование БД. Работа с СУБД Microsoft Access.

Методические указания

Одной из важнейших разновидностей информационных систем являются базы данных, в которых накапливается всевозможная информация. Проектирование и создание баз данных, поддержка баз в актуальном состоянии, а также организация получения из баз любой нужной информации является очень сложной задачей. При изучении темы следует обратить внимание на основные операции с базами данных: создание, первичное заполнение, последующее внесение всевозможных изменений в данные, сортировка данных, поиск данных, осуществляемый в разных формах. Для этого служат инструментальные пакеты программ, которые называются системами управления базами данных (СУБД). Базы данных – это организованная структура, предназначенная для хранения информации. Большинство СУБД позволяет размещать в своих структурах не только данные, но и методы (то есть программный код), с помощью которых происходит взаимодействие с потребителем или с другими программно-аппаратными комплексами.

Контрольные вопросы для самопроверки

1. Что называется предметной областью? Приведите примеры. 2. Что называется базой данных?

Page 16: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

16

3. Опишите основные операции с БД. 4. Что такое атрибут сущности? Сколько атрибутов имеет сущность? 5. Какие базы данных и СУБД относятся к реляционным? 6. Для чего используются таблицы баз данных? 7. Определите понятия «запись» и «поле таблицы базы данных». 8. Опишите основные характеристики поля записи. 9. Что такое первичный ключ? Какими свойствами он обладает? 10. Для чего нужна сортировка таблицы базы данных? 11. Что такое индекс таблицы? Сколько индексов может иметь таблица? 12. Почему необходимо учитывать связи между сущностями в базах данных? 13. Как создаются связи между таблицами? Что такое внешний ключ? 14. Какие записи считаются связанными? 15. Что представляет собой структура базы данных? 16. Что называется запросом в базу данных? 17. Что такое приложение базы данных? 18. Для чего нужен администратор базы данных, его основные обязанности?

РАЗДЕЛ 6. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ И ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ

Понятие программного обеспечения. Структура программного обеспечения. Версии и модификации программ. Классификация и обзор языков программирования. Системы программирования.

Методические указания

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

Совокупность всех программных средств и требующихся им данных, используемых на компьютере, называют software (software – программное обеспечение), а совокупность аппаратных средств – hardware (hardware – аппаратное обеспечение). На любом компьютере имеется конкретный набор аппаратных и программных средств, а также различных данных, которые образуют его ресуры.

В программном обеспечении ПК принято выделять следующие группы программ: системное, инструментальное и прикладное программное обеспечение.

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

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

Page 17: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

17

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

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

Контрольные вопросы для самопроверки

1. Что такое программное обеспечение? 2. Что относится к ресурсам компьютера? 3. Опишите классификацию программного обеспечения. 4. Для чего нужно системное программное обеспечение? 5. Зачем нужны операционные системы? 6. Для чего используют инструментальное программное обеспечение? 7. Дайте определение понятий «прикладная программа» и «приложение». 8. Опишите известные вам пакеты прикладных программ. 9. Что такое языки прогарммирования? 10. В чем отличие компиляторов от интерпритаторов? 11. Объясните термины «язык низкого уровня» и «язык высокого уровня». 12. Расскажите о поколениях языков программирования. 13. Опишите использование принципов объектно-ориентированного

программирования в средах быстрого проектирования. 14. В чем трудности разработки крупных программных проектов? 15. Какова роль программирования в ходе работы над проектом?

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

1. Информатика: Базовый курс : учебник для вузов / под ред. С. В. Симонович. – СПб. : Питер, 2000. – 640 с.

2. Информатика : учебник / под ред. Б. В. Соболь, А. Б. Галин, Ю. В. Панов, Е. В. Рашидова, Н. Н. Садовой. – Ростов н/Д : Феникс, 2005. – 448 с.

3. Информатика : учебник для вузов / под ред. А. Н. Степанова. – СПб. : Питер, 2005. – 684 с.

4. Информатика : учебник для вузов / под ред. Н. В. Макаровой. – 3-е изд. – М. : Финансы и статистика, 2001.– 768 с.

5. Основы современных компьютерных технологий : учебное пособие / под ред. А. Д. Хомоненко. – 2-е изд. – СПб. : Корона принт, 2002. – 448 с.

Page 18: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

18

РАЗДЕЛ 7. ЛОКАЛЬНЫЕ И ГЛОБАЛЬНЫЕ СЕТИ. РЕСУРСЫ INTERNET

Компьютерные сети. Классификация сетей. Виды подключения к сети. Глобальная сеть Internet.

Структура Internet. Адресация в Internet. Язык гипертекстовой разметки HTML. Ресурсы Internet.

Методические указания Компьютерная сеть – это сложная структура, основанная на трех

принципах: 1. Наличие единого центра, координирующего деятельность сети. 2. Использование системы маршрутизации, позволяющей сообщению

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

«прозрачной» для внешних сетей, которые доступны для любой абонентской точки системы.

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

Следует уяснить сущность гипертекста, знать принципы его создания. Знать основные тэги языка HTML и их атрибуты. Иметь представление о программах, предназначенных для создания Web-страниц.

Необходимо знать признаки проявления компьютерных вирусов, их основные типы, меры профилактики и борьбы с вирусами.

Контрольные вопросы для самопроверки 1. Охарактеризуйте виды компьютерных сетей по территориальному

признаку. 2. Назовите программные средства работы в сетях. 3. Перечислите типы конфигурации сетей. 4. Расскажите об основных способах подключения к сети. 5. Объясните назначение стандартного протокола передачи данных. 6. Сформулируйте отличие единой системы адресации от доменной

системы имен. 7. Расскажите о принципах функционирования электронной почты, ее

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

FTP-серверах. 11. Охарактеризуйте такие услуги Internet, как «параллельные беседы»,

интернет-телефония, виртуальные магазины.

Page 19: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

19

12. Объясните суть технологии гипертекста. 13. Расскажите об архитектуре WWW (World Wide Web). 14. Перечислите признаки, лежащие в основе классификации компьютерных

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

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

1. Дарнелл, Р. JavaScript : справочник / Р. Дарнелл. – СПб., 2000. – 192 с. 2. Интернет. Основные понятия // Информатика для юристов и экономистов

/ под ред. С. В. Симонович. – СПб., 2001. 3. Комагин, В. Б. Создание Web-страниц и Web-сайтов : Самоучитель:

учебное пособие / В. Б. Комагин. – М., 2002. 4. Морин, Хеннингер. Эффективные стратегии поиска в Internet : пер. с

англ. / М. Хеннингер. – М. : Центр-пресс,1998. – 160 с. РАЗДЕЛ 8. ОСНОВЫ ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ. МЕТОДЫ ЗАЩИТЫ ИНФОРМАЦИИ

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

Методические указания

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

Page 20: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

20

государственной политики Российской Федерации. Субъекты информационного противоборства. Цель информационного противоборства. Составные части и методы информационного противоборства. Информационное оружие, его классификация и возможности.

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

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

Контрольные вопросы для самопроверки

1. Понятие информации. Понятие информационной безопасности. 2. Источники угроз информационной безопасности Российской Федерации.

Их классификация. 3. Доктрина Информационной Безопасности России. Ее цель, значение,

направления, принципы. 4. Защита информации. Понятие, цели. 5. Права и обязанности субъектов (собственников, владельцев,

потребителей) в области защиты информации 6. Правовая охрана программ, баз данных и топологий интегральных

микросхем (авторское право: личные и имущественные права, патентное право).

7. Юридическая ответственность за нарушение законодательства в сфере компьютерной информации. Понятие компьютерного преступления.

8. Проблемы раскрытия и расследования компьютерных преступлений. 9. Предупреждение компьютерных преступлений. 10. Основы правового режима формирования и использования

информационных ресурсов. 11. Классификация компьютерной информации по категориям доступа

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

данные). 13. Способы защиты информации. 14. Анализ защищенности информации. 15. Разработка стратегии информационной безопасности организации. 16. Организационные меры обеспечения защиты информации. 17. Программно-аппаратные средства защиты информации. 18. Антивирусная защита. 19. Защиты от несанкционированного доступа (НСД) к информации. 20. Internet – глобальная сеть. Internet как среда совершения компьютерных

Page 21: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

21

преступлений. Обеспечение безопасности Internet. 21. Информационная война. Информационное оружие. 22. Классическая структура идентификации и аутентификации. 23. Механизмы обеспечения информационной безопасности. Идентификация

и парольная аутентификация 24. Идентификация и комбинированная аутентификация 25. Механизмы обеспечения информационной безопасности. Идентификация

и биометрическая аутентификация 26. Механизмы обеспечения информационной безопасности. Разграничение

доступа. 27. Механизмы обеспечения информационной безопасности. Регистрация и

аудит 28. Криптография 29. Симметричный метод шифрования с закрытым ключом 30. Ассимметричный метод шифрования. 31. Экранирование 32. Уровни и методы антивирусной защиты 33. Основы законодательства России по вопросам защиты информации.

Уголовный кодекс Российской Федерации по вопросам защиты информации

34. Основы законодательства России по вопросам защиты информации. Гражданский кодекс Российской Федерации по вопросам защиты информации

35. Важнейшие законодательные акты в области защиты информации. Закон РФ «О государственной тайне»

36. Важнейшие законодательные акты в области защиты информации. Закон РФ «Об информации, информатизации и защите информации».

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

1. Теория и практика обеспечения информационной безопасности/ под ред. П. Д. Зегжды. – М. : Издательство агентства «Яхтсмен», 1996.

2. Герасименко, В. А. Основы защиты информации: учебник / В. А. Герасименко, А. А. Малюк. – М., 1997.

3. Организация и современные методы защиты информации /под общ. ред. С. А. Диева, А. Г. Шалаева. – М. :Концерн «Банковский деловой центр», 1998.

4. Сборник руководящих документов по защите информации от несанкционированного доступа. – М. : Гостехкомиссия, 1998.

5. Расторгуев, С. П. Информационная война/С. П. Расторгуев. – М. : Радио и связь, 1998.

6. Информационное общество: Информационные войны. Информационное управление. Информационная безопасность/ под ред. М. А. Вуса. – СПб. : Издательство С.-Петербургского университета, 1999.

Page 22: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

22

ПРИЛОЖЕНИЕ А Задания контрольной работы № 1

Задание 1. Перевести в десятичную систему счисления следующее двоичное число.

Таблица А.1

№ варианта Число в двоичной системе № варианта Число в двоичной системе 1 10010010010 11 11011011011

2 11110001001 12 11110001110

3 101010000010 13 11001010101

4 111111110101 14 11100001001

5 11110001001 15 1110001001

6 111001110111 16 110000110001

7 11001100111 17 110101001101

8 10001000010 18 11111001101

9 10011111000 19 11101010110

10 100110011001 20 110011010110

Задание 2. Перевести десятичное число A в g-е системы счисления. Таблица А.2

№ варианта

число А g-е системы счисления

№ варианта

Число А g-е системы счисления

1 741 3; 12 11 2531 4; 15 2 5017 9; 12 12 3058 2; 13 3 8301 14; 3 13 609 8; 15 4 3920 16; 4 14 7812 16; 3 5 891 7; 13 15 4121 11; 2 6 974 6; 14 16 493 5; 12 7 1267 7; 16 17 9975 11; 8 8 5104 12; 4 8 2763 2; 15 9 938 6; 11 19 587 13; 9 10 875 14; 2 20 6219 5; 11

Page 23: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

23

Продолжение приложения А

Задание 3. Перевести двоичное число A в восьмеричную и шестнадцатеричную системы счисления.

Таблица А.3

№ варианта Число А № варианта Число А 1 111111,1010110 11 10001001,1001 2 10011,0101101 12 11110,01101111 3 10000101,10111 13 10010100,10100 4 11101,100111011 14 1101101,10110 5 10000,00011011 15 10001,00011111 6 11010101,01010 16 10100100,0100 7 1111111,1110001 17 1110001,110011 8 1010101,1010110 18 10110,1110011

9 110000100,10000 19 11001001,1100 10 10111,010110 20 111001,1101011

Задание 4. Найти сумму чисел А1 и А2 по правилу сложения чисел с

плавающей точкой. Таблица А.4

№ варианта Число А1 Число А2 № варианта Число А1 Число А2 1 7,0832 146,752 11 2,15 9998,113 2 19,741 541,28 12 73,822 7319,55 3 36,2051 1634,47 13 824,7 9312,881 4 5,933 9995,022 14 9,7 5790,236 5 87,973 929,846 15 41,227 680,126 6 261,719 8615,52 16 633,84 300,23 7 66,372 938,7054 17 2,7 54,6037 8 3,963 379,021 18 34,5 95,48603 9 54,9924 742,91 19 999,23 473,7709 10 992,7539 51,44 20 8,94 212,666

Задание 5. Дайте письменный ответ на следующие вопросы. Постройте соответствующие логико-смысловые модели в Paint. Полученные распечатки вклейте в тетрадь.

1. Правовая охрана программ и данных. Защита информации. 2. Популярные наборы утилит. Краткая характеристика. 3. Устройства «виртуальной реальности». Типы. Характеристика. 4. Цифровые технологии в быту (цифровые фотоаппараты,

видеокамеры,диктофоны, плееры).

Page 24: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

24

Окончание приложения А

5. Традиционные операционные системы (DOS, Windows 3.11, Windows 98, Windows 2000, WindowsME, Windows XP, Windows Vista, Windows 7).

6. Плазменные мониторы. Принцип работы. Основные характеристики. 7. Пакеты статистической обработки. Краткая характеристика. Сравнение

различных пакетов. 8. Электронные книги. Краткая характеристика. Принцип действия. 9. Программы-архиваторы. Краткая характеристика. Сравнение различных

программ. 10. Программные средства и технологии обработки звуковой информации. 11. Процессор. Характеристики процессора. Этапы развития. 12. Устройства для ввода–вывода видеоизображений (видеокарта, TV-

тюнеры, платы для ввода видео в ПК). 13. Математические пакеты. Краткая характеристика. Сравнение различных

пакетов. 14. Игровые программные средства. Краткая характеристика. 15. Антивирусные программы. Типы. Сравнительная характеристика. 16. Программы для записи компакт-дисков. Типы. Сравнительная

характеристика. 17. Мультимедийные электронные проекторы. Виды. Основные

характеристики. 18. Обучающие программные средства (ОПС). Краткая характеристика.

Сравнение различных ОПС. 19. Различные типы носителей информации. Их характеристики. Этапы

развития. 20. Программные средства обработки текстовой информации.

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

1. Анин, Б. Ю. Защита компьютерной информации / Б. Ю. Анин. – СПб. : БХВ – Санкт-Петербург, 2000. – 384 с.

2. Гаевский, А. Ю. Самоучитель работы на компьютере : практ. пособие/ А. Ю. Гаевский. – М. : Технолоджи – 3000, 2002. – 704 с.

3. Додж, М. Эффективная работа с Microsoft Excel 2000/М. Додж, К. Стинсон. – СПб. : Питер, 2001. – 1056 с.

4. Информатика : практикум по технологии работы на компьютере : учебное пособие для вузов /под ред. Н. В. Макаровой. – 2-е изд. – М. : Финансы и статистика, 2003. – 256 с.

5. Информатика : учебник для вузов / под ред. Н. В. Макаровой. – 3-е изд. – М. : Финансы и статистика, 2001.– 768 с.

6. Карпов, Б. Office 2000: справочник/ Б. Карпов. – СПб. : Питер, 2000. – 448 с.

7. Касперский, Е. В. Компьютерные вирусы: что это такое и как с этим бороться / Е. В. Касперский. – М. : СК Пресс, 1998. – 288 с.

Page 25: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

25

ПРИЛОЖЕНИЕ Б Задания контрольной работы № 2

Задание 1. Составить таблицу истинности для логического выражения F

Таблица Б.1

№ вари-анта

Логическое выражение F № вари-анта

Логическое выражение F

1 F = (X ∧ Y) ∨ ((¬X∧¬Z) ∨ Y) 11 F = ¬(((¬X ∧ Z) ∧ Y) ∨ (X ∨ ¬Y)) 2 F = ((¬X ∧ Y) ∨ Z) ∧ (X ∨ ¬Y) 12 F = ¬ (¬Z ∨ (¬Y ∧ ¬X) ∧ (¬Z ∨ Y) 3 F = ¬X ∧ ((¬Y ∧ Z) ∨ X ∨ Y) 13 F = ((X ∧ ¬Y) ∨ (Y ∧ Z) ∨ ¬X 4 F = ((X ∧ ¬Y) ∨ Z) ∧ (¬X ∨ Y) ∨ ¬Z 14 F = (¬ (¬X ∨ Y)) ∧ (Z ∨ X) 5 F = (X ∧ (Z ∨ ¬Y)) ∨ (Y ∧ (Z ∨ ¬X)) 15 F = ¬ ((X ∨ ¬Y) ∧ ¬Z)) ∨ (Z ∧ ¬X) 6 F = ((¬X ∨ Z) ∧ ¬Y) ∨(Y ∧ Z) 16 F = ¬X ∧ (Y ∨ ¬Z) ∧ (¬ (X ∨ Y)) Y)

∨ Z 7 F = ¬ ((¬X ∧ ¬Z) ∧ (¬(Y ∨ Z) ∨ X)) 17 F = (((X ∧ ¬Z) ∨ ¬Y) ∧ (¬(Z ∨

¬X)))∨ Y 8 F = (X ∧ (¬(Z ∧ Y))) ∨(¬Y ∨ ¬X) 18 F = (¬Y ∧ Z) ∨ (¬ (X ∨ (¬Z ∧ Y)) ∧

¬X) 9 F = ¬Y ∨ (¬X ∧ Z) ∨ (¬ (X ∧ Y)) 19 F = ¬ (Z ∨ (¬Y ∧ X)) ∨ (¬X ∧ (¬Z

∨Y)) 10 F = (¬ (X ∧ Y)) ∨ (¬(Y ∨¬Z) ∧ X) 20 F = ((¬Y ∧ ¬Z) ∨ ¬X) ∧ (¬ (Z ∨ Y)

∧ X)

Задание 2. Упростить логическое выражение F Таблица Б.2

№ варианта

Логическое выражение F № варианта

Логическое выражение F

1 (P → Q) ∧ (Q → ¬P) ∧(R → P) 11 (X ∧ ¬Z) ∨ Y ∨ ¬X ∨ (Y ∧ Z) ∨ (X ∧Y)

2 ((X↔Y) ∧ (¬X ↔ ¬Y)) → ((X∨Y) (¬X ∨ ¬Y))

12 (Z∧(X∨¬Y))∨(¬Z∧X)∨((Z∨¬Y)∧¬Z

3 (A→B)∧(A→(B∨C))∧(B→C) 13 (X∨Y∨ Z)∧(X∨¬Y∨Z)∧(X∨¬Y∨ ¬Z) ∨ (¬X∨ ¬Y∨ ¬Z)

4 (P→R) → ((Q→R)→((P∨Q)→R)) ¬(X ∨ Z) ∧ (X → Y)

14 (X ∧ ¬Z)∨Y∨¬X∨(Y ∧ Z)∨(X ∧ Y)

5 X→(Y→Z))→((X→¬Z) 15 (Z∧(X∨¬Y))∨(¬Z∧X)∨((Z∨¬Y)∧Z 6 (X ↔ Y) → (X ∧ ¬Y) 16 (X ∨ Y ∨ Z) ∧ (X ∨ ¬Y ∨ Z) ∧ (X ∨

¬Y∨ ¬Z) ∨ (¬X ∨ ¬Y∨ ¬Z) 7 (X ∨ (Y ∧ ¬Z)) ∧ (X ∨ Z) 17 (¬(X∧¬Y∨¬Z)) ∧ (¬(¬X∨Y)∨X) 8 (X ↔ Y) ∧ ¬(Z → Y) 18 (A ∨ (B ∧ ¬C)) ∧ (A ∨ C) 9 ((X→Y)→(Z →¬X))→(¬Y∨ ¬Z) 19 ((P ∧ ¬Q) ∨ R) ∧ (¬P ∨ R) 10 (X∧Y∧Z)∨(X∧Z)∨(Y∧Z)∨YZ 20 ((¬X ∨ (X ∧ Y)) → (X ∧ ¬Y))

Page 26: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

26

Продолжение приложения Б

Задание 3. Сформулировать цель моделирования с точки зрения субъекта моделирования (S), выделить свойства заданного объекта (O), определить среди них существенные с точки зрения цели моделирования; выбрать форму их представления и построить модель, заполнив таблицу Б.3, варианты задания взять из таблицы Б.4.

Таблица Б.3

Субъект Объект моделирования

Цель моделирования

Свойства объекта

Существенные свойства

Форма представления модели

Таблица Б.4

№ варианта

Субъект S Объект O № варианта

Субъект S Объект O

1 пользователь компьютер 11 топограф ландшафт 2 техник компьютер 12 продавец магазин 3 артиллерист полет

снаряда 13 покупатель магазин

4 кассир поезд 14 студент вуз 5 диспетчер поезд 15 преподаватель вуз 6 архитектор здание 16 водитель автомобиль 7 строитель здание 17 фермер сбор урожая 8 жилец ремонт

квартиры 18 ректор преподаватель

9 турист поход 19 конструктор проект 10 геолог ландшафт 20 командир корабль

Задание 4. Дайте письменный ответ на следующие вопросы:

1. Структурные формулы и функциональные схемы простейших шифратора и дешифратора.

2. Численное решение обыкновенных дифференциальных уравнений. 3. Компьютерные вирусы: история развития, методы распространения. 4. Язык Java Script. Объекты, методы, свойства, события. Основные

операторы, структура программ. Примеры записи программ. 5. Численные методы решения задач: решение систем линейных

алгебраических уравнений. 6. Численные методы решения задач: интерполирование функций. 7. Ресурсы сети Internet (параллельные беседы).

Page 27: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

27

Продолжение приложения Б

8. Технология объектно-ориентированного программирования. 9. Технология процедурного программирования. Основные типы и способы

организации данных (переменные, массивы, списки и др.). 10. Технология логического программирования. Отличие языков логического

программирования от языков процедурного программирования. 11. Ресурсы сети Internet (электронная почта). 12. История развития языков программирования. 13. Методы проектирования (нисходящее, структурное, модульное). 14. Применение логических высказываний к анализу и синтезу релейно-

контактных схем. 15. Организация диалога с пользователем. Операторы языков,

обеспечивающие диалог (на примере трех языков). 16. Средства просмотра WWW-страниц. 17. Математическое моделирование. Классификация математических

моделей. 18. Операторы языков, обеспечивающие обработку текстовой информации

(на примере двух языков). 19. Файловый тип в языке программирования Pascal. Примеры записи

программ на создание и заполнение текстового файла, его считывание. 20. Истоки гипертекста. Первые реализации. Модели гипертекста.

Методические указания по решению

Пример 1. Дано логическое выражение F (A,B,C) = ((B ∨ A) ∧ C) ∨ ¬A. Составить таблицу истинности.

Решение. Проанализируем условие. Обозначим через n – число переменных, входящих в логическое выражение. Поскольку логическое выражение содержит три переменные, то сложное высказывание состоит из трех простых, то есть n = 3. Тогда число строк в таблице истинности равно 2n = 23 = 8, плюс две строки для заголовка, т. е. всего 2n + 2 = 23 + 2 = 10 строк.

Число столбцов в таблице равно сумме числа переменных (n) и числа всех логических операций (k), входящих в высказывание. Имеем три переменные (A,B,C), то есть n = 3 и 4 логические операции (2 дизъюнкции, конъюнкция и отрицание), то есть k = 4. В таблице истинности будет 7 столбцов

(n + k = 3 + 4 = 7). Пронумеруем столбцы и заполним вторую строку заголовка в соответствии

с порядком выполнения логических операций в логическом выражении – формуле сложного высказывания. Заполним первые 3 столбца значениями 0 и 1, перебирая все возможные значения простых переменных: В столбце А чередуем 4 нуля и 4 единицы (2n / 21 = 8 : 2 = 4). В столбце В чередуем 2 нуля и 2 единицы (2n / 22 = 4 : 2 = 2). В столбце С чередуем 1 ноль и 1 единицу (2n / 2n = 2 : 2 = 1).

Таким образом, все возможные варианты учтены и никакие два не

Page 28: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

28

Продолжение приложения Б совпадают. Заполним таблицу истинности в соответствии с определениями логических операций. Получим: 1 2 3 4 5 6 7 A B C 2 ∨ 1 4 ∧ 3 ¬ 1 5 ∨ 6 0 0 0 0 0 1 1 0 0 1 0 0 1 1 0 1 0 1 0 1 1 0 1 1 1 1 1 1 1 0 0 1 0 0 0 1 0 1 1 1 0 1 1 1 0 1 0 0 0 1 1 1 1 1 0 1 F

Пример 2. Упростить логическое выражение F = А ∧ В V А ∧ ¬В Решение: по закону дистрибутивности вынесем А за скобки, получим: F = А ∧ В V А ∧ ¬В = A ∧ (B V ¬B). Воспользуемся основным законом алгебры логики B V ¬B =1, тогда F = А ∧ 1. Применим свойство констант: А ∧ 1 = А, получим: F = А ∧ 1 = А. Ответ: F = А.

Пример 3. Сформулировать цель моделирования с точки зрения субъекта моделирования (S), выделить свойства заданного объекта (O). Решение: S – субъект моделирования (сборщик налогов), О – объект моделирования (земельный участок). Целью моделирования для субъекта будет определение суммы взимаемого налога с площади участка. Среди свойств объекта, таких как место расположения земельного участка; перечень растений, произрастающих на нем; качество почвы земельного участка; форма участка, его размеры, стоимость одного квадратного метра земли, наличие дома и др., выделим существенные с точки зрения поставленной цели. Такими свойствами будут форма участка (прямоугольник), его размеры – длина (a) и ширина (b) и стоимость одного квадратного метра земли (p). Наиболее удобной формой представления выделенных свойств является формула. Следовательно, модель, соответствующая поставленной цели S = abp.

Занесем данные в таблицу Б.5. Получим: Таблица Б.5

Субъект Объект Цель Свойства объекта Существенные

свойства Форма

Сборщик налогов

участок Определить площадь участка

Место расположения; перечень растений; качество почвы; размеры; наличие дома и др.

Форма участка – прямоугольник; размеры – длина (a) и ширина (b); стоимость одного квадратного метра земли(p)

Формула S =abp

Page 29: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

29

Окончание приложения Б

Рекомендуемая литература 1. Горстко, А. Б. Познакомьтесь с математическим моделированием/

А. Б. Горстко. – М. : Знание, 1991. 2. Заварыкин, В. М. Численные методы/В. М. Завырыкин и др. – М. :

Просвещение, 1991. 3. Компьютеры, модели, вычислительный эксперимент. Введение в

информатику с позиций математического моделирования. – М., 1988. 4. Криницкий, Н. А. Алгоритмы вокруг нас / Н. А. Криницкий. – М., 1984. 5. Либерти, Джесс. С++: Энциклопедия пользователя/Дж. Либерти. – К.,

2000. 6. Информатика: Базовый курс: учебник для вузов / под ред.

С. В. Симонович. – СПб. : Питер, 2005. – 640 с. 7. Фигурнов, В. Э. IBM PC для пользователя/В. Э. Фигурнов. – М. :

ИНФРА-М, 2001.– 640 с. 8. Информатика : учебник для вузов / под ред. Н. В. Макаровой. – 3-е изд. –

М. : Финансы и статистика, 2001.– 768 с. 9. Каймин, В. А. Информатика : учебник для вузов/В. А. Каймин. –

2-е изд. – М. : ИНФРА-М, 2002. – 272 с. 10. Леонтьев, В. П. Новейшая энциклопедия персонального компьютера

2002 / В. П. Леонтьев. – М.: ОЛМА-ПРЕСС, 2002. – 920 с. ПРИЛОЖЕНИЕ В

Разработка алгоритма решения задачи

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

1. Однозначность алгоритма – единственность толкования исполнителем правил выполнения действий и порядка их выполнения.

2. Конечность алгоритма – обязательность завершения каждого из действий.

3. Результативность алгоритма – выполнение алгоритма завершается получением определенных результатов.

4. Массовость алгоритма – возможность применения данного алгоритма для решения целого класса задач.

5. Правильность алгоритма – способность алгоритма давать правильные результаты решения поставленных задач.

Page 30: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

30

Продолжение приложения В

В таблице В.1 приведены некоторые наиболее часто употребляемые блоки и даны пояснения к ним.

Таблица В.1

Символ Выполняемые действия

Обозначает начало и конец алгоритма

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

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

Наличие условия в алгоритме

Наличие цикла в алгоритме

Наличие подпрограммы

Разрыв алгоритма

Внесение комментариев

Все имеющиеся в Паскале типы делят на группы. Типы, принадлежащие

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

Таблица В. 2

Название Идентификатор Множество допустимых символов

Порядковый Короткий целый shortint -128..127 Байтовый byte 0..255 Слово word 0..65535 Целый integer -32768..32767 Длинный целый longint -2147483648..2147483647 Символьный char Набор символов кода ASCII Булев boolean True, False Вещественный Вещественный Real -1,71038..-2,910-39, 2,910-39..1,71038

С одинарной точностью Single -3,41038..-1,510-45, 1,510-45..3,41038

С двойной точностью Double -1,710308..-5,010-324, 5,010-324..1,710308

С повышенной точностью Extended -1,1104932..-1,910-4951, 1,910-4951..1,1104932

Сложный comp -263+1..263-1

Page 31: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

31

Продолжение приложения В Основные стандартные функции описаны в таблице В.3.

Таблица В. 3

Функция Тип аргумента Тип результата Математическая запись, комментарий abs(x) integer; real integer; real |x| arctan(x) integer; real real arctg(x) cos(x) integer; real real cos(x) sin(x) integer; real real sin(x) exp(x) integer; real real ex ln(x) integer; real real ln(x), x>0 sqrt(x) integer; real real x , x0 sqr(x) integer; real integer; real x2 round(x) real integer округляет число x до целого trunc(x) real integer отбрасывает дробную часть x frac(x) real real Дробная часть числа x int(x) real real отбрасывает дробную часть x random(x) integer integer генерирует случайное число

в диапазоне от 0 до x

Остальные математические функции можно выразить через основные, например:

tg(x)=sin(x)/cos(x); xa =exp(a*ln(x)), x

Основные операции описаны в таблице В.4.

Таблица В.4

Приоритет Операция Действие операции 1 +,

not Присваивание знака Логическое отрицание

2 *, / div, mod and

Умножение, деление Целочисленные операции Логическое произведение

3 +, or, xor

Сложение, вычитание Логические суммы

4 <>, <, >, <=, >=, = in

Отношения (сравнения) Принадлежность к множеству

Операции выполняются с учетом их приоритета (1 – самый высокий).

Результатом операции div является частное от деления двух чисел, а mod –

остаток, например: (9-2) div 2=3; 7 mod 2=1.

Page 32: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

32

Продолжение приложения В

1. Программирование алгоритмов линейной структуры Алгоритм, в котором действия выполняются последовательно друг за

другом, называется линейным алгоритмом.

1.1. Вычислить высоты треугольника со сторонами a,b,c по формулам:

.2/)cba(pгде

,)cp)(bp)(ap(p)c/2(h

;)cp)(bp)(ap(p)b/2(h

;)cp)(bp)(ap(p)a/2(h

c

b

a

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

,)cp)(bp)(ap(p2t .c/th,b/th,a/th cba

С учетом преобразований схема алгоритма решения задачи будет иметь

вид, представленный на рис. В.1

Начало

a, b, c

конец

p=(a+b+c)/2

t=2p(p-a)(p-b)(p-c)

ha=t/a

hb=t/b

hc=t/c

ha , hb , hc

конец

Начало

x, n

y=sin x + 0,5

y=0

z=x3/y

z

y=0

да нет

нет

нет

Начало

конец

a, b, x

xa

z=sin x

xb

z=tg x

z=cos x

z

да

да

Рис.В.1. Рис.В.2. Рис.В.3.

Page 33: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

33

Продолжение приложения В 1.2. Вычислить площадь поверхности и объем усеченного конуса по

следующим формулам:

.Rr)h+r+(R)3/1(=V

;πr+πR+r)l+π(R=S22

22

1.3. Вычислить координаты центра тяжести трех материальных точек с

массами 321 m,m,m и координатами )y,(x);y,(x);y,(x 332211 по формулам:

.)m+m+(m/)ym+ym+y(m=y

);m+m+(m/)xm+xm+x(m=x

321332211с

321332211с

1.4. Вычислить координаты точки, делящей отрезок 21aa в отношении

n:n 21 по формулам:

.n/n= дег),+1(/)y+(y=y

);+1(/)x+(x=x

2121

21

1.5. Вычислить медианы треугольника со сторонами cb,a, по формулам:

.c2b+2a0,5=m

;b2c+2a0,5=m

;a2c+2b0,5=m

222c

222b

222a

1.6. Вычислить значение функции

ω/f)2/(π=xпри ),xωsin(ae=y ax .

1.7. Вычислить значения функций:

2a./)ac4b(b=2x,2a/)ac4b+(b=xгде

c,/)xbx(a=z;2/)xe+x(e=y

221

2121

1.8. Определить высоту треугольника, если его площадь равна S, а

основание больше высоты на величину a.

Page 34: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

34

Продолжение приложения В

2. Программирование алгоритмов разветвляющейся структуры На практике редко удается представить схему алгоритма решения задачи

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

2.1. Вычислить значение функции

0,5+)xnsin(=yгдеy,/x=z 3 .

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

Действительно, если 0=y , задача не может быть решена, так как деление

на 0 невозможно. Поэтому в алгоритме необходимо предусмотреть этот случай

и выдать в качестве результата информацию о том, что 0=y . Таким образом, рассматриваемый вычислительный процесс должен иметь две ветви: в одной, если 0y , необходимо вывести и отпечатать значение переменной z , а в

другой – вывести на печать информацию, что 0=y . Блок-схема алгоритма решения этой задачи представлена на рис. В.2. Этот вычислительный процесс можно описать условным выражением:

Вычислить z=x3/y, если y0. Вывести y=0, если y=0. В блок- схеме до блока номер 4 располагаются блоки сначала одной ветви

(блоки 5,6), а затем второй ветви (блок 7). Поскольку после выполнения блоков первой ветви нет необходимости выполнять блоки второй ветви, осуществляется переход сразу к концу алгоритма (к блоку 8).

В алгоритме дважды нарушается естественный порядок выполнения

блоков: 1) при проверке условия y=0 (условный переход); 2) после выполнения блоков первой ветви (безусловный переход).

2.2. Вычислить значение функции:

.bxесли,xtg=z

b;x<a<если,xcos=z

a;xесли,xsin=z

Page 35: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

35

Продолжение приложения В

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

Блок 3 проверяет условие x a, а в случае его выполнения осуществляется

переход к блоку 4, вычисляющему z=sin x. Если x>a, то блок 5 проверяет

условие x b. Если это условие выполняется, то осуществляется переход к

блоку 6, вычисляющему z=tg x. В противном случае x лежит в интервале

между a и b и происходит переход к блоку 7, вычисляющему z=cos x.После вычисления по любой из формул осуществляется переход в общую ветвь к блоку печати.

2.3. Вычислить корни квадратного уравнения ax2+bx+c=0. Если

d=b24ac0, то корни действительные; следовательно, необходимо

вычислить x1,2=e f. Если d<0, то корни мнимые; следовательно,

необходимо вычислить e и f по формулам e=b/(2a), f= |b2 4ac|/(2a). 2.4. Вычислить значение функции

0<xnесли,x0,89e=z

;0xnесли,x3,67e=z

2

2

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

признак 1=N , если наибольшим является a , и 2=N , если наибольшим является b .

2.6. Определить, попадает ли точка с координатами 00 y,x в круг

радиусом r . Присвоить признаку 1=N , если точка находится внутри круга, и 0=N , если точка вне круга. 2.7. Вычислить значение функции:

1.xесли,xe=z;1x<<1если1,=z

;1xесли,xln=z

Page 36: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

36

Продолжение приложения В 2.8. Определить, в каком квадранте находится точка с координатами yx, ,

и вывести на печать номер квадранта. 2.9. Округлить действительное положительное число x , меньшее 5, до

ближайшего целого числа:

4,5.xесли 5,=NX

;4,5x<3,5если 4,=NX

;3,5x<2,5если 3,=NX

;2,5x<1,5если 2,=NX

;1,5x<0,5если 1,=NX

;0,5x<если 0,=NX

2.10. Составить программу для решения квадратного уравнения

0=c+bx+ax2

2.11. Определить максимальное четное число из двух введенных. 2.12. Определить, можно ли из отрезков с длинами cb,a, построить

треугольник. 2.13. Для двух чисел yx, определить, являются ли они корнями уравнения:

.0=c+by+ax 24

2.14. Вычислить значения функции z в зависимости от значения x :

.случаепротивномв 1,+x=z

;1>xесли,x1=z;0,8<xесли,xsin+1=z 7,1

2.15. Если среди трех чисел zy,x, имеется хотя бы одно четное, то найти максимальное число, иначе – минимальное.

2.16. Ввести два числа aи b . Меньшее заменить полусуммой, а большее удвоенным произведением. 3. Программирование алгоритмов циклической структуры

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

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

Page 37: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

37

Продолжение приложения В

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

Если число повторений тела цикла заранее известно, то чаще всего применяется оператор цикла с параметром:

FOR<параметр цикла>:=<нач. знач.>TO<кон. знач.>DO<оператор>

FOR<параметр цикла>:=<нач. знач.>DOWNTO<кон. знач.>DO<оператор>

Где <параметр цикла> – величина, которая изменяется в цикле (переменная типа Integer); <нач. знач.> – величина, задающая начальное значение параметра цикла; <кон. знач.> – величина, задающая конечное значение параметра цикла. Шаг наращивания параметра цикла строго равен 1. При замене зарезервированного слова TO на DOWNTO шаг наращивания параметра цикла равен (-1).

3.1. Осуществить ввод с клавиатуры целого числа N и вычислить суммы всех целых чисел от 1 до N.

Составим программу: Var i,N,S: integer; Begin Write ('введите N'); Readln (N); S:=0; FOR i:=1 TO N DO S:=S+i; Writeln ('S=',S); End.

3.2. Вычислить и вывести на печать значения функции )x+(a/a=y 223

при x изменяющемся от 0 до 3 с шагом 0,1. Это цикл с заданным числом повторений, которое определяется по

формуле:

1h[+/)x=](xn 0к ;

где 0x и кx – соответственно начальное и конечное значение аргумента;

h – шаг изменения аргумента. Перед первым выполнением цикла необходимо задать начальное значение, равное 0, а затем организовать 31 раз вычисление и печать значений функции. При каждом новом выполнении цикла необходимо изменять аргумент на шаг равный 0,1. Чтобы процесс был конечным, необходимо задать условие окончания цикла.

Таким образом, для организации цикла необходимо:

Page 38: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

38

Продолжение приложения В

1. Задавать перед циклом начальное значение переменной, изменяющейся в цикле.

2. Изменять значение переменной перед каждым новым повторением цикла. 3. Проверять условие окончания цикла. 4. Управлять циклом, т. е. переходить к его началу, если он незакончен, или

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

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

На схеме блок 3 выполняет первую функцию, необходимую для организации цикла, блок 6 – вторую, блок 7 – третью и четвертую функции. Схема алгоритма получается во многих случаях более компактной и наглядной, если для ее построения использовать блок начала цикла, который выполняет все функции, необходимые для его организации (рис. В.5).

3.3. Вычислить значения членов бесконечного ряда xn/n!. Здесь имеет место итерационный цикл, так как заранее не известно, при

каком n выполняется условие xn/n!. Для итерационных циклов число повторений зависит от некоторого промежуточного или окончательного результата, а не от параметра цикла.

Сравнивая два соседних члена ряда, видим, что yn/yn-1=x/n. Поэтому для уменьшения времени счета, при вычислении текущего члена ряда

целесообразно использовать в цикле рекуррентную формулу yn=yn-1 x/n. Чтобы использовать эту формулу для вычисления значения первого члена

ряда y1=y0(x/1), необходимо, чтобы заданное начальное значение y0 было

равно 1. Параметром, изменяющимся в этом цикле, будет номер n члена ряда. Тогда формула для вычисления значения текущего члена ряда будет иметь вид

y=yx/n. Схема алгоритма такого вычислительного процесса приведена на рис. В.6.

Если использовать для организации цикла блок начала цикла, то в нем надо указать в качестве последнего значения параметра цикла некоторое большое

число, заведомо большее того n, при котором выполняется условие y. Оператор цикла с предпроверкой условия:

WHILE <условие>DO<оператор> Указанный оператор выполняется повторно до тех пор, пока условие

истинно. Действие его таково: если при выполнении этого цикла условие ложно сразу же, то оператор, стоящий после DO , не выполняется ни разу.

Page 39: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

39

Продолжение приложения В Оператор цикла с постпроверкой условия:

REPEAT<группа операторов>UNTIL<условие>

В этом операторе, в отличие от оператора цикла с предусловием, условие проверяется после выполнения тела цикла. При этом тело цикла выполняется хотя бы один раз и до тех пор, пока условие ложно. Если в цикле WHILE выполняется несколько операторов, то они объединяются в один составной и заключаются в операторные скобки BEGIN и END, а в цикле REPEAT это не делается.

3.4. Вычислить значение функции 1+|x|

1+4xx=y

3, пользуясь оператором

цикла WHILE, при x , изменяющемся в диапазоне коннач xxx с шагом

Δx . Представим решение этой задачи в виде блок-схемы (рис. В.7).

Начало

a

x=0

y

x=x+0,1

конец

нет да

y=a3/(a2+x)

x3

Начало

конец

a

x = 0..3,0.1

y=a3/(a2+x2)

y

Начало

конец

x,

y=1

n=1

y=yx/n

y

n=n+1

y> да

нет

Рис. В.4. Рис. В.5. Рис. В.6.

Page 40: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

40

Продолжение приложения В

Составим программу: Var x,y,xN,xK,dx:real; Begin Writeln ('введите xN,xK,dx); Read (xN,xK,dx); X:=xN; WHILE x<=xK DO begin Y:=(x*sqr(x)-4*x+1)/(abs(x)+1); Writeln('x=',x,' y=',y); X:=x+dx; End; End.

Рис. В.7 3.5. Вычислить сумму целых четных чисел до 10 включительно.

Представим решение этой задачи в виде блок-схемы (рис. В.8). Составим программу: Var S,i:integer; Begin S:=0; i:=0; Repeat S:=S+i; i:=i+2 Until (i>10); Writeln ('i=',i' S=',S); End.

Рис. В.8

Начало

xN,xK,dx

X = xN

X x

y=(x3-4x+1)/|x|+1

x, y

x=x+dx конец

нет

да

Начало

S=0

i=0

i=i+2

S=S+i

i>10

i,S

конец

нет

Page 41: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

41

Продолжение приложения В

4. Массивы Массив – это совокупность переменных, которые имеют одно и то же имя

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

Различают одномерные массивы (1 индекс) – они используются для представления векторов и двумерные массивы (2 индекса) – они используются для представления матриц.

Переменные типа массив объявляются следующим образом: Var A: array [1..10] of integer; – одномерный массив из 10 целых чисел, B: array [1..20] of real; – одномерный массив из 20 вещественных чисел, C: array [1..4,1..7] of integer; – двумерный массив из 28 целых чисел. При описании массива используются зарезервированные слова:

ARRAY – массив OF – из За словом array в квадратных скобках указывается тип – диапазон, с

помощью которого компилятор определяет общее число элементов массива.

4.1. Вычислить значения функции 2/)a+(x=z ii , если ix и ia –

элементы массивов, состоящие из 40 элементов каждый. 4.2. Записать в массив x , состоящий из 20 элементов, нули.

4.3. Вычислить значения функции, если ia – элементы массива:

0.aесли0,=a

0>aесли,a=a

ii

iii

4.4. Вывести на печать положительные элементы массива. 4.5. Вывести на печать первый отрицательный элемент массива и его

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

4.6. Вывести на печать номера элементов массива, удовлетворяющих

условию 1<a<0 i .

4.7. Вычислить 3 3/cba=z iii , где iii c,b,a - элементы массивов,

состоящие из 20 элементов каждый. 4.8. Вывести на печать элементы массива кратные трем. 4.9. Вывести на печать номера точек, лежащих в круге радиусом r .

Координаты точек заданы массивами .)y,..,y,(y),x,...,x,(x 10211021

Page 42: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

42

Продолжение приложения В

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

4.11. Найти минимальное значение элемента массива и его порядковый номер.

4.12. Найти минимальное значение элемента массива из нечетной позиции. 4.13. Найти максимальное значение элемента массива и его порядковый

номер. 4.14. Дан массив, состоящий из 30 элементов, найти второй

положительный элемент. 4.15. Дан массив, состоящий из 50 элементов, найти предпоследний

нечетный элемент. 4.16. В одномерном массиве перенести элемент, стоящий на первом месте

в конец массива.

5. Характерные приемы алгоритмизации задач Рассмотрим приемы, наиболее часто используемые при решении

практических задач. Вычисление в цикле с несколькими одновременно изменяющимися

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

Начало

конец

a, h, y

x =a

i=1..20

z =xyi/(x+yi)

x=x+h

z

Начало

конец

zi=(xi2+1)/i

i=1..50

x

z

Начало

конец

z=z+xi2/i

i=1..20

z

z=0

x

Рис. В.7 Рис. В.8 Рис. В.9

Page 43: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

43

Продолжение приложения В

5.1. Вычислить значение функции 2/a)+(x=z i , если ix являются

элементами массива, a изменяется от 2 с шагом 0,5. Считать 0>a+xi .

5.2. Вычислить значение функции i/)c+b+(a=z i , если a изменяется от

0 до 1 с шагом 0,1, b изменяется от 1 до 3 с шагом 0,2, ic – элементы массива.

5.3. Вычислить значения функции 1i2i z/y)+(x=u , если ix – массив

)x,..,x,(x 5021 , iz – массив ),z..,,z(z 10021 , а y изменяется от 1 с шагом 0,25.

5.4. Вычислить значение функции )y+(x/xy=z ii , если x изменяется

одновременно с iy от начального значения a с шагом h , где iy являются

элементами массива )y,...,y,(y 2021 .

Здесь в цикле, выполняемом 20 раз, изменяются два параметра: простая переменная x и i индекс переменной y . Схема алгоритма решения этой

задачи представлена на рис. В.7, где блок 4 задает закон изменения параметра i от 1 до 20 с шагом 1, блок 3 – перед циклом начальное значение параметра x , а блок 7 вычисляет новое значение параметра x .

5.5. Вычислить значения функции xyx=z , где x изменяется от 1 с

шагом 0,1 до 2, y изменяется от 0y с шагом h . Считать 0>y .

5.6. Вычислить и вывести на печать значения членов ряда

.41

h20+x,...,

1+2n

+nhx,...,

7

3h+x,

5

2h+x,

3

+hx

5.7. Вычислить и вывести на печать значения членов ряда

...,n)1+2n(+n

x)12n(+x,...,

n5+n

x3+x,

n3+n

Δx+x

0

0

0

0

0

0

.

Последнее значение знаменателя принять равным m. Запоминание результатов: если результатом вычислений является

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

Page 44: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

44

Продолжение приложения В

5.8. Вычислить и запомнить значения функции i/)1+(x=z 2ii ,

где ix – элементы массива. Схема алгоритма представлена на рис. В.8.

В схеме блок печати стоит за циклом, так как на печать выводится массив Z .

5.9. Вычислить и запомнить значения функции 2cxbxae=z

при изменении аргумента x от 0 до 2 с шагом 0,1.

5.10. Вычислить и запомнить значения функции 2/)y+(x=z iii , где

y,x – массивы из 45 элементов каждый. 5.11. Вычислить и запомнить значения функции

.0xесли1,-

0;xесли0,=y

0;xесли,x=y

i

ii

iii

где ix – элементы массива из 20 элементов.

5.12. Записать положительные элементы массива )x...,x,(x 3021 подряд в

массив Y .

5.13. Переписать в массив Y элементы массива )x...,x,(x 3021 в обратном

порядке. 5.14. Записать в массив Y подряд номера положительных элементов

массива .)x...,x,(x 3021

5.15. Вычислить значение функции )xncos()xsin(n=y , если x

изменяется от 0x до mx с шагом h . Записать в массив Z подряд значения

функции, удовлетворяющие условию 10y .

5.16. Записать подряд в массив Bэлементы массива )x...,x,(x 3021 ,

имеющие четные индексы.

5.17. Записать подряд в массив Bэлементы массива )x...,x,(x 3021 ,

стоящие на четных местах, а элементы, стоящие на нечетных местах запомнить

в массиве C .

5.18. Запомнить в массиве Z положительные значения yдля монотонно

убывающей функции c+bx+ax+x=y 23 , если x изменяется от 0 с шагом 0,1 до 10.

Отрицательные значения функции не вычислять. Считать, что функция имеет хотя бы один отрицательный элемент.

Page 45: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

45

Продолжение приложения В

5.19. Переписать положительные элементы массива )x...,x,(x 3021 в

массив Z , а отрицательные – в массив Y . Элементы в массивах располагать подряд.

5.20. Запомнить в массиве A значения n , при которых 0>z для

знакочередующейся функции )+x(nsin=z , а в массиве B – значения n ,

при которых 0z , )10,..,1,2,3=(n .

5.21. Переписать элементы главной диагонали матрицы n)A(n в

одномерный массив B , считая 30n . Вычисление суммы и произведения: если необходимо вычислить сумму

значений некоторой функции f(x)=y при различных значениях аргумента, целесообразно организовать цикл, в котором надо предусмотреть не только вычисление значений функции, но и накопление суммы путем прибавления полученных слагаемых к сумме всех предыдущих слагаемых. Формула, используемая для накопления суммы, имеет вид ny+1nz=nz . Поскольку

надобности в запоминании значений всех слагаемых и промежуточных сумм

нет, в качестве z и yнужно использовать простые переменные и накопление

суммы вести в цикле по формуле y+z=z , где знак «=» означает присваивание

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

Аналогично накапливается и произведение с той лишь разницей, что для

его накопления используется формула zy=z , а начальное значение произведения должно быть равно единице.

5.22. Вычислить значение функции. Схема алгоритма решения этой задачи представлена на рис. В.9. Блок 3, задающий начальное значение суммы стоит перед циклом, в котором накапливается эта сумма. Блок 5 вычисляет значение слагаемого и накапливает сумму. Поскольку результат решения этой задачи одно число, блок печати стоит за циклом и выполняется один раз.

5.23.Вычислить произведение положительных элементов массива. Схема алгоритма решения задачи представлена на рис.В.10.

Значения сомножителей вычислять не требуется, поскольку они уже имеются в массиве. Однако прежде чем накапливать произведение, надо проверить, является ли сомножитель положительным (блок 5). Блок 3 задает начальное значение произведения, равное единице. В одной из ветвей этого процесса стоит блок 6, осуществляющий накопление произведения. При

невыполнении условия xi>0 никаких действий не предусматривается, а осуществляется переход к концу цикла.

Page 46: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

46

Продолжение приложения В

5.24. Вычислить значения функции

20

1ixi/xsinz , если x

изменяется от 0 с шагом h одновременно с i.

5.25. Вычислить значения функции i/)in(z15

1i

.

5.26. Вычислить сумму положительных элементов массива (x1,x2,…,x55). 5.27. Вычислить среднее арифметическое элементов массива. 5.28. Вычислить среднее арифметическое отрицательных элементов

массива, полагая, что в массиве есть отрицательные значения. 5.29. Вычислить среднее геометрическое положительных элементов

массива, имеющих четные индексы. Если таких элементов нет, то вывести на печать признак 0.

5.30. Вычислить среднее геометрическое элементов массива, удовлетворяющих условию a>yi , считая, что в массиве есть элементы, для

которых выполняется это условие. 5.31. Подсчитать количество элементов целочисленного массива, кратных

трем. 5.32. Для целочисленного массива определить, является ли сумма его

элементов четным числом, и вывести на печать ДА или НЕТ.

Начало

конец

x

i=1..100

z

z=zxi

xi >0

z =1

нет

да

Начало

конец

x,

y=1, z=1, n=1

y=y(x)2/2n(2n-1)

z=z+y

n=n+1

y >

z

да

нет

Начало

конец

a, n

y=a1

i=2, n+1

y=yx+ai

y

Рис. В.10 Рис. В.11 Рис. В.12

Page 47: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

47

Продолжение приложения В

5.33. Подсчитать для массива количество элементов, ближайшим целым числом для которых является 1.

5.34. Вычислить сумму четных и сумму нечетных чисел натурального ряда от 1 до N.

5.35. Вычислить сумму элементов массива, стоящих на четных местах. 5.36. Вычислить сумму 20 первых элементов ряда

.i

x+1=

19

x+...+

2

x+x+1=S

19

1i

i192

Для определения ix использовать прием накопления произведения, т. е.

xx=x 1ii .

5.37. Вычислить среднее арифметическое элементов S массива )a,...,a,(a 8021 , удовлетворяющих условию 2a1 i . Если таких элементов

нет, то считать .0=S 5.38. Подсчитать количество положительных и количество отрицательных

элементов массива. 5.39. Вычислить сумму элементов главной диагонали матрицы.

5.40. Вычислить значение функции z=n!. 5.41. Вычислить сумму членов ряда

10

1i

i22042

)!i2(

x+1=

!20

x+...+

!4

x+

!2

x+1=z .

Для вычисления значения члена ряда использовать рекуррентную формулу

)12n(2n/xy=ny 21n .

5.42. Вычислить сумму членов ряда

!21

x...+

)!12n(

x)1(+...+

!5

x

!3

x+x1=z

211n2n

53

.

Для определения значения члена ряда использовать формулу

)1+2n(2n

xy=y

2

n1n

.

Начальное значение .xy,x1=z

5.43. Вычислить значение функции

mn

1i

mn i

im=

m)!(nm!

n!=c .

Page 48: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

48

Продолжение приложения В

5.44. Вычислить сумму положительных и сумму отрицательных значений функции a)x(nsina)+x(ncos=z .

5.45. Вычислить приближенное значение функции Бесселя

.

)!kn(!k2

x1

!n2

x

)!kn(!k2

x)1(

)x(J100

1k

nk2k

n

100

0k

nk2k

Для определения n! использовать отдельный цикл, а слагаемого –

рекуррентную формулу k)+k(n

)2/(xy=y

2

1kk

. В качестве начальных значений

суммы и слагаемого использовать член ряда при 0=k , равный n!

)2/(x n.

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

5.46. Вычислить сумму членов ряда

!n2

x1+1=...+

)!2n(

x)1(+...

!4

x+

!2

x1=z

n2n

1n

n2n

42

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

Схема алгоритма решения этой задачи представлена на рис. В.11. Блок 3 задает начальное значение y , равное 1, начальное значение суммы, равное члену ряда с номером 0, так как вычислять его нет надобности, и начальное значение параметра цикла. В цикле блок 4 вычисляет значение текущего члена ряда, блок 5 накапливает сумму, блок 6 изменяет параметр цикла. Блок 7 проверяет условие повторения цикла и осуществляет переход к началу цикла, если y>, или выход из него в противном случае.

5.47. Вычислить сумму членов ряда с точностью до члена ряда, меньшего

, используя рекуррентную формулу.

...+n!

x+...+

!2

x+x+1=z

n2

Page 49: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

49

Продолжение приложения В

5.48. Вычислить сумму членов ряда

...+x)!3+(m

)2)(m1m(m+x

)!2+(m

)1m(m+

)!1+(m

mx+1=z 32

с точностью до члена ряда, меньшего . Для определения текущего значения

члена ряда использовать рекуррентную формулу m+n

)1+nx(my=y 1nn

,

где n – номер члена ряда. Начальное значение y принять равным m!

1.

5.49. Вычислить сумму членов ряда

...+)2+)(n1+(n

n+...+

43

2+

32

1=y

с точностью до члена ряда, меньшего 10-4. 5.50. Вычислить сумму членов ряда

...+n

nxcos+...+

9

cos3x+

4

cos2x+xcos=z

2

5.51. Вычислить сумму членов ряда

...+

)1+)(x1+2n(

)1(x+...+

)1+(x5

)1(x+

)1+(x3

)1(x+

1+x

1x2=z

1n2

1n2

5

5

3

3

с точностью до члена ряда, меньшего 10-6. 5.52. Вычислить сумму членов ряда

...+)1+2n)(12n(

nxcos2+...+

53

cos4x+

31

cos2x=y

с точностью до члена ряда, меньшего 10-4. 5.53. Вычислить сумму членов ряда

...+x2+n

1+

1+n

1+x

n

1+...+x

2

1+1x=y 11nn

с точностью до члена ряда, меньшего 10-6. Для определения текущего члена ряда использовать рекуррентную формулу.

Вычисление полинома: для вычисления полинома n-й степени

1nn1n

2n

1 a+xa+...+xa+xa=y

удобно использовать формулу Горнера

1nn321 a+)xa+...+)xa+)xa+x((a...(=y .

Page 50: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

50

Продолжение приложения В

Если выражение стоящее внутри скобок, обозначить iy , то значение

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

формулу 1ii1i a+xy=y . Значение полинома yполучается после

повторения этого процесса в цикле n раз. Начальное значение 1y

целесообразно взять равным 1a , а цикл начинать с i=2. Если обозначить yпростой переменной, то схема примет вид, показанный на рис. В.12. Все коэффициенты полинома и свободный член, как правило, сводятся в массив,

состоящий из n+1 элементов (n порядок полинома). Если полином не

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

5.54. Вычислить значение многочлена 1+6x+5x4x+x2x=y 2568 , используя формулу Горнера. Коэффициенты полинома удобно представить массивом (2; 0; -1; 4; 0; 0; -5; 6; 1). Порядок полинома n равен 8. Схема алгоритма будет аналогична схеме алгоритма, представленной на рис. В.12.

5.55. Вычислить значение функции

x+xc+xc+xc+xc+xc=xsin 53

45

37

29

1 ,

используя формулу Горнера

x+)xc+)xc+)xc+)xc+x((((c=xsin 52

42

32

22

1 ,

где 521 c,...,c,c – элементы массива.

5.56. Вычислить значение многочлена, используя формулу Горнера.

1+xx0,53x+x+x4,52x=z 24791012 . 5.57. Вычислить значение полинома:

9+8x+7x+6x+5x+4x+3x+2x+1x=z 2345678.

Так как коэффициенты полинома – числа натурального ряда, то сводить их в массив не имеет смысла. Вычисление их целесообразно производить в процессе решения. Тогда формула для вычисления текущего значения полинома будет иметь вид n+xz=z 1nn .

5.58. Вычислить значение 8x)+1(=s , используя формулу Горнера

1+8x1+...+x6

31+x

7

21+x

8

1...=s

.

Множитель, на который умножается любая скобка, можно представить как

)1+i(m/ix=ih , где 8=m .

Page 51: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

51

Продолжение приложения В

Нахождение наибольшего и наименьшего значения: нахождение наибольшего и наименьшего значения функции f(x)=y выполняется в цикле, в котором вычисляется текущее значение функции, и сравнивается с наибольшим или наименьшим из всех предыдущих значений этой функции. Если текущее значение функции окажется больше наибольшего из предыдущих значений, то его надо считать новым наибольшим значением. В противном случае наибольшее значение остается прежним. Это можно описать условной математической формулой:

ymax = yi , если yi >ymax ; ymax = ymax , если yi ymax .

Аналогично для наименьшего значения

ymin = yi , если yi < ymin ; ymin = ymin , если yi ymin .

После первого выполнения цикла вычисляется 1y и сравнивается с

начальным значением maxy или miny . После сравнения maxy или minyпринимает значение 1y . Тогда после вычисления 2y будет находить

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

чтобы наверняка выполнилось условие max1 y>y , а в качестве начального

значения miny – очень большое число, чтобы выполнилось условие

min1 y<y . Следует отметить, что здесь речь идет не о максимуме или

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

5.59. Найти наименьшее значение функции f)+x(sinae=y bx

в интервале изменения аргумента x от 0 до с с шагом h. Схема алгоритма решения этой задачи представлена на рис. В.13. Блок 3

задает перед циклом начальное значение 19

min 10=y . Блок 5 вычисляет

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

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

Поскольку сравнивать первый элемент массива с собой не имеет смысла, цикл выполняется, начиная со второго элемента.

Page 52: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

52

Продолжение приложения В

Схема алгоритма решения этой задачи представлена на рис. В.14. Блок 3 перед циклом задает начальное значение 1max x=x и 1=Nmax . В цикле блоки

5 и 6 реализуют условную формулу (1), блок 7 определяет номер наибольшего элемента массива.

5.61. Найти экстремальное значение функции 2cxbxe|a=|y при

изменения аргумента x от 0 до 4 с шагом h. Функция такого вида имеет один

экстремум. Если c>0, то следует искать минимум, если 0<c , то максимум. Рассмотренный выше алгоритм нахождения наибольшего или

наименьшего является универсальным, так как позволяет решить задачу даже в том случае, если функция не имеет экстремума или имеет несколько экстремумов. Если же функция имеет один экстремум, то затраты времени на решение такой задачи можно существенно сократить, используя другой алгоритм. Пусть функция имеет один максимум. Тогда вычисляя ее значения, лежащие до максимума, всегда будем получать новое значение функции, большее, чем наибольшее из всех предыдущих, т. е. всегда будет выполняться условие maxi y>y . После максимума функция начинает убывать;

следовательно, все последующие iy будут меньше наибольшего. Условие

maxi y<y можно использовать для выхода из цикла, так как среди

последующих значений функции не может быть наибольшего. Этот процесс можно описать условной формулой:

ymax = yi , если yi > ymax ; ymax = выход из цикла, если yi ymax .

Аналогично, для нахождения наименьшего значения:

ymin = y i , если yi < ymin ; ymin = выход из цикла , если yi ymin .

Рассматриваемая функция всегда положительна. В зависимости от знака

величины с она имеет максимум или минимум. Поэтому алгоритм должен

начинаться с проверки знака величины с. Схема алгоритма приведена на рис. В.15. Блок 3 проверяет знак величины

с, и если он положительный, то 1=N (функция имеет минимум), а если

отрицательный, то 1=N (функция имеет максимум). Блок 6 задает начальное

значение my (экстремум). Если 1=N , то 19

m 10=y ; если 1=N , то

19m 10=y . Блок 9 в цикле проверяет условие myN<Ny . Если 1=N , то

условие аналогично условию my<y (как и надо при нахождении минимума);

Page 53: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

53

Продолжение приложения В

если 1=N , то условию my>y (как и надо при нахождении максимума).

Если условие myN<Ny выполняется, то y считается новым экстремальным

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

цикл будет выполнен для всех значений аргумента x и условие выхода из

цикла ни разу не выполнится. Блок 11 выдает на печать значение N - признак экстремума и my - экстремальное значение. Сокращение времени счета

осуществляется за счет выхода из цикла, если условие myN<Ny не

выполняется. 5.62. Найти номер (индекс) наименьшего элемента массива. 5.63. Найти наибольшее значение )y+(x ii для двух массивов.

5.64. Найти наименьшее значение функции d+cx+bx+ax=y 23и

значение аргумента, при котором оно получено. Значение аргумента x изменяется от 0 до 10 с шагом 0,1.

5.65. Найти экстремум функции d+cx+bx+ax=y 23, имеющий один

максимум и один минимум при 0>a и 0<bac3 2 , если x изменяется от –10 до 10 с шагом 0,2, и максимума функция достигает при меньших значениях аргумента.

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

5.67. Найти экстремум функции cxax beae=y , если x изменяется от

0x до mx с шагом h . Функция имеет один экстремум. Для определения того,

является этот экстремум максимумом или минимумом, можно использовать следующий способ. Вычислить два значения функции 1y и 2y . Если 21 y>y ,

то функция имеет максимум, в противном случае – минимум. 5.68. Записать +1 вместо максимального элемента массива, а – 1 вместо

минимального. 5.69. Найти и записать вместо 1x наибольший элемент, а вместо 2x –

наименьший для массива. 5.70. Для массива вычислить наибольшее и наименьшее значения модуля

разности между соседними элементами.

5.71. Для функции f)x(sinae=y bx найти первый максимум и первый минимум и значения аргумента, при которых они достигаются.

Функция сначала достигает максимума. Величина x изменяется от 0 до 6 с шагом 0,1.

Page 54: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

54

Продолжение приложения В

5.72. Найти наибольший элемент главной диагонали матрицы и вывести на

печать всю строку, в которой он находится. 5.73. Найти наименьший из положительных элементов массива.

Уточнение корней уравнения: аналитическое решение для многих

алгебраических и трансцендентных уравнений получить не удается. Для решения таких уравнений используют приближенные итерационные методы (методы последовательных приближений). Решение уравнений производится определением грубого значения корня (например, графическим путем) и последующим его уточнением. Уточнение значения корня уравнения рассматривается на примере метода итераций. Сущность метода заключается в том, что исходное уравнение представляется в виде f(x)=x .

Начало

конец

ymin

нет

да

y=ae-bxsin(x+)

ymin= y

y = ymin

x = 0..c,

Ymin= 1019

a, b, c, , , h

Начало

конец

x

Xmax= x1, Nmax= 1

i=2…40

xi > xmax

xmax = xi

N = i

Nmax, xmax

да

нет

Начало

конец

a, b, c, h

c > 0

N=1

N = -1

ym=N1019

x=0..4, h

y=|a|ebx+cx2

Ny<Nym

ym=y

N, ym

да

да

нет

нет

Рис. В.13 Рис. В.14 Рис. В.15

Page 55: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

55

Продолжение приложения В

Если в интервале между приближенным значением корня 0x и корнем

уравнения x выполняется условие |1<(x)'f| , то метод дает возможность вычислить значение корня с заданной точностью. Если это условие не выполняется, то надо перейти к обратной функции. Новое значение корня вычисляется через предыдущее по формуле )f(x=x i1i . Повторяя этот

процесс для ,...,x,x,x 321 можно найти значение корня с заданной точностью,

определяемой с помощью отношения ε|xx| 1ii .

5.74. Вычислить наименьший положительный корень уравнения

0=)x(tgx с точностью 5-10=ε .

Преобразуем уравнение к виду )x(tg=x . Для этого уравнения

1|>)x('tg| , поэтому перейдем к обратной функции )x(arctg=x , где

kπ+)x(arctg=)x(arctg – неглавное значение функции. Будем считать все

значения ix (приближенные значения корня) простыми переменными. Для

решения задачи требуются два смежных значения корня. Обозначим 0x –

предыдущее значение корня, а 1x – последующее значение корня. Начальное

значение наименьшего положительного корня 4,7.=x0 Для вычисления

нового значения корня будем использовать формулу π+)x(arctg=x 01 .

Схема алгоритма решения этой задачи приведена на рис.В.16. Блок 2 задает начальное (грубое) значение корня. Блок 3 вычисляет новое значение корня. Блок 4 проверяет достижение заданной точности. Если точность достигнута, то осуществляется выход из цикла, в противном случае выполняется блок 5 и переход к началу цикла. Блок 5 присваивает предыдущему значению корня только что вычисленное значение. На печать выводятся два смежных значения корня, так как корень уравнения лежит между ними.

5.75. Вычислить приближенное значение корня уравнения )2+(xln=x с

точностью 4-10=ε , используя метод итераций .b)=(x0

5.76. вычислить значение функции x/1=y по итерационной формуле

3ii1i xy

2

1y

2

3=y , с точностью

5-10=ε , принять .)22(2=y0

5.77. Определить корень уравнения 0=ex 2/2)ax( , используя метод

итераций, с точностью .b)=(x10=ε 05-

Page 56: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

56

Продолжение приложения В

6. Алгориты со структурой вложенных циклов Любой цикл, содержащий внутри себя один или несколько других циклов,

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

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

поэтому параметром этого цикла следует выбрать номер столбца j . Перед

циклом нужно задать начальное значение суммы 0=S . После окончания цикла результат необходимо вывести на печать. Если действия повторить во внешнем

цикле, изменяя индекс строки i , то будут вычислены все 10 сумм.

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

Начало

конец

x0=4,7

xi=arctgx0+

|x1 – x0|10-5

x0= x1

да

нет

x0, x1

i =1…10

Начало

конец

a

S=0

j =1..8

aij>0

s =s+aij

s

да

нет

Начало

конец

x

k =1..99

xmin= xk, n=k

j = k+1..100

xj < xmin

xmin= xj, n=j

xn= xk, xk = xmin

x

да

нет

Рис. В.16 Рис. В.17 Рис. В.18

Page 57: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

57

Продолжение приложения В

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

6.2. Упорядочить элементы массива, расположив их в порядке возрастания в том же массиве.

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

Схема алгоритма решения задачи представлена на рис. В.18. Внешний цикл повторяется 99 раз, так как находить наименьший элемент из одного элемента x100 не имеет смысла. Блок 4 задает начальные значения x min и номер n наименьшего элемента. Блоки 6,7 находят наименьший элемент и его порядковый номер. Блок 8 записывает k-й элемент в n-ю ячейку и наименьший элемент в k-ю ячейку.

6.3. Вычислить значения функции

10

1i

n

1k

ik

k

xsinz , где ix заданы

массивом .n,..,1,2=k),x,...x,(x 1021

6.4. Вычислить значения функции

20

1ij

ij xe/11z , где ix заданы

массивом .)x,...x,(x 2021 Результаты запомнить в массиве z .

6.5. Упорядочить элементы массива, расположив их по убыванию. 6.6. Найти наибольшие элементы каждой строки матрицы X(10×20) и

записать их в массив Y. 6.7. Найти среднее арифметическое положительных элементов каждого

столбца матрицы X (10×20) при условии, что в каждом столбце есть хотя бы один положительный элемент.

6.8. Вычислить суммы элементов каждой строки матрицы C (20×20), определить наименьшее значение этих сумм и номер соответствующей строки.

6.9. Построить матрицу B, поменяв местами строки и столбцы.

6.10. Вычислить наибольшие значения функции 2x5xib

i e2=y

, если ibзадано массивом. Аргумент xизменяется от -2 до 2 с шагом 0,1. Все maxy

запомнить в массиве C .

Page 58: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

58

Продолжение приложения В

6.11. Определить количество положительных и отрицательных элементов матрицы A(20×20).

6.12. Определить количество положительных элементов каждого столбца матрицы X(20×20) и запомнить их в массиве Y.

6.13. Найти наибольший элемент матрицы Y(20×30) и номер строки и столбца, в которых он находится.

6.14. Найти наименьший элемент матрицы X(10×15) и записать нули в ту строку и столбец, где он находится.

6.15. Вычислить значение функции 2/baaz10

1ki

20

1ii

, где ia

заданы массивом )a,...,a,(a 2021 , bизменяется от 0 с шагом 0,1.

6.16. Перемножить матрицы A(n×m) и B (m×l). Элементы

результирующей матрицы вычислить с помощью выражения jkm

1jijik bac

.

6.17. Вычислить математическое ожидание 100

1=iix x

100

1=m и дисперсию

100

1i

2xix mx

100

1=D случайных величин, записанных в массивах BA, и

C по 100 элементов каждый. 6.18. Переписать первые элементы каждой строки матрицы X (10×15),

большие c , в массив B . Если в строке нет элемента, большего c , то записать ноль в массив B .

6.19. Вычислить значения полинома 10i9i8

2i9

1ii a+xa+..+xa+xa=y

при различных значениях коэффициентов, используя формулу Горнера

10i9i3i2i1ii a+)xa+...+)xa+)xa+x((a...(=y . Коэффициенты сведены в

матрицу A(5×10).

6.20. Определить с точностью 0,01=ε значение аргумента, при котором

функция )xln(ax=y достигает минимума при x , изменяющемся от 0,2 до 10.

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

1. Определение грубого значения минимума функции при большом шаге изменения аргумента, например 0,2.

2. Повторение процесса в районе минимума при шаге изменения аргумента, равном 0,01.

Page 59: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

59

Продолжение приложения В

Таким образом, при первом нахождении минимума шаг изменения аргумента равен 0,2, а его начальное значение 0,2=x0 . При повторном

нахождении минимума шаг равен 0,01, а 0,2x=x min0 .

Схема алгоритма решения задачи приведена на рис. В.19. Во внутреннем цикле осуществляется поиск наименьшего значения функции и значения аргумента, при котором оно достигается. Поскольку функция имеет один минимум, выход из цикла происходит при minyy . В качестве параметра

цикла взята некоторая переменная i , которая выполняет роль счетчика количества повторений цикла. После окончания внутреннего цикла проверяется

условие 0,01=h . Если выполнение условия имеет место, то осуществляется выход из внешнего цикла. В противном случае задаются новое начальное

значение переменной x , новый шаг h , и внешний цикл повторяется еще один раз.

6.21. Найти значение аргумента x для

функции 2cxbxae=y

, имеющей один максимум, при котором достигается максимум

с точностью 0,005=ε . Аргумент изменяется от -2 до 2 с шагом 0,1.

6.22. Найти минимальные элементы каждой строки матрицы и поместить их на главную диагональ, а диагональные элементы записать на место минимальных. 6.23. Найти максимум функции

d+cx+bx+ax=y 23при изменении

аргумента x от -10 до +10 с шагом 0,1 и

минимум с шагом 0,01. Функция y имеет

один максимум и один минимум при 0>a и

0<bac3 2 и достигает максимума при меньших значениях аргумента. 6.24. Найти и запомнить в массиве Z , начиная с первого максимума все максимумы и

минимумы функции f)x(sinae=y bx при изменении аргумента x от 0 до 5 с шагом 0,1.

i =1..51

Начало

конец

a

y < ymin

ymin= y; xmin= x x = x+h

да

нет

да

нет

h=0,2; x=0,2;ymin=1019

y =ax-lnx

h = 0,01

x = xmin- 0,2 h =0,01

xmin

Рис. В.19.

Page 60: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

60

Продолжение приложения В Процедуры и функции

Нередко в программах встречаются повторяющиеся или похожие фрагменты. Имеется возможность оформлять такие фрагменты специальным образом – выделять их в подпрограммы.

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

В Паскале имеется два вида подпрограмм – процедуры и функции. Их структура очень похожа на структуру основной программы. Описание процедуры

Описание процедуры начинается с заголовка, который является обязательным (в отличие от заголовка программы). Заголовок состоит из служебного слова Procedure, за которым следует имя процедуры и, в круглых скобках, список формальных параметров. В конце заголовка ставится точка с запятой.

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

Procedure Имя [(список формальных параметров)]; Описательная часть

Begin Тело процедуры

End; При вызове процедуры ее формальные параметры заменяются

соответствующими фактическими. Фактические параметры – это параметры, которые передаются процедуре

при ее вызове. Количество и типы формальных и фактических параметров должны в

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

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

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

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

Page 61: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

61

Продолжение приложения В Пример: Составить программу для вычисления an , целые числа a и n (n0) вводятся

с клавиатуры. Решение: Составим процедуру для вычисления степени целого числа. Procedure Degree(x,y:integer; var st:longint); Var i:integer; {описательная часть} Begin {тело процедуры} st:=1; For i:=1 To y Do st:=st*x; End; Первая строчка описания – это заголовк процедуры, который начинается со

слова Procedure. Процедура названа именем Degree. В скобках записан список формальных параметров, то есть перечислены переменные с указанием их типа. Мы используем три параметра: первый – основание степени, то есть число, которое надо возвести в степень; второй – показатель степени, третий –результат. Первые два формальных параметра - параметры-значения, третий –параметр-переменная, и перед ним указано слово Var. Все они описаны как целые (x и y – переменные типа integer; а St – типа longint, так как степенная функция быстро возрастает).

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

Далее идет тело процедуры. Оно начинается служебным словом Begin и заканчивается служебным словом End, после которого стоит точка с запятой ( в конце программы после последнего End ставится точка). В теле процедуры вычисляется степень числа x с помощью цикла For.

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

Вся программа для решения задачи имеет следующий вид: Program Example_1; Var a, n:integer;

s:longint; Procedure Degree(x,y:integer; var st:longint); Var i:integer; Begin st:=1; For i:=1 To y Do st:=st*x; End; Begin Writeln('введите два числа - основание и показатель степени'); Readln(a,n);

Page 62: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

62

Продолжение приложения В Degree(a,n,s); {обращение к процедуре} Writeln('Результат',s); Readln; End. Процедура вызывается как оператор, состоящий из имени процедуры. В круглых скобках записываются фактические параметры. В нашем

примере формальные параметры x, y и st принимают значения фактических параметров a, n и s соответственно. После заверешения работы процедуры переменные a и n сохранят те же значения, что и при вызове, а s получит новое значение.

Описание функции

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

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

Таким образом, общий вид описания функции следующий: Function Имя [(список формальныъ параметров)]:тип результата Описательная часть Begin Тело функции, в котором обязательно должно быть присваивание

Имя_функции:=значение; End; Пример: Написать функцию, подсчитывающую количество цифр натурального

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

не станет равным нулю. При этом каждый раз счетчик увеличивается на 1 (начальное значение счетчика - 0).

Function Quant(x:longint):byte; Var k:byte; Begin k:=0; While x<>0 Do begin Inc(k); x:=x div 10; end; Quant:=k; End;

Page 63: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

63

Продолжение приложения В

В заголовке функции указано ее имя – Quant. Функции передается только один параметр – целое число, количество цифр которого надо найти.

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

Program Example_2; Var n1, n2:longint; k1, k2:byte; Function Quant(x:longint):byte; Var k:byte; Begin k:=0; While x<>0 Do begin Inc(k); x:=x div 10; end; Quant:=k; End; Begin Writeln('введите два числа'); Readln(n1,n2); k1:=Quant(n1); {количество цифр первого числа} k2:= Quant(n2): {количество цифр второго числа} if k1=k2 Then Writeln ('одинаковое количество цифр') Else If k1>k2 Then Writeln ('в первом числе цифр больше') Else Writeln ('во втором числе цифр больше'); Readln; End. Функция – это самостоятельная часть программы, имеющая собственные

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

Page 64: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

64

Продолжение приложения В Пример: Вставить строку из нулей после строки с номером k Решение: Для решения этой задачи необходимо:

1. Первые k строки оставить без изменения. 2. Все строки после k-й сдвинуть на одну вниз, это лучше начать с последней строки и идти до (k+1)-й.

3. Присвоить значение элементам (k+1)-й строки. 4. Необходимо обратить внимание на размерность массива. Так как мы вставляем строку, то необходимо иметь одну строку «в запасе».

Const n=5; m=7; type dmyarray=array[1..n+1,1..m] of integer; var a:dmyarray; procedure Insert(k1:integer;varx:dmyarray); var i,j:integer; begin for i:=n downto k1+1 do for j:=1 to m do x[i+1,j]:=x[i,j];{элементу столбца с номером j присваиваем элемент этого же столбца, но из предыдущей строки} for j:=1 to m do x[k1+1,j]:=0; end; Так как число строк меняется, то процедуру Print надо изменить. Она должна выводить указанное количество строк, начиная с первой. Procedure Print1 (n1:integer; x:dmyarray); var i,j:integer; begin for i:=1 to n1 do begin for j:=1 to m do write(x[i,j]:4); writeln; end; end; Часть основной программы будет такой: begin Init(a); Print(n,a); Writeln('введите номер строки, после которой надо вставить новую строку'); Readln(k); Insert(k,a); Print(n+1,a); Readln; end.

Page 65: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

65

Продолжение приложения В Файловый тип данных

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

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

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

Объявление файловой переменной в разделе описания переменных имеет вид: f1,f2: text. Текстовые файлы состоят из символьных строк, строки могут иметь различную длину. Для описания текстовых файлов используется служебное слово text.

Для установления связи между файловой переменной и файлом на диске имеется стандартная процедура assign.

Assign(<имя файловой переменной>,'<имя файла на диске>'); Например: assign (f1,'primer.dat'); После установления такого соответствия все операции, выполняемые над

переменной f1, будут выполняться над файлом, имеющим имя primer.dat. Файл в каждый момент времени может находиться в одном из двух

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

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

процедуры: reset(<имя файловой переменной>);

Собственно чтение данных из файла выполняется процедурой: read(<имя файловой переменной>,<имя переменной>);

Согласно этой записи данные вводятся из файла, хранящегося на диске. Под записью в файл понимается вывод результатов программы из

оперативной памяти в файл на диске. Для записи в файл необходимо открыть файл для записи посредством процедуры:

rewrite (<имя файловой пременной>);

Page 66: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

66

Окончание приложения В

Собственно запись данных в файл выполняется процедурой: write(<имя файловой переменной>,<значение>);

Согласно этой записи данные записываются в файл. После работы с файлами их необходимо закрыть. Это выполняется с

помощью следующей процедуры: close(<имя файловой переменной>).

Пример: Ввести с клавиатуры и записать в файл Primer.dat последовательность

целых чисел. Решение: Сначала свяжем файловую переменную с конкретным внешним

файлом при помощи процедуры Assign. Откроем файл для записи посредством процедуры Rewrite. Признак конца последовательности чисел – ввод числа 0.

Var f:file of Integer; n:integer; Begin assign (f,'primer.dat');{связываем файловую переменную с файлом на диске} rewrite(f);{открываем файл для записи} writeln('конец ввода чисел - 0'); repeat{пока не будет введен 0} writeln('введите число'); readln(n); {если введенное число, отличное от 0, то записываем его в файл} if n<>0 then write(f,n); until n=0; {если введен 0, то выходим из цикла} close (f); {закрываем файл} End.

Page 67: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

67

ПРАВИЛА ВЫПОЛНЕНИЯ КОНТРОЛЬНЫХ РАБОТ

Работы, выполненные без соблюдения приведенных ниже правил, не заcчитываются и возвращаются студенту для переработки.

1. Контрольная работа выполняется в тетради чернилами любого цвета кроме красного, или на листах формата А4 в печатном виде.

2. На обложке тетради четко пишется: фамилия студента, имя и отчество, номер контрольной работы, название дисциплины «Информатика», кафедра «Электропривод и АПУ». В конце работы должна быть подпись выполнявшего работу студента и дата выполнения.

3. На оборотной стороне обложки работы следует вклеить номер варианта и номера заданий контрольной работы, полученные у преподавателя. Контрольная работа должна содержать все задания строго по своему варианту. В противном случае она не засчитывается.

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

5. Решение задач следует излагать подробно и аккуратно, объясняя и мотивируя все действия походу решения и делая необходимые чертежи.

6. В конце тетради целесообразно оставлять несколько чистых листов для выполнения дополнений и исправлений.

ЗАКЛЮЧЕНИЕ

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

самостоятельная работа должна быть конкретной по своей предметной направленности;

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

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

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

Page 68: ИНФОРМАТИКА - venec.ulstu.ruvenec.ulstu.ru › lib › disk › 2011 › Petrova.pdf · 2 УДК 681.3.06:004(076) ББК 32.97 я7 И 74 Рецензент доктор

68

Учебное издание

ИНФОРМАТИКА

Методические указания

Составитель ПЕТРОВА Марина Валерьевна

Редактор Н. А. Евдокимова

Подписано в печать 07.06.2011. Формат 6084/16. Усл. печ. л. 3,95. Тираж 100 экз. Заказ 624.

Ульяновский государственный технический университет

432027, г. Ульяновск, ул. Сев. Венец, д. 32.

Типография УлГТУ, 432027, г. Ульяновск, ул. Сев. Венец, д. 32.