Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [паскаль]массив


Автор: niqo 18.4.2009, 23:26
Помогите написать простейшую прогу на паскале с массивами.я просто совсем не шарю паскаль.
а практическую надо сдать:)
суть задачи:
С элементов массива F(12) создать массив D(12) ,элементы которого упорядочить по увеличению значений. В массиве,что упорядочили, найти минимальный отрицательное значение и его координаты. 
в итоге должно вывести : заданный и массив, который упорядочили,  минимальный отрицательный элемент и его координаты.
Понимаю,что это простейшая задача, но повторяю - я совсем не шарю этот язык программирования.

Автор: TrЭin3e 19.4.2009, 11:46
Цитата(niqo @  18.4.2009,  23:26 Найти цитируемый пост)
С элементов массива F(12) создать массив D(12) ,элементы которого упорядочить по увеличению значений

а нельзя ли просто отсортировать исходный массив без создания нового. И еще
Цитата(niqo @  18.4.2009,  23:26 Найти цитируемый пост)
найти минимальный отрицательное значение и его координаты

а если в массиве нет отрицательных элементов, что делать тогда? и минимальное по модулю?
Код

program P1;
var A: array [1..12] of integer;
    i, j, k: integer;
begin
//если элементы вводятся пользователем
  for i := 1 to 12 do
  begin
    write('Vvedite ', i, ' element massiva:  ');
    readln(A[i]);
//или задаются рандомно компьютером
    randomize;
    A[i] := random(100) - 50;//от -50 до 50
  end;
  for i := 1 to 12 do
    write(A[i], '  ');
  for j := 1 to 11 do
    for i := 1 to n-j do
      if A[i] > A[i+1] then
      begin
        k := A[i];
        A[i] := A[i+1];
        A[i+1] := k;
      end;
//уже упорядоченный массив
  for i := 1 to 12 do
    write(A[i], '  ');
//минимальное - т.е. самое большое по модулю отрицательное значение
  if A[1] < 0 then writeln('минимальное отрицательное значение: ', A[1], ' и его индекс: 1');
end.

Здесь используется всего один(!) массив

Автор: niqo 19.4.2009, 12:01
та ладно.спасибо и на этомsmileоч помог

п.с.я бы уже нажал "+",но не могу - меньше 100 постов:(

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)