Методические указания по выполнению лабораторных работ по курсу "Эксплуатация и обслуживание ГКМ", страница 13

3.2 КОНТРОЛЬНАЯ РАБОТА №2

Описание типичных алгоритмов и приемов программирования, необходимых для решения контрольной работы 2 подробно дано в лекционном материале, поэтому ниже рассмотрены примеры описания программ.

Вариант № 1

1. Составить программу вычисления суммы:

.

1   

programlab1;

2   

uses crt;

3   

const n=3;

4   

type mas1=array[1..n]of string;

5   

     mas2=array[1..n]of integer;

6   

var x:mas1;a:mas2;

7   

i:byte;

8   

procedure sort(var x:mas1;var a:mas2);

9   

var i,j,f:byte;

10   

s:string;

11   

begin

12   

   for i:=1 to n-1 do

13   

     for j:=i+1 to n do

14   

     if a[i]>a[j] then

15   

     begin

16   

      f:=a[i];

17   

      a[i]:=a[j];

18   

      a[j]:=f;

19   

      s:=x[i];

20   

      x[i]:=x[j];

21   

      x[j]:=s;

22   

     end;

23   

end;

24   

begin

25   

     for i:=1 to n do

26   

     begin

27   

       write('x',i,'=');

28   

       readln(x[i]);

29   

       a[i]:=length(x[i]);

30   

     end;

31   

     sort(x,a);

32   

     for i:=1 to n do

33   

     writeln(x[i]);

34   

readln

35   

end.

2. Составить программу определения наименьшего количества слагаемых вида:                , сумма которых превосходит заданное число z.

1   

programlab2;

2   

uses crt;

3   

var a:array[1..3,1..3]of integer;

4   

s,j,i:integer;

5   

begin

6   

 s:=0;

7   

 randomize;

8   

 for i:=1 to 3 do

9   

 begin

10   

 for j:=1 to 3 do

11   

 begin

12   

 a[i,j]:=random(10)-5;

13   

 write(a[i,j],' ');

14   

 end;

15   

 writeln;

16   

 end;

17   

 for i:=1 to 3 do

18   

 for j:=1 to 3 do

19   

 begin

20   

 if (i=j)and(a[i,j]>0)then

21   

 s:=s+a[i,j];

22   

 end;

23   

 writeln(s);

24   

readln

25   

end.