Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Помогите, пожалуйста, написать на языке Pascal, желательно попроще (http://www.tehnari.ru/f41/t82397/)

Natashka 17.12.2012 17:43

Помогите, пожалуйста, написать на языке Pascal, желательно попроще
 
Задание 1
Создать функция, удаляющую из заданной строки все последовательности символов, находящиеся между корректно записанными круглыми скобками, вместе с этими скобками. Скобки могут быть вложенными.
Задание 2
Создать процедуру, формирующую вектор vector2n-1 из максимальных элементов диагоналей целочисленного квадратного массива matrix(nхn) , параллельных его побочной диагонали.

Vladimir_S 17.12.2012 22:38

Да... заковыристые такие задачки. Аж приятно.
Получите:
Код:

Var
 S:String;

Procedure Del_Brackets(S1:String; var S2:String);
Var
 R:String;
 i1,i2,i:Byte;
begin
 R:=S1;
 Repeat
  i:=0;
  repeat
  Inc(i);
  if R[i]='(' then i1:=i;
  until (R[i]=')') or (i=Length(R));
  If R[i]=')' then
  begin
    i2:=i;
    Delete(R,i1,(i2-i1+1));
  end;
 Until (i=Length(R)) and (R[i]<>')');
 S2:=R;
end;

Begin
 Writeln('Enter the string:');
 Readln(S);
 Del_Brackets(S,S);
 Writeln(S);
 Readln;
End.

Код:

Const
 N=10;

Type
 Mtr=Array[1..N,1..N] of Integer;
 Vct=Array[1..2*N-1] of Integer;

Var
 Matrix:Mtr;
 Vector:Vct;
 p,q:byte;

Procedure Calc_Vect(M:Mtr; var V:Vct);
var
 Max:Integer;
 i,j,k:byte;
begin
 k:=0;
 for j:=1 to N do
  begin
  Max:=M[1,j];
  for i:=1 to j do if M[i,j-i+1]>Max then Max:=M[i,j-i+1];
  Inc(k);
  V[k]:=Max;
  end;
 for i:=2 to N do
  begin
  Max:=M[i,N];
  for j:=N downto i do if M[N-j+i,j]>Max then Max:=M[N-j+i,j];
  Inc(k);
  V[k]:=Max;
  end;
end;

Begin
 Randomize;
 For p:=1 to N do
  begin
  For q:=1 to N do
    begin
    Matrix[p,q]:=10-Random(20);
    Write(Matrix[p,q]:4);
    end;
  Writeln;
  end;
 Writeln;
 Calc_Vect(Matrix,Vector);
 For p:=1 to 2*N-1 do Write(Vector[p]:4);
 Readln;
End.



Часовой пояс GMT +4, время: 11:55.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.