Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Praktika_aues (1).doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
251 Кб
Скачать
☆

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), расположенных выше главной диагонали.

Словесная запись:

  1. Начало цикла с параметрами i=1,4;

  2. Начало цикла с параметрами j=1,4;

  3. B[i,j]:=random(3);

  4. Вывести B[i,j];

  5. Конец цикла;

  6. Конец цикла;

  7. Обнулить переменную k;

  8. Начало цикла с параметрами i=1,4;

  9. Начало цикла с параметрами j=1,4;

  10. Проверить: если i<j, то перейти к п.11., иначе перейти к п.8.;

  11. Проверить: если B[i,j]=0, то k:=k+1, иначе перейти к п.8.;

  12. Конец цикла;

  13. Конец цикла;

  14. Вывести k;

  15. Конец алгоритма.

Блок-схема:

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(); }

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]