Как создать программу в алгоритме

1 Московский государственный технический университет имени Н. Э. Баумана Факультет Информатика и системы управления Кафедра Компьютерные системы и сети «УТВЕРЖДАЮ» Заведующий кафедрой ИУ-6 _________ Сюзев В.В. Г. С. Иванова, Т.Н. Ничушкина Разработка алгоритмов простейших программ Методические указания по выполнению лабораторной работы по дисциплине Основы программирования

Москва 2012

2 Аннотация Настоящее учебное пособие предназначено для студентов 1 курса кафедр ИУ6 и АК5, обучающихся по программе бакалавра техники и технологии направления «Информатика и вычислительная техника». В пособии рассмотрены основные приемы составления алгоритмов программ разветвленной и циклической структуры. Кратко пояснены математические методы решения некоторых задач вычислительной математики, а также пояснены приемы обработки массивов и матриц.

3

Оглавление
ВВЕДЕНИЕ . 4
1 РАЗВЕТВЛЯЮЩИЕСЯ ПРОЦЕССЫ . 6
2 ЦИКЛИЧЕСКИЕ ПРОЦЕССЫ. АЛГОРИТМЫ РЕШЕНИЯ ЗАДАЧ
ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКИ . 10
2.1 Типы циклических процессов . 10
2.2 Табулирование функции . 11
2.3 Нахождение суммы ряда . 12
2.4 Приближенное вычисление определенных интегралов . 14
2.4.1 Метод прямоугольников. 14
2.4.2 Метод трапеций. 15
2.5 Определение корней уравнения. 16
2.5.1 Метод половинного деления . 16
2.5.2 Метод хорд. 17
2.6 Нахождение длины кривой . 17
3 МАССИВЫ . 19
3.1 Приемы обработки одномерных массивов . 19
3.1.1 Последовательная обработка элементов массива. 19
3.1.2 Выборочная обработка элементов массива . 22
3.1.3 Изменение порядка следования элементов без изменения размеров исходного массива.
Сортировка массива. 24
3.1.4 Переформирование массива с изменением его размеров . 28
3.1.5 Одновременная обработка нескольких массивов или подмассивов . 31
3.1.6 Поиск в массиве единственного элемента, отвечающего некоторому условию (поисковые
задачи) . 32
3.2 Приемы обработки матриц. 33
3.2.1 Последовательная обработка элементов матрицы . 34
3.2.2 Изменение порядка следования элементов без изменения размеров исходной матрицы. .. 35
ЛИТЕРАТУРА . 36

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

АЛГОРИТМЫ в ПРОГРАММИРОВАНИИ для новичков | Левенштейн, Фибоначчи, Факториал и т.д.

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

Таких приемов сравнительно немного, и их совокупность образует ту базу, которая позволит студентам научиться писать программы. В настоящем пособии представлены базовые алгоритмы, без изучения которых знания по данному предмету будут не полными. Совершенно сознательно авторы не приводят текстов программ, ограничившись схематическими представлениями алгоритмов. Тексты программ, изобилующие деталями средств программирования, отвлекали бы внимание от самих алгоритмов, что было бы крайне нежелательно. Для представления алгоритмов в пособии использованы графические обозначения основных алгоритмических блоков по ГОСТ 19.701–90 (см. таблицу 1).

Таблица 1
Название блока Обозначение Назначение блока
1. Терминатор Действие Начало, завершение про-
граммы или подпрограммы
2. Процесс Обработка данных (вычис-
Действие
ления, пересылки и т.п.)
3. Данные Данные Операции ввода-вывода
4. Решение Условие Ветвления, выбор, итера-
ционные и поисковые цик-
лы
5. Подготовка Действия Счетные циклы
6. Граница цикла Начало Любые циклы
Конец
7. Предопределен- Вызов процедур
Имя
ный процесс
8. Соединитель Имя Маркировка разрывов ли-
ний
9. Комментарий Комментарий Пояснения к операциям

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

6 1 Разветвляющиеся процессы В процессе решения многих задач возникает ситуация, когда дальнейшие вычисления зависят от выполнения некоторого условия. Если условие будет выполнено, то вычисления будут производиться по одному определенному правилу, если условие не выполняется – по другому. Такие вычислительные процессы называют разветвляющимися (ветвящимися).

