Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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






Основным в процессе программирования является разработка алгоритма. Название " алгоритм" произошло от латинской формы имени среднеазиатского математика аль-Хорезми — Algorithmi. Алгоритм — одно из основных понятий информатики и математики.

Основные свойства алгоритмов следующие:

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

§ Дискpетность (прерывность, раздельность) — т.е. алгоpитм должен пpедставлять пpоцесс pешения задачи как последовательное выполнение пpостых (или pанее опpеделенных) шагов (этапов).

§ Опpеделенность — т.е. каждое пpавило алгоpитма должно быть четким, однозначным и не оставлять места для пpоизвола. Благодаpя этому свойству выполнение алгоpитма носит механический хаpактеp и не тpебует никаких дополнительных указаний или сведений о pешаемой задаче.

§ Pезультативность (или конечность). Это свойство состоит в том, что алгоpитм должен пpиводить к pешению задачи за конечное число шагов.

§ Массовость. Это означает, что алгоpитм pешения задачи pазpабатывается в общем виде, т.е. он должен быть пpименим для некотоpого класса задач, pазличающихся лишь исходными данными. Пpи этом исходные данные могут выбиpаться из некотоpой области, котоpая называется областью пpименимости алгоpитма.

основными алгоритмическими структурами являются следование, ветвление и цикл.

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

  блок-схема
 

Рис 1 Линейный Алгоритм

 

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

Пример 1. Пешеход шел по пересеченной местности. Его скорость движения по равнине v1 км/ч, в гору — v2 км/ч и под гору — v3 км/ч. Время движения соответственно t1, t2 и t3 ч. Какой путь прошел пешеход?

  1. Ввести v1, v2, v3, t1, t2, t3. 2. S1: = v1 * t1. 3. S2: = v2 * t2. 4. S3: = v3 * t3. 5. S: = S1 + S2 + S3. 6. Вывести значение S. 7. Конец.

Пример 2. Дано натуральное трехзначное число n, в записи которого нет нулей. Составить алгоритм, который возвращает значение ИСТИНА, если верно утверждение: " число n кратно каждой своей цифре", и ЛОЖЬ — в противном случае.

  1. Ввести число n 2. A: = n mod 10 {разряд единиц} 3. B: = n div 100 {разряд сотен} 4. C: = n div 10 mod 10 {десятки} 5. L: = (n mod A=0) and (n mod B=0) and (n mod C=0) 6. Вывод L 7. Конец

На приведенной выше схеме DIV и MOD соответственно операции деления нацело и получения остатка от целочисленного деления. В фигурных скобках записаны пояснения (комментарии) к операторам.

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

Структура ветвление существует в четырех основных вариантах:

· если-то;

· если-то-иначе;

· выбор;

· выбор-иначе.

 

Структура ветвления Блок-схема
1. если-то
если условие то действия все Пример: Для положительных х вычислить значение функции sin(x)если x > 0 то y: = sin(x) все
2. если-то-иначе
если условие то действия 1 иначе действия 2 все Пример: Даны два числа, если первое из них больше второго, то его необходимо удвоить, а второе число приравнять единице, в противном случае первое число оставить без изменения, а второе – удвоить.если a > b то a: = 2*a; b: = 1 иначе b: = 2*b все      
  3. выбор
Выбор при условие 1: действия 1 при условие 2: действия 2............ при условие N: действия N всеПример: в зависимости от значения натурального числа n, могущего принимать значения 1, 2 или 3, присвоить функции y значения sin x, cos x или нуля.выбор при n = 1: y: = sin(x) при n = 2: y: = cos(x) при n = 3: y: = 0 все
4. выбор-иначе
Выбор при условие 1: действия 1 при условие 2: действия 2............ при условие N: действия N иначе действия N+1 всеПример: выбор при a > 5: i: = i+1 при a = 0: j: = j+1 иначе i: = 10; j: =0 все

Пример 3. Дано натуральное число n. Если число нечётное и его удвоение не приведет к выходу за 32767 (двухбайтовое целое число со знаком), удвоить его, иначе — оставить без изменения.

Чтобы удовлетворить условию удвоения, число n должно быть нечетным и меньше 16384.

  1. Ввести число n 2. Если число n нечетное и меньше 16384, то n: = n * 2 3. Вывод n 4. Конец

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

Пример 4. Составить алгоритм и программу, запрашивающую имя и затем приветствующую его обладателя.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.