Какие способы алгоритмов вы знаете информатика

§ 9. Правовая охрана программ и данных

Типы лицензий на программное обеспечение

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

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

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

По типу лицензий можно разделить программное обеспечение на четыре типа:• коммерческое;
• условно-бесплатное (англ. shareware);
• бесплатное (англ. freeware);
• свободное ПО (англ. open source — ПО с открытым кодом).

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

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

(англ. trial) версию программы из сети Интернет и попробовать, как она работает (англ. try before you buy — попробуй, прежде чем купить). Такие программы называют условно-бесплатными. Пробные версии всегда имеют какие-то ограничения, например:• ограниченный срок работы (обычно 30 дней);
• ограниченное количество запусков;
• встроенный рекламный блок;
• всплывающие сообщения с призывом заплатить автору деньги за программу.

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

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

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

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

Сейчас свободное ПО чаще всего распространяется под лицензией GNU GPL (англ. General Public Licence — универсальная общественная лицензия). Согласно этой лицензии, автор передаёт программное обеспечение в общественную собственность. Запрещается создавать на основе свободной программы другую программу, не предоставляя пользователям её исходный код, нельзя включать программу в проприетарное ПО.

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

Следующая страница Ответственность за незаконное использование ПО

Cкачать материалы урока

Бизнес и финансы

БанкиБогатство и благосостояниеКоррупция(Преступность)МаркетингМенеджментИнвестицииЦенные бумагиУправлениеОткрытые акционерные обществаПроектыДокументыЦенные бумаги — контрольЦенные бумаги — оценкиОблигацииДолгиВалютаНедвижимость(Аренда)ПрофессииРаботаТорговляУслугиФинансыСтрахованиеБюджетФинансовые услугиКредитыКомпанииГосударственные предприятияЭкономикаМакроэкономикаМикроэкономикаНалогиАудитМеталлургияНефтьСельское хозяйствоЭнергетикаАрхитектураИнтерьерПолы и перекрытияПроцесс строительстваСтроительные материалыТеплоизоляцияЭкстерьерОрганизация и управление производством

Правила создания

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

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

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

  • сначала нужно взять число 1;
  • проверить, меньше ли оно, чем 100;
  • если да, то узнать, простое ли оно;
  • при выполнении условия записать;
  • перейти к числу 2;
  • повторить операцию.

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

Способы записи

Алгоритмы записываются несколькими методами. В информатике используется всего три:

  • словесно-формульный;
  • графический;
  • программный.

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

Графическое описание состоит из связанных между собой географических фигур. Основные элементы блок-схем:

  • прямоугольники;
  • эллипсы;
  • ромбы;
  • шестиугольники;
  • стрелки;
  • пунктирные линии;
  • соединительные фигуры.

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

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

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

Тест по теме «Алгоритмы»

Вариант 1.

 1. Закончите предложение: «Алгоритмом называется …»а) нумерованный список 

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

2. Что можно считать алгоритмом? (Может быть несколько правильных ответов!)

а) инструкцию по использованию DVD-плеера или мобильного телефонаб) список учеников  класса 

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

3. Закончите предложение: «Блок-схема – форма записи алгоритмов, при которой для обозначения различных шагов алгоритма используются ….»а) рисунки   б) списки  в) геометрические фигуры   г) формулы

4. Расставьте действия в нужном порядке:

  Алгоритм «Посадка дерева»

а) Поставить лопату и лейку на место  б) Взять лопату и саженецв) Посадить саженец в ямку    г) Выкопать ямкуд) Взять лейку с водой и полить саженец  е) Засыпать ямку

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

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

7. Алгоритм, записанный на специальном языке, понятном компьютеру, — на языке программирования, называется… а) компьютерная среда    б) программав) словесный алгоритм г) блок-схема

ТЕСТ по теме «Алгоритмы»

Вариант 2.

1. Закончите предложение: «Алгоритмом называется …»а) нумерованный список 

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

г) команды, которые может выполнить человек или компьютер

2. Что можно считать алгоритмом? (Может быть несколько правильных ответов!)

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

3. Закончите предложение: «Представление алгоритма схематически с помощью геометрических фигур называется…»а) рисунок   б) план  в) блок-схема   г) чертеж

4. Расставьте действия в нужном порядке:

  Алгоритм «Пришивание пуговицы»

а) Положить иголку и ножницы на местоб) Отрезать нитку подходящего цвета д) Подобрать подходящую пуговицу в) Взять рубашку     е) Вдеть нитку в иголку

г) Пришить пуговицу  ж) Взять иголку и ножницы

5. Каждая программа имеет свой набор инструментов и допускает определенный набор действий, которые можно выполнять. Эти условия называются…

а) алгоритмом б) языком программирования

в) компьютерной средой г) графическим алгоритмом

6. В линейном или последовательном алгоритме…

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

7. Алгоритм, записанный на специальном языке, понятном компьютеру, — на языке программирования, называется… а) компьютерная среда    б) блок-схемав) словесный алгоритм г) программа

