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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.10.2010, 17:15   #1
логарифм
ололо
Пользователь
 
Аватар для логарифм
 
Регистрация: 05.04.2009
Сообщений: 28
Печаль Модуль с процедурами (Паскаль)

1. Подсчитать сумму элементов в данном прямоугольном массиве (размерность которого задается с клавиатуры), а элементами которого являются все целые числа.
2. Найти максимальный элемент в каждой строке и записать их в новый массив.
Оба задания нужно сделать через процедуры и включить в модуль, дабы получилась одна программа.
Код:
program peacedeath;
interface
type
MyArray=array[1..10,1..15] of integer;
Procedure InsertMas1(Var X : MyArray; n, m: integer);
Procedure PrintMas(X : MyArray; n, m: integer);
Procedure Summa(A : MyArray; n, m: integer; Var S: real);
Procedure Maximum(X : MyArray; n, m : integer; Var Max, Maxi : integer);


implementation

Procedure InsertMas1(Var X : MyArray; n, m: integer);
var
  i,j:integer;
begin
  writeln('x:');
  readln(x);
  writeln('y:');
  readln(y);
     for i:=1 to x do begin
       for j:=1 to y do begin
readln(a[i ,j]);
 end;
end;
end;

Procedure PrintMas(X : MyArray; n, m: integer);
Var
  i, j : integer;
Begin
  for i := 1 to n do 
    begin
      for j := 1 to m do
        write(X[i, j]:5); 
      writeln; 
    end;
End;

Procedure Summa(A : MyArray; n, m: integer; Var S: real);
Var
  i, j : integer;

Begin
  S:= 0;
  for i := 1 to n do
    for j := 1 to m do
      S := S+A[i,j];
End;

Procedure Maximum(X : MyArray; n, m : integer; Var Max, Maxi : integer);
Var
  i: integer;
Begin
  Max := X[1]; 
  Maxi := 1; 
    for i := 1 to n do
        if X[i] > Max 
          then
            begin
              Max := X[i];
              Maxi := i; 
           end;
End;
begin
end.
From Stilet: Неужели так трудно пост оформить читабельно?

Ошибка получается : 12.pas(2,10) Fatal: Syntax error, "BEGIN" expected but "INTERFACE" found
12.pas(0) Fatal: Compilation aborted
Не понимаю, в чем причина( все же вроде нормально, но вот еще - может стоит сделать еще одну процедуру вывода?
Лучше пытаться поймать журавля в небе, чем довольствоваться синицей в руках.

Последний раз редактировалось Stilet; 29.10.2010 в 18:40.
логарифм вне форума Ответить с цитированием
Старый 29.10.2010, 17:51   #2
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

интерфейс удалите

удаляйте имплементейшн тоже, да и по коду у вас много ошибок

Цитата:
for i:=1 to x do begin
что это значит? как можно в цикл воткнуть массив

Цитата:
readln(x);
как можно прочитать строку в массив интегер
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]

Последний раз редактировалось Stilet; 29.10.2010 в 18:41.
RUSt88 вне форума Ответить с цитированием
Старый 29.10.2010, 17:53   #3
логарифм
ололо
Пользователь
 
Аватар для логарифм
 
Регистрация: 05.04.2009
Сообщений: 28
По умолчанию

Код:
program peacedeath;

type
MyArray=array[1..100,1..100] of integer;
Procedure InsertMas1(Var X : MyArray; n, m: integer);
Procedure PrintMas(X : MyArray; n, m: integer);
Procedure Summa(A : MyArray; n, m: integer; Var S: real);
Procedure Maximum(X : MyArray; n, m : integer; Var Max, Maxi : integer);

Procedure InsertMas1(Var X : MyArray; n, m: integer);
Var
  i, j : integer;
Begin
  Randomize;
  for i := 1 to n do
    for j := 1 to m do
      X[i, j]:= Random(50);
End;

Procedure PrintMas(X : MyArray; n, m: integer);
Var
  i, j : integer;
Begin
  for i := 1 to n do
    begin
      for j := 1 to m do
        write(X[i, j]:5);
      writeln;
    end;
End;

Procedure Summa(A : MyArray; n, m: integer; Var S: real);
Var
  i, j : integer;

Begin
  S:= 0;
  for i := 1 to n do
    for j := 1 to m do
      S := S+A[i,j];
End;

Procedure Maximum(X : MyArray; n, m : integer; Var Max, Maxi : integer);
Var
  i: integer;
Begin
  Max := X[1];
  Maxi := 1;
    for i := 1 to n do
        if X[i] > Max
          then
            begin
              Max := X[i];
              Maxi := i;
           end;
End;
begin
end.

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

Последний раз редактировалось Stilet; 29.10.2010 в 18:42.
логарифм вне форума Ответить с цитированием
Старый 29.10.2010, 17:58   #4
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

Цитата:
peacedeath
оригинальное название, поржал :DD
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]
RUSt88 вне форума Ответить с цитированием
Старый 29.10.2010, 18:03   #5
логарифм
ололо
Пользователь
 
Аватар для логарифм
 
Регистрация: 05.04.2009
Сообщений: 28
По умолчанию

ну название соответствующее)
Лучше пытаться поймать журавля в небе, чем довольствоваться синицей в руках.
логарифм вне форума Ответить с цитированием
Старый 29.10.2010, 18:08   #6
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

тут переписывать уеву тучу, вам надо основы подучить

Цитата:
MyArray=array[1..100,1..100] of integer;
это у вас матрица, а вы пчму-то рассматриваете его как одномерный массив
Цитата:
Max := X[1];
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]

Последний раз редактировалось Stilet; 29.10.2010 в 18:43.
RUSt88 вне форума Ответить с цитированием
Старый 29.10.2010, 18:11   #7
логарифм
ололо
Пользователь
 
Аватар для логарифм
 
Регистрация: 05.04.2009
Сообщений: 28
По умолчанию

было бы очень нежелательно много времени терять
Лучше пытаться поймать журавля в небе, чем довольствоваться синицей в руках.
логарифм вне форума Ответить с цитированием
Старый 29.10.2010, 18:12   #8
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

не хочется тратить время - могу помочь вам, пишите в асю
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]
RUSt88 вне форума Ответить с цитированием
Старый 29.10.2010, 18:21   #9
логарифм
ололо
Пользователь
 
Аватар для логарифм
 
Регистрация: 05.04.2009
Сообщений: 28
По умолчанию

но значит нужно проставить там координаты еще и столбцов, так? У меня нет аськи)

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

Последний раз редактировалось Stilet; 29.10.2010 в 18:44.
логарифм вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
паскаль, модуль Ам тя Помощь студентам 2 19.05.2010 17:31
Паскаль. Программа + Модуль. Branbal Помощь студентам 6 16.12.2009 00:19
Ошибка в программе с процедурами. Паскаль rooman90 Помощь студентам 1 03.04.2009 00:37