Каждое отдельное направление вычислений называется ветвью . В качестве примера разветвляющегося вычислительного процесса рассмотрим алгоритм вычисления корней квадратного уравнения Пример 1.1. Определение действительных корней квадратного уравнения: ax 2 + bx + c =0. В зависимости от значения дискриминанта D = b 2 — 4 ac , уравнение имеет либо два действительных корня, либо один, либо вообще не имеет действительных корней. Поэтому, для того, чтобы найти корни квадратного уравнения, необходимо предварительно вычислить дискриминант D и проверить выполнение условий D < 0 и D =0. Схема алгоритма вычисления корней квадратного уравнения приведена на рисунке 1.1.

Читайте также:
Как закрепить все программы в меню пуск
Начало
Ввод
A, B, C
D:=B 2 — 4AC
да нет
D
да нет
‘Нет действ. D = 0
корней’
X:=-B/(2A) X 1,2 :=(-B±
± Ö D)/2A
‘Корни ‘X1=’,X1,
равны’,X ‘X2=’,X2

Конец Рисунок 1.1 – Схема алгоритма вычисления действительных корней квадратного уравнения Если условий много, то процесс составления алгоритма, содержащего минимальное количество проверок, может вызвать некоторые трудности. В этом случае бывает удобным использовать, так называемые, таблицы решений . Таблицы решений. Таблица решений составляют следующим образом. По вертикали выписывают все условия, от которых зависят дальнейшие вычисления, а по горизонтали – все варианты вычислений. На пересечении каждого столбца и строки указывают: букву Y, если для данного варианта условие должно выполняться, букву N, если условие обязательно должно не выполняться, прочерк, если исход сравнения не важен.
7 Например, для алгоритма вычисления корней квадратного уравнения можно составить следующую таблицу:

Нет корней x -b/ 2 a x ( b D / 2 a
D 0 Y N N
D 0 N Y N

Схему алгоритма строят по таблице. Сначала проверяют выполнение первого условия. Из таблицы следует, что первое условие должно выполняться только для первого варианта решения, поэтому после его проверки ветвь «да» соответствует случаю «нет корней». В ветви «нет» необходимо проверить условие D=0 и, в зависимости от выполнения этого условия, указать оставшиеся два случая.

Иногда, составленная таблица решений имеет сложный вид. Рассмотрим, например, таблицу: Р1 Р2 Р3 Р4 Условие 1 Y — N Y Условие 2 N Y N N Условие 3 Y — — N где P1, P2, P3, P4 – варианты решений. Если сразу приступить к построению алгоритма, то будет получена схема алгоритма, приведенная на рисунке 1.2.

A
нет да
Условие1
да нет да нет
Условие2 Условие2
да нет
P2 P3 P2 Условие3
P1 P4

B Рисунок 1.2 – Неоптимальная схема фрагмента алгоритма Этот алгоритм не кажется простым, и его построение вызывает определенные трудности, но его можно существенно упростить, если в таблице поменять местами проверяемые условия. Кроме того, для удобства построения алгоритма, целесообразно поменять местами столбцы таблицы:

Р1 Р4 Р3 Р2
Условие 2 N N N Y
Условие 1 Y Y N
Условие 3 Y N

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

8

A
да Условие2 нет
да Условие1 нет
да Условие3 нет
P2 P1 P4 P3

B Рисунок 1.3 – Оптимизированный фрагмент схемы алгоритма Рассмотрим еще один пример использования таблиц решений. Пример 1.2. Решить систему уравнений: ax b ; x cy 1. При составлении алгоритма решения задачи необходимо рассмотреть 5 слу- чаев: 1) a =0, b =0, тогда x =1- cy , y — любое число; 2) a =0, b 0, тогда решений нет; 3) a 0, c =0, a = b , тогда x=1, y любое число; 4) a 0, c =0, a b , тогда решений нет: 5) a 0, c 0, тогда x = b / a , y =( a-b )/( ac ). Составим таблицу решений, указывая в первом столбце условие, которое необходимо проверить:

1 2 3 4 5
a b Y N
a 0 Y Y N N N
b 0 Y N
c 0 Y Y N

Теперь преобразуем таблицу для более удобной реализации. На первое место целесообразно поставить условие a =0, т.к. соответствующая строка не содержит прочерков, и, следовательно, действия однозначно разделятся на две ветви. Вторым лучше проверять условие b =0, т.к. на оставшиеся два условия оно не оказывает никакого влияния. Третьим условием удобно взять c =0. В результате получили таблицу в следующем виде:

1 2 3 4 5
a 0 Y Y N N N
b 0 Y N
c 0 Y Y N
a b Y N

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

9

A
да нет
a=0
да нет нет да
b=0 c=0
да нет
a=b
Случай 1 Случай 2 Случай 5
Случай 3 Случай 4

