Помогите написать алгоритм. Pascal

Ответить
PRo9
Сообщения: 17
Зарегистрирован: 17 ноя 2008, 15:24

17 ноя 2008, 15:39

Дана последовательность неотрицательных чисел последнее из которых равно нулю: причём других равных нулю чисел в последовательности нет. Найти последнее число, большее десяти, в этой последовательности. Если таких чисел нет напечатать ноль.

Заранее спасибо
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

18 ноя 2008, 11:08

Т.е. будем считать что есть массив A[1..N], но последовательность завершается нулем где-то в середине. И надо последнее число > 10, предшествующее этому нулю. Можно сделать в 1 проход.

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

i:=1; idx10=-1;
while (i<=N) and (a[i]<>0) do begin {просматриваем до нуля или до конца}
  if a[i]>10 then idx10=i; {если >10, то запоминаем где оно}
  inc(i);
end;
if i>N 
  then writeln('не встерился 0') 
  else
    if idx10=-1 
      then writeln('не нашлось чисел > 10')
      else writeln('последнее число >10 (',a[idx10],') найдено в позиции ',idx10);
airyashov
Сообщения: 416
Зарегистрирован: 02 ноя 2007, 10:31

18 ноя 2008, 11:52

условие: только до нуля
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

18 ноя 2008, 11:57

да не вопрос! :)

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

i:=1; idx10=-1;
while (a[i]<>0) do begin {просматриваем до нуля}
  if a[i]>10 then idx10=i; {если >10, то запоминаем где оно}
  inc(i);
end;
if idx10=-1 
  then writeln('не нашлось чисел > 10')
  else writeln('последнее число >10 (',a[idx10],') найдено в позиции ',idx10);
Но в этом случае ноль должен быть гарантирован.
PRo9
Сообщения: 17
Зарегистрирован: 17 ноя 2008, 15:24

18 ноя 2008, 12:27

Ммм спасибо огромное. тока мне надо блок-схему. Я наверно неправильно выразился в названии темы
Asex
Сообщения: 0
Зарегистрирован: 23 мар 2014, 18:23

23 мар 2014, 18:44

Друг показал мне свою лабораторную, блок-схему я сделал а вот написать в паскале не могу. Можете помочь ? Та м 6 и 20 номер
[img][IMG]http://s018.radikal.ru/i510/1403/01/6ebd5daee196t.jpg[/img][/IMG]
Asex
Сообщения: 0
Зарегистрирован: 23 мар 2014, 18:23

23 мар 2014, 18:50

[img][IMG]http://s018.radikal.ru/i510/1403/01/6ebd5daee196t.jpg[/img][/IMG]

Помогите пожалуйста с написанием 6 и 20 номеров в pascal
Ответить