Четверг, 25.04.2024, 12:52
Приветствую Вас Гость | RSS | PDA

Всё для студента информата

Полезная информация

Материалы для студента

Всё для студента IT » Материалы для студента » Теория вычислительных процессов

Решение задач по теме "Схемы программ"

1) Написать программу решения задачи: Найти максимальное из чисел, встречающихся в заданной матрице более одного раза.

program Project1;
{$APPTYPE CONSOLE}
uses
 SysUtils;
const n=5;
type mas=array[1..n,1..n] of integer;
 qwe=record
 mas:array[1..n*n] of integer;
 t:array[1..n,1..n] of byte;
 end;
var i,j,tem:integer;
 a:mas;
 b:qwe;
procedure ch(a:mas;var b:qwe;r:integer;k,p:integer;var tem:integer);
var i,j:integer;
begin
b.t[k,p]:=1;
for i := 1 to n do
 begin
 for j := 1 to n do
 begin
 if (a[i,j]=r)and(i<>k)and(j<>p)and(b.t[i,j]=0) then
 begin
 tem:=tem+1;
 b.t[i,j]:=1;
 b.mas[tem]:=a[i,j];
 end;
 end;
 end;
end;
begin
randomize;
tem:=0;
for i := 1 to n do
 for j := 1 to n do
 a[i,j]:=random(99)+1;
for i := 1 to n do
 begin
 for j := 1 to n do
 begin
 ch(a,b,a[i,j],i,j,tem);
 end;
 end;
 j:=b.mas[1];
 for i := 1 to tem do
 begin
 if b.mas[i]>j then j:=b.mas[i];
 end;
writeln(j);
end.

2) Составить стандартную схему программы (ССП) в линейной и графовой форме.

ССП в графовой форме:

ССП в графовой форме

ССП в линейной форме:

 0: start(y, n) goto 1
 1: if P(i,n)=0 goto 2 else goto 6
 2: if P(j,n)=1 goto 3 else goto 4
 3: i=i+1, j=1 goto 1
 4: aij=r(y)+1 goto 5
 5: j=j+1 goto 2
 6: i=1 goto 7
 7: j=1 goto 8
 8: if P(i,n)=0 goto 9 else goto 19
 9: if P(j,n)=1 goto 10 else goto 11
 10: i=i+1 goto 8
 11: if P(k,n)=1 goto 12 else goto 13
 12: j=j+1 goto 9
 13: if P(k,n)=1 goto 14 else goto 15
 14: k=k+1 goto 11
 15: if F(aij, akt, i, j, k, t, b)=0 goto 16 else goto 17
 16: t=t+1 goto 13
 17: m=m+1 goto 18
 18: bk=aij goto 16
 19: j=b1 goto 20
 20: if P(i,m)=0 goto 21 else goto 24
 21: if P(bi,j)=0 goto 22 else 23
 22: i=i+1 goto 20
 23: j=bi goto 22
 24: stop(j)
3) Указать интерпретацию ССП и представить протокол выполнения программы.
Рассмотрим интерпретацию ССП S:
  • Область интерпретации D ⊆ N - подмножество множества натуральных (целых неотрицательных) чисел.
  • I(aij) – матрица nxn. I(i)=1, I(j)=1, I(y)=9, I(k)=1, I(t)=1;
  • I(P(x,y)) – функция проверки окончания цикла. Если x>y, то P(x,y)=T, иначе F.
  • I(r(y)) – функция возвращающая случайное число в диапазоне от 0 до y.
  • I(F(a, b, i, j, k, t)) – функция возвращает значение T, если: (a=b) и (i<>k) или (j<>t).

Протокол выполнения программы (S, I) конечен.

Похожие статьи:

Не нашли то, что Вам нужно?.. Найдите ответ на форуме!
Категория: Теория вычислительных процессов | Добавил: admin (07.05.2011)
Просмотров: 2718 | Теги: задача, твп
Сообщество
Помощь
Форма входа
Поиск

Студенческий помощник по информатике © 2024
При цитировании материалов данного сайта, обязательна ссылка на источник: ITstudents.ru



>