Файл: Лабораторная работа 3 Вариант 16. Студент группы М4О112Б19 Рогожин А. А. Преподаватель Доцент Герко С. А.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 22.11.2023

Просмотров: 22

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


Министерство науки и высшего образования Российской Федерации

ФГБОУ ВО "МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ"

(национальный исследовательский университет)

Кафедра 402

_____________________________________________________________

ЛАБОРАТОРНАЯ РАБОТА №3

Вариант №16.

Выполнил: Студент группы М4О-112Б-19

______ Рогожин А.А.

Преподаватель: Доцент

______ Герко С.А.

Москва 2020 г.

Задания выполнены на языке PascalABC.

Задание №5:

5.2 Пользователем к клавиатуры вводится одно целое число. Необходимо написать программу, которая требует от пользователя ввода второго числа до тех пор, пока оно не будет равно первому. В таком случае выводить сообщение «A no equal B!» («A не равно B!»).

5.3 Пользователем к клавиатуры вводится целое положительное число. Необходимо написать программу, которая вычисляет в отдельной функции и выводит на экран: факториал введённого числа.

Задание 5.2:



Код 5.2:

var a,b:integer;

begin

writeln ('Введите числа "а" и "b"');

readln (a);

readln(b);

if not (a=b) then

repeat

begin

writeln ('Число "а" не равно числу "b"');

writeln ('Введите число "b"');

readln(b);

end;

until a=b;

writeln('a=b');

readln;
end.
Задание 5.3:





Код 5.3:

var x,n,i:integer;

mass: array[1..100] of integer;

function fl(n,i:integer):integer;

begin

x:=1;

for i:=1 to n do

mass[i]:=i;

for i:=1 to n do

x:=x*mass[i];

fl:=x;

end;

begin

writeln('Введите число');

readln(n);

x:=fl(n,i);
writeln(x);
end.

Задание №6:

(задание 6.3 содержится в задании 6.2)

6.2: В одномерном массиве, состоящем из n целых элементов, вычислить: 1) количество положительных элементов массива;

2) сумму элементов массива, расположенных после последнего элемента, равного нулю.

Преобразовать массив таким образом,
чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом ‒ все остальные.

6.3: Выполнить п.6.2, однако, память под массив должна выделяться динамически (при запуске программы размер массива задаёт пользователь)



Код:


var

mass: array of real;

i,c,zero,j,n:integer;

sum,x,y:real;

begin

writeln('Введите размер массива');

readln (n);

mass:= new real[n+1];

writeln('Введите элементы массива');

for i:=1 to n do

readln (mass[i]);

randomize;

{for i:=1 to n do

mass[i]:=random(20)-10;

for i:=1 to n do

writeln (mass[i]);}

for i:=1 to n do

if mass[i]>0 then c:=c+1;

writeln('Кол-во положительных элементов:',c);

for i:=1 to n do

if mass[i]=0 then zero:=i;

//writeln (zero);

if (zero>0) and not (zero=10) then

for i:=zero+1 to n do

sum:=sum+mass[i];

writeln ('сумма элементов после последнего "0":',sum);

c:=0;
for i:=1 to n do

if mass[i]<2 then c:=c+1;

//writeln('ccc',c);

for i:=c+1 to n do

//begin

if mass[i]<2 then

begin

//x:=i;

for j:=1 to c do

if mass[j]>=2 then

begin

if mass[i]<2 then

begin

y:=mass[j];

mass[j]:=mass[i];

mass[i]:=y;

end;

end;

end;

writeln('Отсортированный массив:');

for i:=1 to n do

writeln(mass[i]);

readln;

end.2>2>2>