- •Лабораторная работа №1 программирование линейных вычислительных процессов
- •Лабораторная работа №2 программирование разветвляющихся вычислительных процессов с проверкой логического условия в цикле
- •Лабораторная работа №3 Программирование циклических вычислительных структур
- •Лабораторная работа №4 программирование с использованием подпрограмм
- •Int: Real;
- •Iter: Integer;
- •Лабораторная работа №5 Обработка одномерных и двумерных массивов.
- •I, j: Integer;
- •Лабораторная работа №6 построение графических изображений
- •InitGraph (gd, gm, '');
I, j: Integer;
Sum, SA: Real;
Begin
ClrScr;
WriteLN('Исходная матрица А(5,5):');
For I:=1 To N Do
Begin
For J:=1 To N Do
Write(A[I, J]:7:3, ' ');
WriteLN;
End;
Sum:=0;
For I:=1 To N Do
For J:=1 To N Do
If I+J=N+1 Then
Sum:=Sum+A[I,J];
WriteLN('Сумма элементов второстепенной диагонали=',Sum:5:3);
SA:=Sum/5;
WriteLN('Среднее арифметическое элементов второстепенной диагонали=',SA:5:3);
End.
Результаты работы программы к заданию №4:
Матрица C:
Исходная матрица А(5,5):
1.000 0.200 56.000 4.000 7.000
0.000 5.000 1.000 0.567 45.000
23.000 12.100 9.000 9.090 2.000
0.000 0.000 3.000 6.000 123.000
0.000 3.000 5.000 7.000 8.000
Сумма элементов второстепенной диагонали=16.567
Среднее арифметическое элементов второстепенной диагонали=3.313
Задание №5. Поменять местами первую и вторую строчки данной матрицы.
Исходные данные:
Текст программы к заданию №5:
Program m111556;
Uses
Crt;
Var
I, J, Buf: Integer;
A: Array [1..4, 1..4] of Integer=((564, 816, 196, 436),
(300, -44, 423, 513),
(764, 554, -94, -24),
(944, -92, -69, 284));
Begin
ClrScr;
WriteLN ('Исходная матрица А:' );
For I:=1 To 4 Do
Begin
For J:=1 To 4 Do
Write(A[I,J]:5);
WriteLN;
End;
For J:=1 To 4 Do
Begin
Buf:=A[1,J];
A[1,J]:=A[2,J];
A[2,J]:=Buf;
End;
WriteLN;
WriteLN ('Полученная матрица А:');
For I:=1 To 4 Do
Begin
For J:=1 To 4 Do
Write(A[i,J]:5);
WriteLN;
End;
readln;
End.
Результаты работы программы к заданию №5:
Исходная матрица А:
564 816 196 436
300 -44 423 513
764 554 -94 -24
944 -92 -69 284
Полученная матрица А:
300 -44 423 513
564 816 196 436
764 554 -94 -24
944 -92 -69 284
Лабораторная работа №6 построение графических изображений
Задание №1. Используя графические команды языка Turbo-Pascal, составить программу для построения текста с объемным начертанием, указанного в варианте. Необходимо предусмотреть организацию циклического изменения цветовой палитры элементов (букв) заданного текста.
Исходные данные.
а) Фамилия - "Гагарин"
б) Тип заливки - "Г"-6; "А"-1; "Г"-7; "А"-2; "Р"-1; "И"-3; "Н"-1.
Текст программы к заданию №1:
Program m111616;
Uses
Crt,Graph;
Var
GD,GM,N:Integer;
Begin
ClrScr;
GD:=Detect;
GM:=1;
Initgraph(GD,GM,'');
{рисование буквы "Г"}
Line(50,50,50,130);
Line(50,50,100,50);
Line(100,50,100,60);
Line(100,60,60,60);
Line(60,60,60,130);
Line(50,130,60,130);
{рисование буквы "А"}
Line(210-80,50,220-80,50);
Line(210-80,50,190-80,130);
Line(220-80,50,240-80,130);
Line(190-80,130,200-80,130);
Line(240-80,130,230-80,130);
Line(200-80,130,210-80,95);
Line(230-80,130,220-80,95);
Line(210-80,95,220-80,95);
Line(212-80,85,218-80,85);
Line(212-80,85,215-80,70);
Line(215-80,70,218-80,85);
{рисование буквы "Г"}
Line(185,50,185,130);
Line(185,50,235,50);
Line(235,50,235,60);
Line(235,60,195,60);
Line(195,60,195,130);
Line(185,130,195,130);
{рисование буквы "А"}
Line(210+40,50,220+40,50);
Line(210+40,50,190+40,130);
Line(220+40,50,240+40,130);
Line(190+40,130,200+40,130);
Line(240+40,130,230+40,130);
Line(200+40,130,210+40,95);
Line(230+40,130,220+40,95);
Line(210+40,95,220+40,95);
Line(212+40,85,218+40,85);
Line(212+40,85,215+40,70);
Line(215+40,70,218+40,85);
{рисование буквы "Р"}
Line(290,50,290,130);
Line(290,50,340,50);
Line(330,85,330,60);
Line(330,60,300,60);
Line(300,60,300,85);
Line(300,85,330,85);
Line(340,95,330,95);
Line(330,95,300,95);
Line(300,95,300,130);
Line(290,130,300,130);
Line(340,50,340,95);
{рисование буквы "И"}
Line(360,50,360,130);
Line(360,50,370,50);
Line(370,50,370,110);
Line(360,130,370,130);
Line(370,110,400,50);
Line(400,50,410,50);
Line(410,50,410,130);
Line(400,130,410,130);
Line(400,75,400,130);
Line(370,130,400,75);
{рисование буквы "Н"}
Line(430,50,430,130);
Line(430,50,440,50);
Line(430,130,440,130);
Line(440,85,440,50);
Line(440,130,440,100);
Line(440,85,470,85);
Line(440,100,470,100);
Line(470,50,470,85);
Line(470,100,470,130);
Line(470,50,480,50);
Line(470,130,480,130);
Line(480,50,480,130);
Randomize;
Repeat
{Г}
N:=1+Random(14);
Setfillstyle(6,N);
Floodfill(75,55,15);
{А}
N:=1+Random(14);
Setfillstyle(1,N);
Floodfill(140,55,15);
{Г}
N:=1+Random(14);
Setfillstyle(5,N);
Floodfill(186,55,15);
{А}
N:=1+Random(14);
Setfillstyle(1,N);
Floodfill(252,55,15);
{Р}
N:=1+Random(14);
Setfillstyle(6,N);
Floodfill(295,55,15);
{И}
N:=1+Random(14);
Setfillstyle(1,N);
Floodfill(365,55,15);
{Р}
N:=1+Random(14);
Setfillstyle(6,N);
Floodfill(435,55,15);
Until KeyPressed;
CloseGraph;
End.
Результаты работы программы к заданию №1:
Задание №2. Используя графические команды языка Turbo-Pascal, составить программу для построения игрового поля с расстановкой и динамическим перемещением шашек в соответствии с позицией, указанной в варианте, а также предусмотреть реализацию указанных ходов.
Исходные данные.
а) Исходная расстановка: Белые:6,2;7,5. Черные: 5,1;6,6.
б) Ходы: Белые G5 бьют черные F6. Черные E1 бьют белые F2.
Текст программы к заданию №2:
Program m111626;
Uses
Crt, Graph;
Var
GD, GM, H, I, J, P, H1, H2, K:integer;
Begin
ClrScr;
GD:=Detect;
GM:=1;
