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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.11.2012, 02:06   #1
3Doleg
Пользователь
 
Регистрация: 03.10.2012
Сообщений: 67
Смущение Одномерные массивы. Написать процедуру поиска минимального элемента

Даны три одномерные массивы.Составить программу формирования одномерного вектора D, элементами которого являются отличные от нуля минимальные элементы по модулю заданных массивов.Поиск минимального элемента в абсолютном значение выполнить в процедуре.

Код Pascal
Код:
program a2;
uses crt;
const n = 100;
var a, b, c: array[1..n] of integer;
  i, j, k, ddd: integer;
  d: array[1..n] of integer;
  min: real;

procedure vek(h, g, f, dd: integer);
var n1: integer; begin
  min := 1000;
  for n1 := 1 to n do
    if (a[h] < min) and (a[h] <> 0) and (b[g] < min) and (b[g] <> 0) and (c[f] < min) and (c[f] <> 0) then min := d[dd];
end;

begin clrscr;
  writeln('vvedite dluny massuvy A: ');
  read(a[i]);
  writeln('vvedite dluny massuvy B: ');
  read(b[j]);
  writeln('vvedite dluny massuvy C: ');
  read(c[k]);
  for i := 1 to n do
    for j := 1 to n do
      for k := 1 to n do
      begin
        a[i] := random(10);
        b[j] := random(10);
        c[k] := random(10);
        write('a[i]');
        read(a[i]);
        write('b[j]');
        read(b[j]);
        write('c[k]');
        read(c[k]);
      end;
  for i := 1 to n do
    for j := 1 to n do
      for k := 1 to n do
      begin
        vek(i, j, k, ddd); d[ddd] := min;
        writeln('sformirovanui massuv D', d[ddd]: 8: 4)
      end
end.
Заранее спасибо)

___________
1) Название темы должно адекватно отражать суть решаемой задачи/проблемы.
На первый раз я исправил.

2) Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)

Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 13.11.2012 в 09:03.
3Doleg вне форума Ответить с цитированием
Старый 13.11.2012, 09:18   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

всё не так...
во-первых, длины массивов Вы вводите вообще не правильно! (нужно добавить три переменные и считывать длину массивов в отдельные переменные)

во-вторых, заполнение массивов - это кошмар! Зачем.. нет, вот так ЗАЧЕМ вы их вводите во вложенных циклах?!!!!!
нужно так:
Код:
  writeln('vvedite dluny massuvy A: ');
  readln(LenA);
  for i := 1 to LenA do
     a[i] := random(101) - 50; { заполним случайными числами от -50 до 50 }

  writeln('vvedite dluny massuvy B: ');
  readln(LenB);
  for i := 1 to LenB do
     b[i] := random(101) - 50; { заполним случайными числами от -50 до 50 }
ну и процедура поиска минимального тоже никуда не годится...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одномерные массивы. Определить значение последнего нечетного элемента массива BCxTIM Помощь студентам 5 13.11.2011 12:25
Паскаль, массивы, поиск минимального элемента isJoga Помощь студентам 4 09.06.2010 17:35
Написать подпрограмму-процедуру поиска максимального элемента в массиве Noxil Паскаль, Turbo Pascal, PascalABC.NET 3 27.11.2008 21:39