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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.04.2009, 09:50   #1
pavel42
Пользователь
 
Регистрация: 06.04.2009
Сообщений: 95
По умолчанию из Обычного в Процеду

помогите из обычного переделать в процедурное

Код:
uses crt;
var
s,min,imin,n,m,i,j,sum,x:integer;
a:array[1..50,1..50] of integer;
begin
clrscr;
randomize;
write('koli4estvo strok n=');
readln(n);
write('koli4estvo stolbov m=');
readln(m);
writeln('Matrica:');
for i:=1 to n do
 begin
  for j:=1 to m do
    begin
     a[i,j]:=random(10);
     write(a[i,j]:3);
    end;
  writeln;
 end;
min:=a[1,1]; imin:=1;
for i:=1 to n do
for j:=1 to n do
if a[i,j]<min then
   begin
     min:=a[i,j];
     imin:=i;
   end;
writeln('Min=',min,'  stroka=',imin);
s:=0;
for j:=1 to m do
s:=s+a[imin,j];
writeln('summa',s);
readln
end.
вот условие задачи
найти Сумму чисел строки, содержащей минимальный элемент
pavel42 вне форума Ответить с цитированием
Старый 26.04.2009, 11:52   #2
Juffin
Форумчянин
Форумчанин
 
Аватар для Juffin
 
Регистрация: 05.04.2009
Сообщений: 446
По умолчанию

чет я не очень понял, что надо, сделать программу с использованием процедур?
Nobody expects Spanish Inquisition!
Juffin вне форума Ответить с цитированием
Старый 26.04.2009, 12:04   #3
pavel42
Пользователь
 
Регистрация: 06.04.2009
Сообщений: 95
По умолчанию

ага, эта прога правильная, но нужно её в процедурном.

1. Процедура ввод матрицы.
2. Процедура поиск строки с минимумом.
3. Процедура сумма в строке с минимумом.

я думаю такие процедуры будут, но делаю и прога не работает
pavel42 вне форума Ответить с цитированием
Старый 26.04.2009, 21:35   #4
Gongled
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 78
По умолчанию

Мой вариант.
Код:
program pr;
uses CRT;
const
z = 50;
type
TMass = array[1..z,1..z] of integer;

var
i, j, min, imin, n, m, sum : integer;
a : TMass;

{ Процедура ввода }
procedure read_quantity(var ThisArray : TMass; var Rows, Cols : integer);
begin

write('Number cols: ');
read(Cols);
write('Number rows: ');
read(Rows);
writeln('Matrix:');

for i:=1 to Rows do
begin
     for j:=1 to Cols do
     begin
         ThisArray[i,j] := random(10);
         write(ThisArray[i,j]:3);
     end;
writeln;
end;

end;

{Процедура поиска минимального элемента и его номера строки}
procedure min_search(ThisArray : TMass; Rows, Cols : integer; var minElement, minPosition : integer);
begin
     minElement := ThisArray[1,1];
     minPosition := 1;

     for i:=1 to Rows do
         for j:=1 to Cols do
             if ThisArray[i,j] < minElement then
             begin
                  minElement := ThisArray[i,j];
                  minPosition := i;
             end;
     writeln('Minimum: ',minElement,'  Line: ',minPosition);
end;

{Процедура нахождения суммы элементов}
procedure sum_numbers(ThisArray : TMass; minPosition, Rows : integer; var sumElement : integer);
begin
     sumElement := 0;
     
     for j:=1 to Rows do
     sumElement := sumElement + ThisArray[minPosition,j];
     
     writeln('Sum: ',sumElement);
end;

begin
clrscr;
randomize;

read_quantity(a, n, m);
min_search(a, n, m, min, imin);
sum_numbers(a, imin, n, sum);

end.
Пишу глупости.
Gongled вне форума Ответить с цитированием
Старый 27.04.2009, 16:01   #5
pavel42
Пользователь
 
Регистрация: 06.04.2009
Сообщений: 95
По умолчанию

Почему то после того как ввожу количество столбцов вылетает, ошибки никакой не пишет
pavel42 вне форума Ответить с цитированием
Старый 27.04.2009, 16:33   #6
pavel42
Пользователь
 
Регистрация: 06.04.2009
Сообщений: 95
По умолчанию

все исправил, все работает. спс )))
pavel42 вне форума Ответить с цитированием
Ответ


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