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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.04.2010, 04:05   #1
бургер
Пользователь
 
Регистрация: 26.04.2010
Сообщений: 18
По умолчанию Использование подпрограмм

Дан вектор А[1:30]. Если в векторе есть одинаковые элементы, то из положительных элементов матрицы, умноженных на Amin сформировать матрицу B[1:4,1:4], дополнив недостающие элементы элементом Amax . Иначе вектор упорядочить по возрастанию и сформировать из него матрицу C[1:5,1:6]. ---- эт как? можете можете написать??? Буду признателен
бургер вне форума Ответить с цитированием
Старый 27.04.2010, 07:12   #2
Филантроп
Форумчанин
 
Аватар для Филантроп
 
Регистрация: 12.04.2010
Сообщений: 134
По умолчанию

Код:
type Tv=array[1..30] of integer;
var  a:Tv;
b:array[1..4,1..4] of integer;
c:array[1..5,1..6] of integer;
max,min:integer;
t:boolean;
i1,j1,k:integer;
function find_max(x:Tv):integer;
 var i:integer;
   m:integer;
 begin
m:=x[1];
 for i:=2 to 30 do
  if x[i]>m then m:=x[i];
  find_max:=m;
end;

function find_min(x:Tv):integer;
 var i:integer;
   m:integer;
 begin
m:=x[1];
 for i:=2 to 30 do
  if x[i]<m then m:=x[i];
  find_min:=m;
end;

function odin(x:Tv):boolean;
 var i,j:integer;
   m:boolean;
 begin
m:=true;
 for i:=1 to 29 do begin
 for j:=i+1 to 30 do
  if x[i]=x[j]then begin m:=false;break;end;
  if not m then break;end;
  odin:=m;
end;

procedure Sort(var Arr : Tv);
var
    I   :   Integer;
    J   :   Integer;
    Tmp :   integer;
begin
    for i:=1 to 30 do
        for j:=1 to 29-i do
            if Arr[j]>=Arr[j+1] then
            begin
                Tmp:=Arr[j];
                Arr[j]:=Arr[j+1];
                Arr[j+1]:=Tmp;
            end;
end;

 begin
randomize;
writeln('=======BeKTOP====');
for i1:=1 to 30 do
begin
a[i1]:=random(31)-15;
write(a[i1]:5);
end;
t:=odin(a);
min:=find_min(a);
max:=find_max(a);
writeln;
writeln('max=',max);
writeln('min=',min);

if not t then begin
sort(a);
k:=1;
for i1:=1 to 5 do begin
for j1:=1 to 6 do
begin
c[i1,j1]:=a[k];
k:=k+1;
write(c[i1,j1]:4);
end;
writeln;
end;
end
else 
begin

k:=1;
i1:=1;j1:=1;
while i1<=4 do begin
  if k<=30 then begin
    if a[k]>0 then begin
      if j1 = 5 then begin inc(i1);j1:=1;end;
      b[i1,j1]:=a[k]*min;
      inc(j1);
    end;
   inc(k);end
else
 begin
if j1 = 5 then inc(i1);j1:=1;end;
b[i1,j1]:=max;
inc(j1);
end;
for i1:=1 to 4 do begin
for j1:=1 to 4 do
write(b[i1,j1]:4);
writeln;
end
end;

readln;
end.
кому нужна помощь! жду в аське и скайпе!
Филантроп вне форума Ответить с цитированием
Старый 27.04.2010, 14:39   #3
бургер
Пользователь
 
Регистрация: 26.04.2010
Сообщений: 18
По умолчанию

Филантроп, ошибку выдает
бургер вне форума Ответить с цитированием
Старый 27.04.2010, 14:58   #4
Филантроп
Форумчанин
 
Аватар для Филантроп
 
Регистрация: 12.04.2010
Сообщений: 134
По умолчанию

Паскаль Abc---все работает!
delphi10 --аналогично!
Turbo Pascal 7.1---аналогично с остальными!
delphi7--тоже работает!
Цитата:
борланд паскаль - не работает, ошибка
может просто руки кривоваты?
ctrl+с и ctrl+v нормально нажать не могут?
кому нужна помощь! жду в аське и скайпе!

Последний раз редактировалось Филантроп; 27.04.2010 в 16:03.
Филантроп вне форума Ответить с цитированием
Старый 27.04.2010, 15:48   #5
бургер
Пользователь
 
Регистрация: 26.04.2010
Сообщений: 18
По умолчанию

борланд паскаль - не работает, ошибка
бургер вне форума Ответить с цитированием
Старый 29.04.2010, 04:21   #6
бургер
Пользователь
 
Регистрация: 26.04.2010
Сообщений: 18
По умолчанию

вылетает в середину экрана табличка с ошибкой!
бургер вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование подпрограмм inferno fm Общие вопросы Delphi 2 19.09.2009 18:37
Решить задачу с помощью подпрограмм Fonarik Помощь студентам 1 07.11.2008 22:30