Дано натуральное число n (n ≤ 9999). Верно ли, что это число содержит ровно три одинаковые цифры, как, например, числа 6676, 4544, 0006 и т.д.? — Pascal(Паскаль)

var
a:array[1..4]of integer;
n:integer;
i,f,c,j,k:integer;
begin
readln(n);
repeat
inc(k);
a[k]:=n mod 10;
n:=n div 10;
until k=4;
for i:=1 to k do
begin
c:=0;
for j:=1 to k do
if a[i]=a[j] then inc(c);
if c=3 then f:=1;
end;
if f=1 then writeln('yes')else writeln('no');
readln;
end.

Следующий вариант

var n:integer;
    a,b,c,d:byte;
 
begin
  readln(n);
  a:=n div 1000;
  b:=(n-1000*a) div 100;
  c:=(n-1000*a-100*b) div 10;
  d:=n mod 10;
  if ((a=b) and (b=c)) xor ((a=c) and (c=d)) xor ((a=b) and (b=d)) xor ((b=c) and (c=d)) then
    writeln('Верно');
  else
    writeln('Неверно');
end.

Следующий вариант

program test;
   var
      i : longint;
begin
    writeln('Введите');
    readln(i);
    if ((100<i) and (i<1000) or (-99>i) and (i>-1000)) then 
                            begin
                            if((i div 100)=((i div 10) mod 10)) and (((i div 10) mod 10)=(i mod 10)) then writeln('Числа одинаковы')
                            else writeln('числа разные'); 
                            end
    else writeln('какое-то левое число');
    readln;
end.

Leave a Comment

78 − = 72