Понятие о программировании алгоритм программа

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

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

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

ВСЯ СЛОЖНОСТЬ АЛГОРИТМОВ ЗА 11 МИНУТ | ОСНОВЫ ПРОГРАММИРОВАНИЯ

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

Источник: finance-credit.news

Понятие о программировании. Алгоритмы работы с величинами: константы, переменные, основные типы, присваивание, ввод и вывод данных

Понятие о программировании. Алгоритмы работы с величинами: константы, переменные, основные типы, присваивание, ввод и вывод данных

Ворошилова Светлана

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

Задачи урока:

  • образовательная – формирование навыков составления алгоритмов решения задач с использованием команд присваивания, ввода и вывода;
  • развивающая – развитие логического и алгоритмического мышления, памяти, внимательности;
  • воспитательная – развитие познавательного интереса.

Тип урока: урок изучения нового материала.

Вид урока: урок с применением опорных конспектов.

Оборудование урока:

  • компьютер учителя;
  • мультимедийный проектор;
  • презентации, подготовленные в MS PowerPoint;
  • опорные конспекты.

1. Организационный момент.

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

2. Повторение пройденного материала.

3. Сообщение темы и постановка цели урока.

4. Изучение нового материала

5. Закрепление нового материала: решение задач.

6. Подведение итогов.

7. Постановка домашнего задания.

1. Организационный момент

Учитель. Здравствуйте, товарищи суворовцы! Садитесь. Сегодня мы будем работать с опорными конспектами, поэтому, у всех на столах должны лежать пронумерованные листы 1-4 и Приложение 1, лист рефлексии.

2. Повторение пройденного материала

· Что мы понимаем под словом “алгоритм”? (Под алгоритмом будем понимать понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных данных к искомому результату.)

· Можно ли считать эту формулировку определением? (Нет, понятие алгоритма в информатике является фундаментальным, неопределяемым.)

· В вашей формулировке о каком исполнителе идет речь? (Любой алгоритм строится в расчете на определенного исполнителя, способного правильно понимать и точно выполнять все предписания алгоритма. Исполнителем может быть человек, робот, компьютер.)

· А какие команды умеет выполнять исполнитель? (Любой исполнитель имеет свою систему команд – СКИ).

· А что такое программа? (Программа – это алгоритм, записанный на языке исполнителя.)

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

· 3. Сообщение темы и постановка цели урока

Сегодня мы продолжим изучение раздела “Алгоритмизация”. Тема нашего урока: “Алгоритмы работы с величинами”. Значит, мы будем работать над алгоритмами, и в качестве исполнителя мы будем рассматривать компьютер, оснащенный системой программирования на определенном языке. На уроке мы должны разобрать понятия “данные” и “величина”, СКИ компьютера.

Читайте также:
Программа для настройки изображения телевизора

· 4. Изучение нового материала

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

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

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

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

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

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

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

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

За годы существования ЭВМ было создано много языков программирования. Наиболее известные среди них: Фортран, Паскаль, Бейсик, С (Си) и др.

Распространенными языками программирования сегодня являются С++, Java, Pascal, Basic, Python.

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

Сегодня речь будет идти о средствах и способах универсального программирования — не ориентированного на какую-то узкую прикладную область. Примером узкоспециализированного программирования является Web-программирование, ориентированное на создание Web-сайтов. Для этих целей, например, используется язык Java Script. Языки Паскаль, Бейсик, Си относятся к числу универсальных языков программирования.

Разработка любой программы начинается с построения алгоритма решения задачи

Компьютер-исполнитель работает с определенными данными по определенной программе. Данные — это множество величин.

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

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

Значение величины — это информация, хранимая в этом поле памяти.

Существуют три основных типа величин, с которыми работает компьютер: числовой, символьный и логический.

Числовые величины в программировании, так же как и математические величины, делятся на переменные и константы (постоянные). Например, в формуле (а 2 — 2аb + b 2 ) а, b — переменные, 2 — константа.

Константы записываются в алгоритмах своими десятичными значениями, например: 23, 3.5, 34. Значение константы хранится в выделенной под нее ячейке памяти и остается неизменным в течение работы программы.

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

Система команд? ( Алгоритм работы с величинами составляется из следующих команд. Опорный лист 4)

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

· обращение к вспомогательному алгоритму;

Эти команды существуют во всех языках, поддерживающих структурное программирование: в Паскале, Си и др.

Читайте также:
Открыть две программы одновременно

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

Знак “:=” надо читать как “присвоить”.

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

1. вычислить выражение;

2. присвоить полученное значение переменной.

Это значит, в ячейку под именем переменной посылается значение выражения.

Пример 1. Выполнить команды присваивания:

Решение. В ячейку Х отправляется число 4, в Y – число 3. Затем, выполняется операция сложения: 4 + 3 и полученное значение 7 отправляется в ячейку Z.

Пример 2. Выполнить команды присваивания. Объяснить смысл второй команды.

Решение. В этом примере используется только одна ячейка Х. Ход выполнения алгоритма:

1) в ячейку под именем Х отправляется число 5;

