Для квадратного уравнения вида Ax2 + Bx + C = 0 найти все вещественные корни
Начало алгоритма | |
Ввод необходимых данных: A,B,C | |
Поиск дискриминанта D (промежуточный результат) | |
Проверка отсутствия вещественных корней | |
Если условие (D < 0) истинно, то Вывод сообщения об их отсутствии и Конец | |
Иначе - Проверка совпадения корней (D=0) | |
Две ветви: Если корни совпадают, То ищем и выводим единственное значение корня и Конец Иначе – Ищем и выводим значения обоих корней и Конец | |
Конец алгоритма |
Основные управляющие конструкции
Следование | Ветвление | Повторение (Цикл ПОКА) |
Два и более подряд идущих блока одного или разного вида выполняются один за другим. | Разветвление алгоритмы в зависимости от текущего значения указанного Условия с последующим объединением. На одной из ветвей операторы могут отсутствовать. Операторы по ветви, помеченной знаком +, выполняются только в том случае, если выполняется Условие. Операторы по ветви, помеченной знаком –, выполняются только в том случае, если Условие НЕ выполняется. После выполнения операторов одной из ветвей выполняются операторы, следующие за данной конструкцией. | Повторение выполнения операторов Тела цикла, ПОКА выполняется указанное Условие. Если Условие не выполняется, начинают выполняться операторы, следующие за эти циклом Тело цикла может не выполнится ни разу Это цикл с пред условием |
Принцип структурного программирования
Этих трех конструкций достаточно для описания любого алгоритма!
Дополнительные виды циклов
Параметрический (Цикл ДЛЯ) | Полный вид (в виде цикла ПОКА) |
Является краткой (1 новый блок вместо трех) записью для цикла с пред условием, управляемым целочисленным параметром, меняющим значение с Нач по Кон с шагом Шаг Например, тело цикла с параметром I=1;+1;10 выполнится 10 раз. При первом выполнении I=1, при втором I=2, на 10 шаге I=10. То есть цикл выполнится ДЛЯ I = 1,2,3,…10 | Для положительного шага: Тело цикла может не выполнится ни разу, если при положительном шаге Нач>Кон |
|
Цикл с пост условием (Цикл ДО) | Полный вид (в виде цикла ПОКА) |
Перед проверкой Условия выполняется Тело цикла. Выполнение Тела цикла осуществляется, пока У словие НЕ истинно. Другими словами, Тело цикла выполняется ДО тех пор, пока Условие не станет истинным | Тело цикла выполняется хотя бы 1 раз. |
Комбинации конструкций
Конструкции могут следовать друг за другом или вкладываться друг в друга. Конструкции вкладываются друг в друга ЦЕЛИКОМ!
Следование и Ветвление, вложенное в Ветвление | Ветвление и Следование в Цикле ПОКА |
Цикл ПОКА в Цикле ПОКА | |
Пример алгоритма (первая лабораторная работа)
Линейный алгоритм Ветвящийся
Вычисление значения функции y=1/x4 | Вычисление значения функции y=1/x4, только для x, лежащих в области определения функции, и выводом сообщения в противном случае. |