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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2016, 19:41   #1
Panther123
Новичок
Джуниор
 
Регистрация: 14.06.2016
Сообщений: 1
По умолчанию Найти количество чисел, цифры в которых образуют убывающую последовательность

Срочно нужна помощь с программой на паскале! Нужно в заданной последовательности найти количество чисел, которые обладают заданным свойством, а именно: цифры в числе образуют убывающую последовательность. Числа вводятся с клавиатуры, их количество заранее неизвестно, количество цифр в каждом числе тоже неизвестно. Программа должна выглядеть примерно так, но с другим условием:
function Q(x: integer): boolean;
var
c, c1, x1: integer;
begin
Q := false;
while x > 10 do
begin
c := x mod 10;
x1 := x div 10;
while x1 > 0 do
begin
c1 := x1 mod 10;
if c = c1 then Q := true;
x1 := x1 div 10;
end;
x := x div 10;
end;
end;
var
n, k: integer;
begin
repeat
readln(n);
if Q(n) then inc(k);
until n = 0;
if k = 0 then writeln('таких чисел нет') else writeln('k=', k);
end.
Помогите, пожалуйста, написать такую функцию, которая проверяла бы, образуют ли цифры в числе убывающую последовательность! Не для себя прошу, меня попросили помочь с программой, но у меня никак не получается! Помогите, пожалуйста, кто может! Заранее спасибо!!!
Panther123 вне форума Ответить с цитированием
Старый 15.06.2016, 00:02   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

попробуйте такую функцию:
Код:
function IsDescending(x: integer): boolean;
 var prevDigit: integer;
 begin
    IsDescending := false;
    prevDigit := -1;
    x:=abs(x);
    while x > 0 do begin
      if (x mod 10)<= prevDigit then Exit;
      prevDigit := x mod 10;
      x := x div 10;
    end;
    IsDescending := true;
 end;
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
найти номера строк,элементы которых образуют монотонную последовательность Adam77 Помощь студентам 0 12.03.2016 21:20
Дан двумерный массив нужно найти номера строк, элементы которых образуют убывающую с++ yurda Помощь студентам 0 24.05.2015 18:38
Программирование в С++(Задана матрица целых чисел.Найти номера строк,элементы которых образуют монотонную последовательность) Disite Помощь студентам 5 25.03.2014 20:33
Задана последовательность чисел в формате:сначала количество цифр в числе, потом - цифры числа. Подсчитать количество. Arn1 Помощь студентам 4 03.10.2011 20:03