@Odor

Поможете написать алгоритм?

Дано четырехзначное число. Верно ли, что цифр в нем расположены по убыванию? Например, 4311 - нет, 4321 - да, 5542 - нет, 5631 - нет, 9871 - да.
  • Вопрос задан
  • 472 просмотра
Решения вопроса 1
@Vitsliputsli
program Test;
uses crt;

var
  i,len : integer;
  str : string[11];
  result : string[5];
begin
  write('Input string: ');
  readln(str);
  len:=length(str);
  result:='false';
  if (len>1) and (len<=10) then begin
    i:=1;  
    while (str[i+1]<str[i]) and (i<len) do begin
      //write(str[i+1]);
      inc(i);
    end; 
    if (i=len) then begin
       result:='true';
    end;
  end;
  writeln(result);
end.

Мне казалось что язык мертвый...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Psixodelik
@Psixodelik
Преподаватель на Hexlet
1. Можно с помощью остатка от деления положить каждую цифру в отдельную переменную и просто сравнить 1 и 2, 2 и 3, 3 и 4.

2. Можно перебирать по 2 цифры и смотреть их разность. Если она больше нуля, значит расположены по порядку. Суть примерно такая же, как и в первом способе, просто немного другой подход
Ответ написан
@rebble
ДЛЯ ЯЗЫКА С++

#include
using namespace std;
int main()
{
int a;
cout<<"a=";
cin>>a;
if(((a%100)/10)-(a%10)==1)
{
if(((a/100)%10)-((a%100)/10)==1)
{
if((a/1000)-((a/100)%10)==1)cout<<"Yes.";
}
}
else cout<<"No.";
return 0;
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы