Страница 1 из 1

Паскаль, возрастающая последовательность

Добавлено: 17 ноя 2008, 15:30
PRo9
Дано n вещественных чисел. Определить, образуют ли они возрастающую последовательность.

Заранее спасибо

Re: Помогите с задачей на Pascal. Очень Нужно

Добавлено: 18 ноя 2008, 10:57
Naeel Maqsudov
Допустим числа в массиве A[1..N], и N>=2.

Код: Выделить всё

i:=1;
while (i<n) and (a[i]<a[succ(i)]) do inc(i);
if i=n {т.е. если до конца мы таки дошагали}
  then writeln('Массив упорядочен по возрастанию')
  else writeln('Массив неупорядочен. Беспорядки начинаются с элемента ',i);


Re: Помогите с задачей на Pascal. Очень Нужно

Добавлено: 18 ноя 2008, 12:23
PRo9
Спасибо огромное, а если можно полностью задачу написать?

Re: Помогите с задачей на Pascal. Очень Нужно

Добавлено: 19 ноя 2008, 11:49
PRo9
вот написал вроде програмку по твоему коду и чет не очень работает. Поправьте если можете.

program b;
var
a: array [1..n] of string;
i,n: integer;
begin
writeln('vvedite n');
readln(n);
i:=1;
while (i<n) and (a<a[succ(i)]) do inc(i);
if i=n then writeln('massiv uporadochen po vozrastaniy')
else writeln('net',i);
readln;
end.

Re: Помогите с задачей на Pascal. Очень Нужно

Добавлено: 19 ноя 2008, 11:57
Naeel Maqsudov

Код: Выделить всё

var
  i,n:integer;
  a:array[1..100] of real;
begin
  {заполнение массива исходными данными}
  write('Введите N от 2 до 100: '); readln(N);
  for i:=1 to N do begin
    write('Введите ',i,'-й элемент: '); readln(a[i]);
  end;
  {а вот теперь уже будем этот массив ковырять}
  i:=1;
  while (i<n) and (a[i]<a[succ(i)]) do inc(i);
  if i=n {т.е. если до конца мы таки дошагали}
    then writeln('Массив упорядочен по возрастанию')
      else writeln('Массив неупорядочен. Беспорядки начинаются с элемента ',i);
end.

Re: Помогите с задачей на Pascal. Очень Нужно

Добавлено: 19 ноя 2008, 12:29
PRo9
Спасибо работает. Тока как я понял если массив неупорядочен он должен показывать с какого элемента начинается беспорядок, а он просто пишет массив неупорядочен и ставит 1, т.е если даже нет единицы в последовательности он проссто её пишет

Re: Помогите с задачей на Pascal. Очень Нужно

Добавлено: 19 ноя 2008, 13:34
Naeel Maqsudov
Выводится не значение элемента, а порядковый номер элемента, после которого началась задница.

Re: Помогите с задачей на Pascal. Очень Нужно

Добавлено: 19 ноя 2008, 14:08
PRo9
А всё понял. Спасибо