Добавлен: 09.11.2023
Просмотров: 15
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Пермский национальный исследовательский политехнический университет»
Отчетная работа по теме: Turbo Pascal.
Выполнил: студент гр. НГТ-22-2С Осипанов Б.С. Проверил: ст.препод. каф. ГЭМ |
Чалов И.А |
|
|
|
|
program zadanie3;
var a,b,x,y,z:real;
begin
x:=1.426;
y:=1.220;
z:=3.5;
a:=(2*cos(x-pi/6))/(0.5+sqr(sin(y)));
b:=(1+sqr(z))/(3+sqr(z)/5);
writeln('a=',a);
writeln('b=',b);
end.
var a,b,n:real;
begin
read(a,b);
if sqr(a)>sqr(b) then
write('n=1')
else write('n=2');
end.
program zadanie5;
var x,y,x1,a: real; b:integer;
begin
b:=2;
a:=-0.5;
x:=0;
x1:=0.15;
while x<=3 do
begin
if x<1 then
begin
y:=1;
writeln('y2=',y,' x2=',x);
end;
if (x>=1) and (x<=2) then
begin
y:=a*x*x*ln(x);
writeln('y1=',y,' x1=',x);
end;
if x<1.3 then
begin
y:=pi*(x*x)-7/(x*x);
writeln('y4=',y,' x4=',x);
end;
if x>2 then
begin
y:=Exp(x*a)*cos(b*x);
writeln('y3=',y,' x3=',x);
end;
x:=x+x1;
end;
end.
var t1,x1,y,a,x,t:real;
begin
a:=-2.1;
x:=1;
x1:=0.2;
t:=2;
t1:=0.2;
while (x<=2) and (t<=3) do
begin
y:= sqrt(t+1)*EXP(-a*x*t)*cos(t-a);
t:=t+t1;
writeln('При x=',x,' и t=',t-t1,' y=',y);
x:=x+x1;
end;
y:= sqrt(t+1)*EXP(-a*x*t)*cos(t-a);
t:=t+t1;
writeln('При x=',x,' и t=',t-t1,' y=',y);
x:=x+x1;
end.
var i,k: integer; s,z: real;
begin
s:= 0;
z:=1;
for i := 1 to 7 do
begin
s:= s + (-1)**(i+1)/(i*(i+1)*(i+2));
writeln('При i=',i, ' Сумма ряда = ',s);
end;
for i := 1 to 7 do
begin
z:= z*(-1)**(i+1)/(i*(i+1));
writeln('При i=',i, ' Произведение = ',z);
end;
writeln('Сумма = ', s:0:10);
writeln('Произведение = ', z:0:10);
end.
var x, y, max,maxX: real;
begin
max :=0;
maxX:=0;
x := 0;
while x <= 2 do
begin
y := 2+x-sqr(x);
if y > max then
max:=y;
if x>maxX then
maxX:=x;
writeln('Промежуточное значение y=',y,' x=',x);
x := x + 0.25;
end;
writeln('Наибольшее значение функции= ', max);
writeln('Наибольшее значение аргумента= ', maxX);
end.
program zadanie9;
const
SIZE = 5; // размер массива
var
arr: array [1..SIZE] of integer; // массив для хранения чисел
i, count: integer; // переменные для цикла и подсчета не нулевых элементов
begin
// вводим элементы массива с клавиатуры
writeln('Введите ', SIZE, ' целых чисел:');
for i := 1 to SIZE do begin
write('Элемент ', i, ': ');
readln(arr[i]);
end;
// считаем количество не нулевых элементов
count := 0;
for i := 1 to SIZE do begin
if arr[i] <> 0 then
count := count + 1;
end;
// выводим результат
writeln('Количество не нулевых элементов: ', count);
end.
program zadanie10;
const
ROWS = 3; // количество строк в массиве
COLS = 4; // количество столбцов в массиве
var
arr: array [1..ROWS, 1..COLS] of integer; // массив для хранения чисел
sum: array [1..COLS] of integer; // массив для хранения суммы элементов по столбцам
i, j: integer; // переменные для циклов
begin
// вводим элементы массива с клавиатуры
writeln('Введите ', ROWS, ' строк по ', COLS, ' чисел:');
for i := 1 to ROWS do begin
for j := 1 to COLS do begin
read(arr[i, j]);
end;
end;
// вычисляем сумму элементов по столбцам
for j := 1 to COLS do begin
sum[j] := 0;
for i := 1 to ROWS do begin
sum[j] := sum[j] + arr[i, j];
end;
end;
// выводим результат
writeln('Сумма элементов по столбцам:');
for j := 1 to COLS do begin
write(sum[j], ' ');
end;
end.
program zadanie11;
const
ROWS = 6; // количество строк в матрице D
COLS = 7; // количество столбцов в матрице D
P = 3; // номер строки, после которой нужно вставить новую строку
Q = 5; // номер столбца, после которого нужно вставить новый столбец
var
D: array [1..ROWS, 1..COLS] of real; // матрица D
C: array [1..COLS+1, 1..ROWS+1] of real; // матрица C (расширенная)
a: array [1..COLS+1] of real; // новая строка
b: array [1..ROWS+1] of real; // новый столбец
i, j: integer; // переменные для циклов
begin
// заполняем матрицу D случайными действительными числами от -10 до 10
randomize;
for i := 1 to ROWS do begin
for j := 1 to COLS do begin
D[i, j] := random * 20 - 10;
write(D[i, j]:8:2, ' ');
end;
writeln;
end;
// заполняем новую строку a и новый столбец b
for j:= 1 to COLS+1 do begin
a[j] := j;
end;
for i:=1 to ROWS+1 do begin
b[i]:=i;
end;
// копируем матрицу D в матрицу C с учетом вставки новой строки и столбца
for i := 1 to ROWS+1 do begin
for j := 1 to COLS+1 do begin
if (i <= P) and (j <= Q) then begin
C[i, j] := D[i, j];
end else if (i = P+1) and (j <= COLS+1) then begin
C[i, j] := a[j];
end else if (j = Q+1) and (i <= ROWS+1) then begin
C[i, j] := b[i];
end else if (i > P+1) and (j <= COLS+1) then begin
C[i, j] := D[i-1, j];
end else if (j > Q+1) and (i <= ROWS+1) then begin
C[i, j] := D[i, j-1];
end;
end;
end;
// выводим матрицу C на экран
writeln('Матрица C:');
for i := 1 to ROWS+1 do begin
for j := 1 to COLS+1 do begin
write(C[i, j]:8:2, ' ');
end;
writeln;
end;
end.
program zadanie15;
uses GraphABC;
const
X_MIN = -15; // минимальное значение аргумента
X_MAX = 5; // максимальное значение аргумента
STEP = 0.1; // шаг
var
x, y: real;
begin
// устанавливаем размер окна и цвет фона
SetWindowSize(800, 600);
SetWindowCaption('График функции y=2*sin(x)*EXP(x/5)');
SetPenColor(clBlack);
SetBrushColor(clWhite);
ClearWindow;
// рисуем координатные оси
Line(0, WindowHeight div 2, WindowWidth, WindowHeight div 2); // горизонтальная ось
Line(WindowWidth div 2, 0, WindowWidth div 2, WindowHeight); // вертикальная ось
// рисуем график функции
x := X_MIN;
while x <= X_MAX do
begin
y := 2*sin(x)*EXP(x/5);
PutPixel(round(x*10) + WindowWidth div 2, -round(y*100) + WindowHeight div 2,clBlack);
x := x + STEP;
end;
end.
1>