B Рисунок 1.4 – Фрагмент схемы алгоритма решения системы уравнений
10 2 Циклические процессы. Алгоритмы решения задач вычислительной математики 2.1 Типы циклических процессов При решении многих задач возникает необходимость многократного повторения одних и тех же действий, но над различными значениями переменных. Такие вычислительные процессы называются циклическими , а многократно повторяющиеся участки – циклами . В любом процедурном языке программирования существуют средства реализации трех типов алгоритмов циклической структуры: цикла-пока, цикла-до и счетного цикла (см. рисунки 2.1, а-в ).

Читайте также:
Правила написания программ php
A A A
Подготовка Подготовка Подготовка
цикла цикла цикла
Условие нет Тело цикла Организация
счетчика
да
Тело цикла Подготовка Тело цикла
итерации
Подготовка нет Подготовка
Условие итерации
итерации
да
B B B
a б в

Рисунок 2.1 – Три структурные конструкции циклов: а – цикл-пока; б – цикл-до; в – счетный цикл Каждый из трех алгоритмов циклических процессов состоит из нескольких основных этапов: подготовка цикла – задание начальных значений переменным, изменяющимся в цикле; тело цикла – действия, выполняемые непосредственно в цикле; подготовка итерации – изменение значений переменных для нового выполнения тела цикла; условие – проверка условия продолжения или окончания цикла; организация счетчика – задание начального и конечного значения, а также шага переменной цикла. Тело цикла может иметь сложную структуру, в том числе может включать ветвления и другие циклы ( вложенные циклы ). При программировании алгоритмов со структурой вложенных циклов необходимо выполнять следующее правило: внутренний оператор цикла и принадлежащая ему область действий должны полностью содержаться в области внешнего оператора цикла. Иными словами внешний цикл всегда начинается раньше, а заканчивается позже, чем внутренний цикл. Различают циклы с заданным числом повторений и циклы с заранее не известным числом повторений ( итерационные циклы ) . Итерационные циклы харак-

Источник: studfile.net

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Cancel Create

ru / 57 / Примеры обработки блок.md

  • Go to file T
  • Go to line L
  • Copy path
  • Copy permalink

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Cannot retrieve contributors at this time
274 lines (138 sloc) 36.2 KB

  • Open with Desktop
  • View raw
  • Copy raw contents Copy raw contents Copy raw contents

Copy raw contents

Примеры обработки блок

Примеры обработки блок

Формы записи алгоритмов Step 2 Stepik

Составление блоксхемы алгоритма является важным и в большинстве случаев необходимым этапом решения сложной и большой задачи на ЭВМ,значительно облегчающим процесс составления программ.Информатика Тема 1ТЕМА 8.ОСНОВЫ АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЯ 8.1.Понятие об алгоритме и исполнителе

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

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

Исключительно важно использовать язык блоксхем при разработке алгоритма решения задачи.Блоксхема — Википедия с видео WIKI 22019520#0183enspenspПример обработки схемы вышивки в формате PNG Следует обратить также внимание на то,что все листы схемы должны иметь идентичные характеристики по размерам отступов,ширин линий и размеру клетки.

Примеры алгоритмов.Алгоритм ID3

Примеры алгоритмов.Алгоритм ID3

2020127#0183enspensp2.1.1.Схемы данных отображают путь данных при решении задач и определяют этапы обработки,а также различные применяемые носители данных.2.1.2.Схема данных состоит из:

Примеры составления схем бизнеспроцессов

Примеры составления схем бизнеспроцессов

Готовые схемы бизнеспроцесса предприятия.Шаблон схем закупок,продаж,технического обслуживания.Правила построения блоксхем бизнеспроцесса.Залог успеха любой компании или предприятия четкое планированиеСпособы записи алгоритмов Презентация20151229#0183#171Способы записи алгоритмов#171Виды алгоритмовenspenspАлгоритм сортировки выбором приведен в виде блоксхемы на рис.6.9.Найдем в массиве самый большой элемент (блоки 3 7) Примеры алгоритмов обработки массивов ПРИМЕР 6.1.Дан массив А

Основные элементы блоксхем

Основные элементы блоксхем

Преимущества блоксхемы Примеры решения: в или отображения результатов обработкисхему алгоритма упорядочивания2014103#0183enspenspтруда на разработку блоксхемы Затраты труда на разработку блоксхемы алгоритма решения задачи вычислим следующимРазработка программы на С++ для обработкиКурсовая работа содержит блок схемы,примеры работы программы в виде скриншотов.

Основные элементы блоксхем

Основные элементы блоксхем

Блоксхемы показывают структуру ветвления процесса только в одном ее аспекте.Но даже эта структура видна достаточно четко,только если вся блоксхема помещается на одной странице.Блоксхема — Википедия202026#0183enspenspБлоксхема алгоритма — графическое изображение алгоритма в виде связанных между собой с помощью стрелок (линий перехода) и блоков — графических символов,каждый из которых соответствует одному шагу алгоритма.Придумайте пример алгоритма и представьте егоПридумайте пример алгоритма и представьте его в виде блок схемы.обработки Примеры

Читайте также:
Программа как убрать музыку из видео

Алгоритм — Википедия

Современное формальное определение вычислительного алгоритма было дано в 30—50е годы xxПримеры рекурсивной обработки массиваA14 СДВОЕННЫЙ ПРЕСС С ПРОГРАММНЫМ УПРАВЛЕНИЕМ ДЛЯ ОБРАБОТКИ ПОЛОЧЕК ПИДЖАКА T Команды арифметической и логической обработки Автоколебания,блоксхемы,примеры.

Алгоритмы Основные алгоритмические конструкции Сборник

Алгоритмы Основные алгоритмические конструкции Сборник

Приводятся примеры решения Составление блоксхемы ций обработки данных сКонспект урока.enspenspБлок цилиндров двигателя ЗИЛ130 является основной корпусной деталью и представляет собой чугунную отливку (СЧ 1836),объединяющую два блока цилиндров,расположенных Vобразно под углом 90,иБлоксхема — ВикипедияПорядок выполнения действий задается путём соединения вершин дугами,что позволяет рассматривать блоксхемы не только как наглядную интерпретацию алгоритма,удобную для восприятия человеком,но и как взвешенный

Составление схем алгоритмов и программ в Micros Of Visio

Составление схем алгоритмов и программ в Micros Of Visio

4 Оформление чертежа блоксхемы основной надписью цесса обработки Примеры отчетныхСоставление схем алгоритмов и программ в Micros Of2014123#0183enspenspПоследние две задачи относят к задачам обработки массивов — наборов данных одного вида — чисел или символов.Фрагменты блоксхемы алгоритма от нее и вправо на расстояние е 2,т.еБлоксхема алгоритма,графические символыДля улучшения наглядности схемы несколько отдельных блоков обработки блоксхемы

Блоксхема алгоритма: программы,задачи,

Блоксхема алгоритма: программы,задачи,

Блоксхемы алгоритмов: примеры.Рассмотрим,каким образом функционирует разветвленныйЛЕКЦИЯ № 3.Алгоритмы обработки одномерных массивов.Алгоритмы обработки одномерных массивов.Блоксхемы алгоритмов ввода Примеры

Примеры информационных систем

Примеры информационных систем

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

Команд исполнителя (на примере учебного

Команд исполнителя (на примере учебного

2015108#0183https://github.com/baacnzhuavrng/ru/blob/main/57/%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D1%8B%20%D0%BE%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8%20%D0%B1%D0%BB%D0%BE%D0%BA.md» target=»_blank»]github.com[/mask_link]

Знакомство с Алгоритм 2

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

Практические занятия

Учимся добавлять и настраивать элемент “Окно выбора папки” в вашей программе.


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

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

Внедряем в программу функцию сохранения данных.

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

Учимся делать собственный инструмент для создания скриншотов монитора.

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

Дополняем функционал нашего плеера.

Пример создания полноценного проигрывателя видеороликов в конструкторе Алгоритм 2.

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

Скачать все уроки по «Алгоритм 2»

Похожие материалы

Уроки Adobe Premier PRO 2018-2019 для начинающих Изучите возможности популярного видеоредактора от компании Adobe под названием Premier PRO 2018-2019. Благодаря развернутым урокам, представленным в виде обучающих видео, вы очень быстро изучите богатейший функционал редактора и ознакомитесь с его интерфейсом. Научитесь профессионально монтировать ролики вместе с инструкциями автора.

Инструкция по движку NeoAxis Краткое руководство по созданию игр на движке Neo Axis. Наглядные видео уроки познакомят начинающих игроделов с возможностями программы и дадут определенную базу знаний для более глубокого изучения.

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

Больше статей Полезные программы Больше программ

Алгоритм Создание программ, Визуальные среды разработки

HiAsm Создание программ, Визуальные среды разработки

Camtasia Studio Другие программы, Монтаж видео

Camtasia Studio Монтаж видео, Видеоредакторы

Источник: 4creates.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru