Задача Дано




Скачать 108.23 Kb.
НазваниеЗадача Дано
Дата публикации19.04.2014
Размер108.23 Kb.
ТипЗадача
uchebilka.ru > Математика > Задача
Раздел 1

1.Алгоритмизация и начала программирования


1.1. Основные этапы подготовки задачи для решения на ЭВМ 1

1.2. Постановка задачи и построение ее математической модели 1

1.3. Выбор метода решения и разработка алгоритма 2

1.4. Написание программы и ее взаимодействие с ЭВМ 3

1.5. Интерпретация результатов 4

1.6. Свойства алгоритмов 5

1.7. Способы записи алгоритмов 5

1.8. Основные символы для построения блок-схем 6

1.9. Методология структурного программирования 7

1.10. Основные типы вычислительных процессов 7



Ключевые термины

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

^

1.1. Основные этапы подготовки задачи для решения на ЭВМ


Этапы подготовки задачи для решения на ЭВМ приведены на рис. 1.1.



Рисунок 1.1 - Этапы подготовки задачи для решения на ЭВМ
^

1.2. Постановка задачи и построение ее математической модели


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

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

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

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

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

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

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

Задача <Содержательное формулирование>

   Дано       <Перечень начальных данных >

   Нужно      <Перечень данных, которые не обходимо получить>

   Связь      <Зависимости между нужным и начальным>

   При условии       <Условия допустимости начальных данных>
^

1.3. Выбор метода решения и разработка алгоритма


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

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

^ Пример:

Задача: За какое время тело, брошенное с высоты h с начальной скоростью V0 , упадет на землю?

Дано: высота, начальная скорость, ускорение свободного падения (h, V0, g).

Нужно: определить время падения (t).

Связь: h=V0t+gt2/2.

При условиях: h>0, t>0, V0>0.

Метод решения: Задача сводится к решению квадратного уравнения относительно t:

gt2/2+V0t-h=0,

t12=(-V0±D0,5)/g,  (1.1)

где D=V02+4(g/2)h.

Алгоритм:

  1. Ввести значения h, V0, g.

  2. Вычислить дискриминант (D).

  3. Проверить D>0.

  4. Если D>0, вычислить t1, t2.

  5. Выбрать время (t), которое будет удовлетворять условию задачи.

  6. Выдать сообщение о полученном значении времени падения.

  7. Если D<0, выдать соответствующее сообщение.
^

1.4. Написание программы и ее взаимодействие с ЭВМ


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

Взаимодействие программы с ЭВМ можно перечислить в пяти этапах.

  1. Материализация программы - запись программы с помощью текстового редактора на магнитный носитель.

  2. Трансляция - перевод команд программы с алгоритмического языка в машинные коды.

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

Ассемблеры - программы, написанные на машинно-ориентированных языках, которые отображают особенности того или иного процессора.

Интерпретатор - программа, которая пошагово анализирует и сразу же выполняет команды программы.

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

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

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

  3. Вычисление. Проводят необходимые вычисления.
^

1.5. Интерпретация результатов


Во время интерпретации результатов выполняется следующее:

  • анализ результатов на соответствие действительности;

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

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

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

1.6. Свойства алгоритмов


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

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

Определенность. Операции не должны иметь двоякого толкования. Порядок выполнения должен быть строго определенным.

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

Результативность. За конечное число шагов получаем конкретный результат.

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

1.7. Способы записи алгоритмов


Есть следующие способы записи алгоритмов:

  • Словесно-пошаговая форма. Базируется на обычном языке.

  • Графическая - в виде блок-схемы.

  • На языках программирования.

Блок-схема разрешает наглядно отобразить структуру алгоритма. Элементы блок-схемы - геометрические символы, которые обозначают отдельные операции, переходы. Символы связаны стрелками, которые определяют последовательность действий. В середине блоков записываются сами действия (например, вычисления, условия и т.д.)
^

1.8. Основные символы для построения блок-схем


 - Вход в алгоритм (начало), выход из алгоритма (конец).

 - Описание действия. Процесс: обработка (вычисление) данных; действие - присвоение.

 - Логический блок передачи управления. Проверка логического условия - выбор направления выполнения алгоритма в зависимости от некоторого условия.

 - Ввод/вывод информации.

 - Организация цикла.

 - Выполнение прежде созданных алгоритмов. Вызов подпрограмм.

 - Соединитель. Связь между прерванными потоками.

Пример: Стрельба в тире.

Составить блок-схему алгоритма проверки попадания точки М(a,b) в круг с центром в начале координат с радиусом R.

Уравнение окружности: а2 + b2 = R2.

Математическое условие попадания в мишень:

а2 + b2 <= R2 ,

т.е. точка лежит внутри круга.

Блок-схема алгоритма показана на рис. 1.2.



Рисунок 1.2 - Блок-схема алгоритма
^

1.9. Методология структурного программирования


Структурное программирование - это методология разработки алгоритмов и программ.

