bannerbanner
Нейросети и программирование. Выпуск 3
Нейросети и программирование. Выпуск 3

Полная версия

Нейросети и программирование. Выпуск 3

Настройки чтения
Размер шрифта
Высота строк
Поля

Нейросети и программирование. Выпуск 3


Николай Петрович Морозов

© Николай Петрович Морозов, 2025


ISBN 978-5-0067-0597-5 (т. 3)

ISBN 978-5-0062-6016-0

Создано в интеллектуальной издательской системе Ridero

Лабораторные и практические работы №5 и 6 (Смотрите тему занятий «Создание алгоритмов и отладка программ циклической структуры» в таблице) являются для студентов достаточно сложными работами.



Поэтому, для лучшего понимания и усвоения данного материала я рекомендовал бы вам предварительно познакомиться (еще лучше, изучить) с содержанием ГЛАВы 8. ТЕХНОЛОГИИ АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЯ:

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

8.2. Понятие алгоритма и его свойства

8.3. Способы записи алгоритмов

8.4. Основные виды алгоритмов Основные виды алгоритмов

8.5. Принципы программирования

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

8.7. Классификация и обзор языков программирования

Вопросы для самопроверки


в моих электронных книгах «Информатика и ИТ. Нейросети» (выпуски 1 и 2).

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

1.Операторы цикла

Операторы цикла используются для вычислений, которые повторяются многократно. В Паскале имеется три вида циклов: цикл с предусловием while, цикл с постусловием repeat и цикл с параметром for.

1.1.Структурные схемы

Циклы с предусловием (на рис.1, левый) и с постусловием (рис.1, правый)


Рис.1.


Формат оператора с предусловием:


while выражение do оператор


Формат оператора с постусловием:


repeat тело цикла until выражение

1.2.Примеры

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

program tabl_fun;varXn, Xk: real; {начальное и конечное значения аргумента}dX: real; {шаг изменения аргумента}x, y: real; {текущие значения аргумента и функции}beginwriteln («Введите Xn, Xk, dX»);readln (Xn, Xk, dX);writeln (» – — – — – — – — – — – —»); {заголовок таблицы}writeln (»│ X │ Y │»);writeln (» – — – — – — – — – — – —»);x:= Xn; {первое значение аргумента}while x <= Xk do {заголовок цикла}beginy:= sin (x); {вычисление значения функции}writeln (»│», x:9:2, ‘ │», y:9:2, ‘ │»); {вывод строки таблицы}x:= x+dX; {переход к следующему значению аргумента}end;

writeln (» – — – — – — – — – — – —»);

readln;end.

Программа, вычисляющая квадратный корень вещественного аргумента Х с заданной точностью eps по итерационной формуле:

уn = (yn-1 + x/yn-1) /2,

где yn-1 – предыдущее приближение к корню (в начале вычислений выбирается произвольно), уn – последующее приближение. Процесс вычислений прекращается, когда приближения станут отличаться друг от друга по абсолютной величине менее, чем на величину заданной точности.

program square_root;

varX, eps, {аргумент и точность}Yp, Y: real; {предыдущее и последующее приближение}beginrepeatwriteln («Введите X, eps’);readln (X, eps);until (X> 0) and (eps> 0);Y:= 1;repeatYp:= Y;Y:= (Yp + X / Yp) / 2;until abs (Y – Yp)

1.3.Цикл с параметром for

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

В циклах for языка Паскаль используется счётчик, который автоматически либо увеличивается, либо уменьшается на единицу.

Соответственно, могут быть две формы записи этого цикла:


for параметр:= выражение_1 to выражение_2 do оператор

for параметр:= выражение_2 downto выражение_1 do оператор


1.3.1.Структурная схема


Рис.2.


1.3.2.Примеры.


1. Вывести на экран в столбик числа от 1 до 10.

program digit;var i: integer;beginfor i:= 1 to 10 do writeln (i)end.

2. Вывести на экран в столбик числа от 10 до 1 и подсчитать их сумму.

program digit;var i, sum: integer;beginsum:= 0;for i:= 10 downto 1 dobeginwriteln (i);inc (sum, i) {инкремент – inc (х) —увеличивает х на 1, inc (х, 3) – на 3}end;writeln («Сумма чисел:», sum);readln;end.

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

2.1.Черновой вариант алгоритма определения наибольшего общего делителя

Конец ознакомительного фрагмента.

Текст предоставлен ООО «Литрес».

Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.

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