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

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Меню в Паскале (http://www.tehnari.ru/f41/t96628/)

SunHab 28.05.2014 15:06

Меню в Паскале
 
Добрый день! Нужна помощь в создании меню в данной программе
Код:

const
 size_row = 10; { число строк }
 size_col = 10; { число столбцов }

type
 tvector = array[1 .. size_col] of integer;
 tmatrix = array[1 .. size_row] of tvector;

var
 mx: tmatrix;
 n,m, i, j: integer;  s:integer;


procedure swap_rows(var mx: tmatrix;
        const i, j: integer);
 var T: tvector;
 begin
  T := mx[i]; mx[i] := mx[j]; mx[j] := T
 end;

procedure print(var mx: tmatrix);
 var i, j: integer;
 begin
  for i := 1 to n do
    begin
      for j := 1 to m do
        write(mx[i][j]:4);
      writeln
    end;
 end;

function har(mx:tmatrix; i:integer):integer;
 var j: integer; s:integer;
 begin
  s:=0;
  for j  := 1 to m do  begin
    if (mx[i,j]<0) and (not (odd(mx[i][j]))) then inc(s,mx[i,j]);
  end;
  har:=s;
 end;



begin
 s:=0;
 writeln('введите n,m ... ');
 readln(n,m);
 { Заполнение матрицы }
 for i := 1 to n do
  for j := 1 to m do begin
    write('a[',i,',',j,']=');
    readln(mx[i][j])
  end;
 {Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент.}
  for i:=1 to n do begin
  for j:=1 to m do begin
    if  (mx[i,j]=0) and (s=0) then s:=j;
  end
  end;
  if s<>0 then  writeln('s=',s) else writeln('Not Found!');


 { Матрица до обмена }
 writeln('before:'); print(mx);
 writeln('------------------------------------');
 for i:=1 to n-1 do
  for j:=i+1 to n do  if har(mx,i)<har(mx,j) then  swap_rows(mx, i, j);
 { Матрица после обмена }
 writeln('after:'); print(mx);
 readln;
end.

Сама задача звучит так:
В одномерном массиве, состоящем из п вещественных элементов, вычислить:
1. Количество элементов массива, больших С.
2. Произведение элементов массива, расположенных после максимального по модулю элемента.
Преобразовать массив таким образом, чтобы сначала располагались все отрицательные элементы, а потом — все положительные (элементы, равные нулю, считать положительными).

Заранее спасибо!


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

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