Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.10.2012, 21:02   #1
Frank63
 
Регистрация: 07.10.2012
Сообщений: 9
По умолчанию проверка программы

Задание: Используя процедуры и функции из целочисленной матрицы А (n x m) получить вектор, элементами которого будут номера последних отрицательных элементов строк матрицы.
После последнего "end" PascalABC пишет: "ожидался символ "точка с запятой". Найдите, пожалуйста, ошибку в программе.

Код:
Program program;
const nmax=10;
type mas=array[1..nmax] of integer;
     matr=array[1..nmax] of mas;
Procedure InputMas(m:byte; var b:mas);
var j:byte;
begin
  for j:=1 to m do
    read(b[j]);
end;
Procedure InputMatr(n,m:byte; var a:matr);
var i:byte;
begin
  for i:=1 to n do
    InputMas(m,A[i]);
end;
Function Search (m:byte; var b:mas):byte;
var j:byte;
begin
  j:=m;
  while (j>=1) and (b[j]>=0) do
    j:=j-1;
  if j>=1 then Search:=j
  else Search:=0;
end;
Procedure Alg (n,m:byte; var a:matr; var b:mas);
var i:byte;
begin
  for i:=1 to n do
    b[i]:=Search(m,A[i]);
    writeln(b[i]);
end.
Frank63 вне форума Ответить с цитированием
Старый 07.10.2012, 21:29   #2
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

У Вас всё реализовано с помощью процедур и функций - это +
Но у Вас нет тела программы. Где бы Вы смогли вызывать эти процедуры \ функции.
Тоесть вместо '.', в последнем end'е пишете ';', затем пишете тело программы. И будет Вам счастье.
Poma][a вне форума Ответить с цитированием
Старый 07.10.2012, 21:55   #3
Frank63
 
Регистрация: 07.10.2012
Сообщений: 9
По умолчанию

что конкретно писать после точки с запятой?
Frank63 вне форума Ответить с цитированием
Старый 07.10.2012, 22:04   #4
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Код:
type
        TArr = array [1..10000] of Integer;
.........
var
          a : Integer;
          b : TArr;
begin
          Primer (a, b);
          Primer2 (b, a)
end.
Poma][a вне форума Ответить с цитированием
Старый 07.10.2012, 22:33   #5
Frank63
 
Регистрация: 07.10.2012
Сообщений: 9
По умолчанию

какой толк от функций, если все надо писать заново?
Frank63 вне форума Ответить с цитированием
Старый 07.10.2012, 22:40   #6
Frank63
 
Регистрация: 07.10.2012
Сообщений: 9
По умолчанию

Код:
Program program4;
const nmax=10;
type mas=array[1..nmax] of integer;
     matr=array[1..nmax] of mas;
var a: matr;
    n,m: byte;
    b: mas;
    i,j: integer;
Procedure InputMas(m:byte; var b:mas);
var j:byte;
begin
  for j:=1 to m do
    read(b[j]);
end;
Procedure InputMatr(n,m:byte; var a:matr);
var i:byte;
begin
  for i:=1 to n do
    InputMas(m,A[i]);
end;
Function Search (m:byte; var b:mas):byte;
var j:byte;
begin
  j:=m;
  while (j>=1) and (b[j]>=0) do
    j:=j-1;
  if j>=1 then Search:=j
  else Search:=0;
end;
Procedure Alg (n,m:byte; var a:matr; var b:mas);
var i:byte;
begin
  for i:=1 to n do
    b[i]:=Search(m,A[i]);
end;
begin
writeln ('Ââåäèòå êîëè÷åñòâî ñòðîê è ñòîëáöîâ');
readln (n,m);
writeln ('Ââåäèòå ýëåìåíòû ìàòðèöû');
for i:=1 to n do begin
  for j:=1 to m do
    read (a[i][j]);
Alg(b[i]);
writeln('...' , b[i]);
end.
так надо?
Frank63 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка правильности кода программы Petrowa C++ Builder 4 25.11.2015 18:41
проверка программы swat16 Помощь студентам 6 20.04.2012 10:30
проверка программы PradoSV Общие вопросы C/C++ 0 14.12.2009 21:26
Проверка работы программы... DimkinStd Общие вопросы Delphi 3 26.12.2006 13:24