- •Отчет по учебной практике
- •Содержание
- •Введение
- •1 Программирование алгоритмов линейной структуры
- •1.1 Практическое задание №1
- •2 Программирование алгоритмов разветвленной структуры
- •2.1 Практическое задание №2
- •2.2 Практическое задание №3
- •3.1 Практическое задание №4
- •4 Обработка массивов
- •4.1 Практическое задание №5
- •3 Программирование алгоритмов циклической структуры
- •4.2 Практическое задание №6
- •4.3 Практическое задание №7
- •4.4 Практическое задание №8
- •5 Скриншоты
- •6 Заключение
- •7 Список литературы
4.2 Практическое задание №6
Нахождение наибольшего (наименьшего) элемента в векторе.
Условие: Найти наибольшее значение Х(I)+Y(I) для массивов Х, Y.
Б
1
Y[i]:=random(10)-5
5
6
7
A[i]:=X[i]+Y[i]
8
9
10
2
X[i]:=random(10)-5
3
4
11
max=A[1]
max=A[i]
12
13
14
-
+
15
16
Программная запись:
Pascal:
Program Zadanie4B;
Uses crt;
Type T=array [1..10] of integer;
Type D=array [1..10] of integer;
Type R=array [1..10] of integer;
Var X:T; Y:D; A:R; i,max:integer;
Begin
Clrscr;
Randomize;
Writeln('Sgenerirovannyi massiv X[10]');
for i:=1 to 10 do
begin
X[i]:=random(10)-5;
Write(X[i],' ');
end;
Writeln;
Writeln('Sgenerirovannyi massiv Y[10]');
for i:=1 to 10 do
begin
Y[i]:=random(10)-5;
Write(Y[i],' ');
end;
Writeln;
Writeln('Vyvod massva A[10]');
for i:=1 to 10 do
begin
A[i]:=X[i]+Y[i];
Write(A[i],' ');
end;
max:=A[1];
for i:=2 to 10 do
if A[i]>max then
max:=A[i];
Writeln;
Writeln('max=', max);
Readln;
End.
C++:
#include <math.h>
#include <time.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#define N 10
int main()
{ clrscr();
int i,max,X[N],Y[N],A[N];
srand(time(NULL));
printf("Sgenerirovannyi massiv X[10]\n");
for (i=0;i<N;i++)
{ X[i]=rand()%10-5;
printf("%2d ", X[i]); }
printf("\nSgenerirovannyi massiv Y[10]\n");
for (i=0;i<N;i++)
{ Y[i]=rand()%10-5;
printf("%2d ", Y[i]); }
printf("\nVyvod massiva A[10]\n");
for (i=0;i<N;i++)
{ A[i]=X[i]+Y[i];
printf("%2d ", A[i]); }
max=A[0];
for (i=1;i<N;i++)
{ if (A[i]>max) max=A[i]; }
printf("\nmax=%d", max);
getch(); }
4.3 Практическое задание №7
Программирование алгоритмов работы с частями матрицы
Условие: Найти количество нулевых элементов матрицы В(4,4), расположенных выше главной диагонали.
Словесная запись:
Начало цикла с параметрами i=1,4;
Начало цикла с параметрами j=1,4;
B[i,j]:=random(3);
Вывести B[i,j];
Конец цикла;
Конец цикла;
Обнулить переменную k;
Начало цикла с параметрами i=1,4;
Начало цикла с параметрами j=1,4;
Проверить: если i<j, то перейти к п.11., иначе перейти к п.8.;
Проверить: если B[i,j]=0, то k:=k+1, иначе перейти к п.8.;
Конец цикла;
Конец цикла;
Вывести k;
Конец алгоритма.
Блок-схема:
1
2
B[i,j]:=random(3)
4
5
3
k:=0
7
8
6
9
10
11
k:=k+1
12
13
Программная запись:
Pascal:
Program Zadanie4C;
Uses crt;
Type T=array [1..4, 1..4] of integer;
Var B:T; i,j,k:integer;
Begin
Clrscr;
Randomize;
Writeln('Sgenerirovannyi massiv B[4,4]');
for i:=1 to 4 do
begin
for j:=1 to 4 do
begin
B[i,j]:=random(3);
Write(B[i,j],' ');
end;
Writeln; end;
k:=0;
for i:=1 to 4 do
begin
for j:=1 to 4 do
begin
if i<j then
begin
if B[i,j]=0 then k:=k+1;
end; end; end;
Writeln('Kolichestvo nulevyh elementov = ', k);
Readln;
End.
C++:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 4
#define P 4
int main()
{ clrscr();
int B[N][P],i,j,k;
srand(time(NULL));
printf("Sgenerirovannyi massiv B[4][4]\n");
for (i=0;i<N;i++)
{ for (j=0;j<N;j++)
{ B[i][j]=rand()%3;
printf (" %3d ", B[i][j]); }
printf("\n"); }
k=0;
for (i=0;i<N;i++)
{ for (j=0;j<N;j++)
{ if (i<j)
{ if (B[i][j]==0) k=k+1; } } }
printf("Kolichesvo nulevyh elementov = %d", k);
getch(); }
