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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2012, 21:08   #1
yarovik
 
Регистрация: 14.11.2012
Сообщений: 4
По умолчанию Нахождение числа, стоящего не на своем месте

В диапазоне убывающих чисел найти число, стоящее не на своем месте (указать номер позиции числа). Программа должна быть написана на Pascal ABC
yarovik вне форума Ответить с цитированием
Старый 14.11.2012, 21:20   #2
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Показывайте, как вводите последовательность
Poma][a вне форума Ответить с цитированием
Старый 15.11.2012, 01:29   #3
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,692
По умолчанию

Код:
program myprog;
const N = 10;
var
   a: array[1..N] of integer;
   i: integer;
begin
   cls;
   randomize;
   for i:=1 to N do
     a[i] := N - i + 1;
   a[random(N)+1] := random(10);
   for i:=1 to N do
     write(a[i],' ');
   writeln;
   for i:=1 to N-1 do
     if a[i] < a[i+1] then
     begin
       writeln('Элемент ',i,' стоит не на своем месте!');
       break;
     end;
   writeln('Конец программы.');
end.
Kostia вне форума Ответить с цитированием
Старый 15.11.2012, 06:22   #4
yarovik
 
Регистрация: 14.11.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Poma][a Посмотреть сообщение
Показывайте, как вводите последовательность
Например:
150 140 120 130 110 (120 стоит не на своем месте, номер позиции 3)
yarovik вне форума Ответить с цитированием
Старый 15.11.2012, 06:23   #5
yarovik
 
Регистрация: 14.11.2012
Сообщений: 4
По умолчанию

Большое спасибо!!!
yarovik вне форума Ответить с цитированием
Старый 15.11.2012, 06:53   #6
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Код:
Например:
150 140 120 130 110 (120 стоит не на своем месте, номер позиции 3)
ой не могу, умора

Kostia, а Вы кое-что в uses забыли
Poma][a вне форума Ответить с цитированием
Старый 15.11.2012, 07:22   #7
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

вариант без
Код:
break;
Код:
i:=1;
while (a[i]>a[i+1]) and (i<n)do
 inc(i);
if i<>n then 
 writeln('Элемент ',i+1,' стоит не на своем месте!');
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 15.11.2012, 11:41   #8
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
150 140 120 130 110 (120 стоит не на своем месте, номер позиции 3)
А че не стотрицать?

Например, тут: 150 140 120 110 130 - приведенный код выдаст ошибку, так как укажет на элемент №4 (110)

UPDATE Имелся в виду код made by Kostia. Mad_Cat совершенно верно поправку внес.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нахождение тангенса числа Alexsandr Общие вопросы C/C++ 6 06.12.2011 19:52
Нахождение числа pi Mixasik Общие вопросы C/C++ 5 30.11.2011 23:25
нахождение цикломатического числа Pavel1992 Общие вопросы C/C++ 1 28.10.2010 18:21
Нахождение хроматического числа Pti44ka Общие вопросы .NET 0 05.05.2010 16:13