Выполняется cтруктурное программирование в следующем порядке:

  1. анализ задачи;

  2. разделение задачи на довольно самостоятельные части;

  3. программирование этих частей;

  4. компоновка программы из базовых блоков.
^

1.10. Основные типы вычислительных процессов


Основные типы вычислительных процессов следующие:

  1. Линейный;

  2. Разветвляющийся;

  3. Циклический.

Их комбинация дает разнообразие алгоритмов.

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

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

  2. Разветвления - изображается схемой, где возможно несколько путей выполнения в зависимости от выполнения определенных условий (рис. 1.3.).



Рисунок. 1.3 - Разветвления

Частный случай разветвления - "обход" (рис. 1.4).



Рисунок 1.4 - "Обход"

  1. Циклические структуры (многократное выполнение некоторых действий).

  • Цикл с послеусловием - вычисления выполняется несколько раз до тех пор, пока выполнится условие выхода. Особенность: выполняется хотя бы один раз (рис. 1.5).



Рисунок 1.5 - Цикл с послеусловием

  • Цикл с предусловием - пока выполняется условие - работает цикл. Если при первом проходе условие не выполняется, то цикл не выполняется ни разу (рис. 1.6).



Рисунок 1.6 - Цикл с предусловием

Если <Условие> имеет значения True, то выполняется <Действие> и повторяется проверка условия, а если False - While прекращает свою работу.

  • Цикл со счетчиком (с параметром) (рис. 1.7). В этом цикле заранее известно число повторений цикла. Алгоритм: сначала вычисляется выражение <нач> и происходит присваивание <пар> := <нач>. После этого циклически повторяется:

  1. проверка условия <пар> <= <кон>, если условие не выполняется, оператор завершает свою работу;

  2. выполнение действия;

  3. наращивание переменной <пар> .



Рисунок 1.7 - Цикл с параметром

Выводы

  1. ЭВМ может выполнять алгоритмы без участия человека, автоматически. Но для этого алгоритм нужно записать на языке, "понятном" для машины, то есть на специальном языке, который называется языком программирования. Алгоритм, который записан на языке программирования, называется программой.

  2. Есть следующие способы записи алгоритмов:

  • Словесно-пошаговая форма. Базируется на обычном языке.

  • Графическая - в виде блок-схемы.

  • На языках программирования.

  1. Основные типы вычислительных процессов следующие:

  • Линейный;

  • Разветвляющийся;

  • Циклический.

  1. Циклические структуры (многократное выполнение некоторых действий) следующие:

  • Цикл с послеусловием 

  • Цикл с предусловием 

  • Цикл со счетчиком


Вопросы для самопроверки

    1. Какие есть этапы подготовки задачи для решения на ЭВМ

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

    3. Какие есть основные символы для построения блок-схем?

    4. Какие есть типы вычислительных процессов?

    5. Что такое разветвляющийся вычислительный процесс?

    6. Что такое цикл со счетчиком?


Список литературы

  1. Шпак З.Я. Програмування мовою С: навчальний посібник. - Львів: Оріяна-Нова, 2006. - 432 с.

  2. Язык программирования Си: научное издание / Б. Керниган, Д. Ритчи ; пер.С. Штаркман. — 2-е изд., перераб. и доп. — М. : Финансы и статистика, 1992. — 272 с.

Добавить документ в свой блог или на сайт

Похожие:

Задача Дано iconЗадача Задача: дано l=4м;d=20;Р=3500Па;tст=19С
Жидкий натрий. Воспользуемся формулой Михеева (Pe=40 2104). Pe=PrRe. Из этого находим кто

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

Задача Дано iconКонтрольная работа №1 по дисциплине «высшая математика»
Задача №2. Дано: точка, прямая и число. Необходимо составить уравнение геометрического места точек, отношения расстояний которых...

Задача Дано iconЗащитник Отечества «Не всем дано летать, удачу свою догонять»
«Не всем дано летать, удачу свою догонять»,- пелось в песне моей юности. А вот человеку, о котором я хочу рассказать, удалось догнать...

Задача Дано iconПрактическая работа №2 Тема
Статистические функции. Электронная таблица, как база данных. Подведение итогов. Задача «Деятельность фирмы в Украине». Задача «Деятельность...

Задача Дано iconЗадача №2
Задача №3. Решите систему линейных уравнений методом Крамера и сделайте проверку

Задача Дано iconТема Производная Задача 2
Задача Найти интеграл, применяя формулы из таблицы основных неопределенных интегралов

Задача Дано iconЗадача №6
Задача №7. Заданную функцию исследовать на непрерывность и выяснить характер точек разрыва. Сделать схематический график

Задача Дано iconЗадача 10
Задача Найти решение уравнения Лапласа в круговом секторе, ( – полярные координаты, ), на границе которого искомая функция удовлетворяет...

Задача Дано iconПлоская задача теории упругости
Плоская задача включает в себя плоскую деформацию и обобщенное плоское напряженное состояние

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
uchebilka.ru
Главная страница


<