Таблица правильных ответов

1 вариант

2 вариант

1

г

в

2

в

б

3

в

в

4

б, г,в, е,д, а

ж, б,е, д,в, г,а

5

а

в

6

а

а

7

б

г

Используемая литература:

1.  Макарова . Учебник. Начальный уровень. Издательство: Питер, 2012

2.  , : Поурочные разработки по информатике. 5 класс. Издательство: Вако, 2010 г.

Зарегистрировать

Алгоритм

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

Следует отметить, что большинство редакторов (например, Microsoft Office Word, Excel) имеют встроенные средства программирования, освоив которые можно значительно расширить свои возможности.

Появление алгоритмов связывают с зарождением математики. Более 1000 лет назад (в 825 году) ученый из города Хорезма Абдулла (или Абу Джафар) Мухаммед бен Муса аль-Хорезми создал книгу по математике, в которой описал способы выполнения арифметических действий над многозначными числами. Само слово алгоритм возникло в Европе после перевода на латынь книги этого математика.

Алгоритм – описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.

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

1. Достать ключ из кармана.

2. Вставить ключ в замочную скважину.

3. Повернуть ключ два раза против часовой стрелки.

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

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

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

2. Детерминированность (любое действие должно быть строго и недвусмысленно определено в каждом случае);

3. Конечность (каждое действие и алгоритм в целом должны иметь возможность завершения);

4. Массовость (один и тот же алгоритм можно использовать с разными исходными данными);

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

Виды алгоритмов:

1. Линейный алгоритм (описание действий, которые выполняются однократно в заданном порядке);

2. Циклический алгоритм (описание действий, которые должны повторятся указанное число раз или пока не выполнено задание);

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

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

Источник

Свойства и виды

Для изучения понятия нужно разобраться в свойствах алгоритма в информатике. Их существует несколько:

  • дискретность;
  • детерминированность или определенность;
  • понятность;
  • завершаемость или конечность;
  • массовость или универсальность;
  • результативность.

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

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

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

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

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

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

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

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

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

Анализ работы

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

Гипотеза Ричарда Мейса утверждает, что избежать ошибок легче, чем их устранить. Благодаря доказательству корректности программ можно выявить их свойства, применяемые ко всем видам входных данных. Само понятие делится на две разновидности — частичную и полную. При первом типе корректности алгоритм дает правильный результат только для тех случаев, когда он завершается. Во втором случае программа завершает работу корректно для всего диапазона данных.

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

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

Источник

Графический способ описания алгоритмов

Для более наглядного представления алгоритма используется графический способ. Существует несколько способов графического описания алгоритмов. Наиболее широко используемым на практике графическим описанием алгоритмов является использование блок-схем. Несомненное достоинство блок схем – наглядность и простота записи алгоритма.

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

Название символа Обозначениеи пример заполнения Пояснения
Пуск-останов Начало, завершение алгоритма или подпрограммы
Ввод-вывод данных   Ввод исходных данных или вывод результатов
Процесс   Внутри прямоугольника записывается действие, например, расчетная формула
Решение   Проверка условия, в зависимости от которого меняется направление выполнения алгоритма
Модификация   Организация цикла
Предопределенный процесс   Использование ранее созданных подпрограмм
Комментарий   Пояснения

Пояснения:

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

блок Решение обозначает проверку условия

Если условие выполняется, то есть a>b, то следующим выполняется действие по стрелке «Да». Если условие не выполняется, то осуществляется переход по стрелке «Нет».

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

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

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

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

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

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

Последовательность выполнения сверху вниз и слева направо принята за основную.

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

Справочная информация

ДокументыЗаконыИзвещенияУтверждения документовДоговораЗапросы предложенийТехнические заданияПланы развитияДокументоведениеАналитикаМероприятияКонкурсыИтогиАдминистрации городовПриказыКонтрактыВыполнение работПротоколы рассмотрения заявокАукционыПроектыПротоколыБюджетные организацииМуниципалитетыРайоныОбразованияПрограммыОтчетыпо упоминаниямДокументная базаЦенные бумагиПоложенияФинансовые документыПостановленияРубрикатор по темамФинансыгорода Российской Федерациирегионыпо точным датамРегламентыТерминыНаучная терминологияФинансоваяЭкономическаяВремяДаты2015 год2016 годДокументы в финансовой сферев инвестиционной

Какие способы алгоритмов вы знаете информатика

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

линейный – список команд (указаний), выполняемых последовательно друг за другом;

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

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

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

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

1. определить температуру воздуха

2. если температура ниже 0, то надеть шубу, иначе надеть куртку

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

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

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

Источник

Заключение

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

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

Изучаете, осваивайте, применяйте алгоритмы. Надеемся, что наша статья помогла вам в этом!

Удачи вам! До скорых встреч на страницах блога KtoNaNovenkogo.ru

Эта статья относится к рубрикам:

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

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: