Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа 4(прогр.).docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
48 Кб
Скачать
☆
    1. Требования к выполнению лабораторной работы

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

Задание 1. Создание программы, реализующей циклический алгоритм тремя операторами цикла

Разработать программу, которая реализует циклический алгоритм тремя операторами for, while, repeat.

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

X

Y

.

  1. Реализуйте алгоритм на циклах: for, while, repeat. Для цикла for определите формулу для вычисления количества расчетных точек. В циклах while и repeat используйте условие - логическое выражение, зависящее от х.

Примечание. Для цикла for количество повторений – это количество точек отрезка [а;в], расстояние между которыми равно размеру шага с.

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

Задание 2. Определение вида циклического процесса и его реализация

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

  1. Разработайте алгоритм и запишите его с помощью блок-схемного способа записи.

  2. Определите оператор цикла, который подходит для реализации повторяющегося процесса алгоритма.

  3. Реализуйте алгоритм.

  4. Разработайте тесты по правилам тестов для цикла.

  5. Отладьте программу.

Задание 3. Реализация вложенных повторяющихся процессов

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

  1. Определите вид последовательности: конечная (из известного числа элементов) или завершающаяся специальным символом – конец последовательности.

  2. Разработайте алгоритм программы.

  3. Реализуйте алгоритм.

  4. Выполните отладку и тестирование программы на нескольких тестах.

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

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

Тест

Исходная последовательность: 2 4 55 11 222 33 444 1 555

Результат: 3

Код программы

program Vlojenniy_Cikl;

{$APPTYPE CONSOLE}

uses

SysUtils;

Var

CountN, //количество разрядов в числе

countNmax, //максимальное количество разрядов

count:byte; //количество чисел с макс. кол. разрядов

N:int64;

Begin

countNmax:=0;

Read(N);

while N<>0 do /внешний цикл – пока не будет прочитан 0

begin

CountN:=0;

While N<>0 do //внутренний цикл- количество цифр в числе

Begin

Inc(countN);

N:=N div 10;

End;

if countN>countNmax then

begin

count:=1;

countNmax:= countN

end

else

if countN=countNmax then inc(count);

read(N)

end; //end внешнего цикла

Writeln('Результат ', count, );

readln; readln

End.

Варианты заданий

Вариант1.

  1. Функция cos(x) на отрезке [0;3π] с шагом 0,1.

  2. Удалить из числа все четные цифры.

  3. Дана последовательности из n элементов целого типа. Сформировать(используйте алгоритм ручного перевода и вывести двоичный код элементов последовательности кратных 7. Двоичный код представить как десятичное число, записанное цифрами 0 и 1.

Вариант2

  1. Функция y=|x| на отрезке [-1;1] c шагом 0,1

  2. Определить, образует ли данная последовательность из N натуральных чисел арифметическую прогрессию. Ответом должно быть True или False.

  3. Дана последовательности целых чисел, заканчивающаяся нулем. Удалить из четных чисел последовательности к-ую цифру.

Вариант3

  1. Функция y=x2 на отрезке [-1;1] c шагом 0,1

  2. Дано натуральное число определить образуют ли цифры числа арифметическую прогрессию.

  3. Определить частоту появления простого числа в каждом десятке натурального ряда чисел, ограниченного числом N. Вывести таблицу частот.

Вариант4

  1. Функция y=x3 на отрезке [-1;1] c шагом 0,1

  2. Дано целое число N. Выбросите из записи этого числа цифры 3 и 7, оставив порядок оставшихся цифр прежним.

  3. Дана последовательность целых чисел из диапазона [-1000,1000] .Разложить на простые множители те числа последовательности, сумма цифр которых кратна 7. Разложение вывести на монитор.

Вариант5

  1. Функция y=tg(x) на отрезке [-π/3;π] c шагом 0,1

  2. Дано целое число. Определить, найти сумму и произведение его старшей и младшей цифр.

  3. Дана последовательность натуральных чисел, заканчивающаяся 0. Найти количество натуральных чисел, не превосходящих заданного числа N и делящихся на каждую из своих цифр.

Вариант6

  1. Функция y=cos(x) на отрезке [-π/3;π] c шагом 0,1.

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

  3. Дана последовательность целых чисел, заканчивающаяся нулем. Найти количество элементов последовательности, являющихся числом Мерсена (число N является числом Мерсена, если это простое число и N+1=2P)

Вариант7

  1. Функция y=x+5 на отрезке [-10;5] c шагом 0,5

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

  3. Дана последовательность из n целых чисел. Определить количество чисел последовательности, которые не имеют в своем со

ставе заданной цифры (цифра вводиться пользователем)

Вариант8

  1. Функция y=2sin(x) на отрезке [-π;π] c шагом 0,3

  2. Определить, является ли целое число Х степенью двух (логарифм не использовать).

  3. Дана последовательность натуральных чисел, заканчивающаяся нулем. Для каждого простого числа Х этой последовательности найти такое натуральное Y , что двоичная запись числа Y получается из двоичной записи числа Х изменением порядка цифр на обратный.

Вариант9

  1. Функция y=2cos(x) на отрезке [-π;π] c шагом 0,4

  2. Определить, является натуральное число N (0<N<=30) совершенным.

(Число считается совершенным, если оно равно сумме всех своих делителей кроме самого этого числа. Например: 6=1+2+3)

  1. Дано натуральное число N.Выяснить, имеются ли среди чисел n, n+1, ...,2n ,близнецы, т.е. простые числа, разность между которыми равна двум.

Вариант10

  1. Функция y=|x+3| на отрезке [-10;10] c шагом 2.

  2. Определить является ли натуральное число N простым.

  3. Дана последовательность из N натуральных чисел. Найти все пары дружественных чисел последовательности. Парой считать два подряд идущих числа последовательности. (Число считается дружественным, если сумма делителей одного равна сумме делителей другого)

Вариант11

  1. Функция y=tg(x)+1 на отрезке [-π/3;π] c шагом 0,2.

  2. Определить, является ли натуральное число палиндромом (перевертышем).

Дана последовательность из N натуральных чисел. Разложить на простые множители те числа последовательнсти, которые не

кратны 7.

Вариант12

  1. Функция y=(x+1)2 на отрезке [-2;3] c шагом 0,21

  2. Определить количество единиц и нулей в двоичном коде заданного натурального числа.

  3. Дана последовательность из n целых чисел. Найти максимальное значение среди простых чисел последовательности.

Вариант13

  1. Функция y=3tg(x) на отрезке [-π/3;π] c шагом 0,2

  2. Дана числовая последовательность. Определить со скольких отрицательных чисел она начинается.

  3. Дана последовательность натуральных чисел, заканчивающаяся нулем. Для всех симметричных чисел последовательности найти цифровой корень по алгоритму: Сложить все цифры введенного числа, затем его суммы и так повторять столько раз, пока число не станет однозначным – это и будет цифровым корнем исходного числа.(Например:n=34697 S1=3+4+6+9+7=29 S2=2+9=11 s3=2 2- цифровой корень числа n)

Вариант 14

  1. Функция y=cos(x)+1 на отрезке [-π/3;π] c шагом 0,1

  2. Разработать программу возведения целого числа в целую степень.

  3. Даны: натуральное число m и последовательность n1, n2, n3.....nm (m>=2). Вычислить НОД(n1, n2, n3.....nm) воспользовавшись соотношением НОД(n1, n2, n3.....nm)=НОД(НОД(n1, n2, n3.....nm-1),nm) и алгоритмом Евклида.

Вариант 15

  1. Функция y= на отрезке [1;10] c шагом 0,5.

  2. Дано натуральное число, найти и вывести максимальную цифру числа. Если их несколько, то вывести их количество.

  3. Дана последовательность из n целых чисел. Определить количество чисел последовательности, которые содержат в своей записи только простые цифры.

Вариант 16.

  1. Функция y=tg(x) на отрезке [-π/3;π] c шагом 0,1

  2. Дана последовательность из пяти символов, представляющая число в шестнадцатеричной системе счисления. Перевести число в десятичную систему счисления.

  3. Определить количество простых чисел - палиндромов на интервале в последовательности целых чисел, которая заканчивается нулем.