2) из ячейки Х берется число 5, к нему прибавляется 1 и результат снова отправляется в ячейку под именем Х.

Значит, смысл команды X := X +1 заключается в том, что к значению переменной Х прибавляется единица и результат присваивается этой же переменной Х. То есть, данная команда увеличивает значение переменной Х на единицу.

Команда Запись:

Ввод . Например, ввод А, ввода.

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

Пример 3. Ввести значения переменных А, В, С.

Ввод А, В, С.

Компьютер ждет действий пользователя. Пользователь, например, вводит с клавиатуры через пробел: 8 -6 3. После нажатия эти значения попадают в ячейки А, В, С.

Команда вывода. Запись:

вывод . Например, выводХ1, Х2.

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

2. Результаты решения задачи сообщаются компьютером пользователю путем выполнения команды вывода.

5. Закрепление нового материала: решение задач.

Учитель. Итак, мы разобрали три команды, теперь нужно научиться применять полученные знания при решении задач.

(Решение задач. Самостоятельная работа)

Учитель. А теперь решим еще одну задачу, алгоритм решения которой часто встречается при программировании.

№2. Даны две переменные величины X и Y. Требуется произвести между ними обмен значениями [1].

Прежде чем прейдем к решению этой задачи, рассмотрим пример.

Внимание на экран.

Пример. Имеются две клетки: в одном – заяц, в другом – волк. Нужно поменять их местами. Как поступить?

Нам понадобится дополнительная третья клетка

нач ввод A , B

B := D

Вывод A , B

ФИЗКУЛЬТМИНУТКА

ПРАКТИЧЕСКАЯ РАБОТА

6. Подведение итогов

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

1. Где хранит данные исполнитель-компьютер для решения задач?

2. Какие команды умеет выполнять исполнитель-компьютер?

3. Каким образом переменные величины получают конкретные значения?

4. Какой командой сообщаются пользователю результаты решения задачи?

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

После обсуждений ответов на вопросы, заполняется лист рефлексии.

7. Постановка домашнего задания

(Задания из учебника).

Прочитать § 11, прочитать и ответить на вопросы 1-8 стр.

Список использованной литературы

1. И. Семакин, Л. Залогова, С.Русаков, Л. Шестакова. Информатика. Базовый курс. 7-9 классы – М.: Лаборатория Базовых Знаний, 2010.

И. Г. Семакин, Т. Ю. Шеина. Преподавание базового курса информатики в средней школе. Методическое пособие. – М.: Лаборатория Базовых Знаний, 2001.

Источник: znanio.ru

Алгоритмы и элементы программирования

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

Алгоритмы анализа и преобразования записей чисел в позиционной системе счисления.

Читайте также:
Что умеет программа cpu z

Алгоритмы, связанные с делимостью целых чисел. Алгоритм Евклида для определения НОД двух натуральных чисел.

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

Алгоритмы обработки массивов. Примеры: перестановка элементов данного одномерного массива в обратном порядке; циклический сдвиг элементов массива; заполнение двумерного числового массива по заданным правилам; поиск элемента в двумерном массиве; вычисление максимума и суммы элементов двумерного массива. Вставка и удаление элементов в массиве.

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

Сортировка одномерных массивов. Квадратичные алгоритмы сортировки (пример: сортировка пузырьком). Слияние двух отсортированных массивов в один без использования сортировки.

Алгоритмы анализа отсортированных массивов. Рекурсивная реализация сортировки массива на основе слияния двух его отсортированных фрагментов.

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

Построение графика функции, заданной формулой, программой или таблицей значений.

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

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

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

Представление о структурах данных.Примеры: списки, словари, деревья, очереди. Хэш-таблицы.

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

Подпрограммы (процедуры, функции). Параметры подпрограмм. Рекурсивные процедуры и функции.

Логические переменные. Символьные и строковые переменные. Операции над строками.

Двумерные массивы (матрицы). Многомерные массивы.

Средства работы с данными во внешней памяти. Файлы.

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

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

Понятие о непроцедурных языках программирования и парадигмах программирования. Изучение второго языка программирования.

Разработка программ

Этапы решения задач на компьютере.

Структурное программирование. Проверка условия выполнения цикла до начала выполнения тела цикла и после выполнения тела цикла: постусловие и предусловие цикла. Инвариант цикла.

Методы проектирования программ «сверху вниз» и «снизу вверх». Разработка программ, использующих подпрограммы.

Библиотеки подпрограмм и их использование.

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

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

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

Элементы теории алгоритмов

Формализация понятия алгоритма. Машина Тьюринга – пример абстрактной универсальной вычислительной модели. Тезис Чёрча–Тьюринга.

Другие универсальные вычислительные модели (пример: машина Поста). Универсальный алгоритм. Вычислимые и невычислимые функции. Проблема остановки и ее неразрешимость.

Абстрактные универсальные порождающие модели (пример: грамматики).

Сложность вычисления: количество выполненных операций, размер используемой памяти; их зависимость от размера исходных данных. Сложность алгоритма сортировки слиянием (MergeSort).

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

Доказательство правильности программ.

Источник: cyberpedia.su

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