Напишите программу, которая определяет, верно ли, что введённое число состоит из...

0 голосов
194 просмотров

Напишите программу, которая определяет, верно ли, что введённое число состоит из одинаковых цифр. (ABC pascal)


Информатика (196 баллов) | 194 просмотров
Дано ответов: 2
0 голосов

Var x,x1,k,s:integer; d:real;
begin 
  readln(x); 
  k:=0; s:=0; 
  while x>0 do
  begin
  x1:=x mod 10; 
  k:=k+1; 
  s:=s+x1; 
  x:=x div 10;
  end; 
  d:=s/k; 
  if d=x1 then writeln('Верно') 
  else writeln('Неверно');
end.
x-вводимое число, x1-каждая цифра, k-кол-во цифр, s-сумма цифр, d-среднее арифметическое цифр

(991 баллов)
0

То, что среднее арифметическое всех цифр равно первой цифре, еще не гарантирует, что все цифры одинаковы. Например, при x=435 программа выводит "верно"

0

Признаю ошибку. Но я исправил программу.

0

var x,x1,d:integer;
begin
readln(x);
d:=x mod 10;
while x>0 do
begin
x1:=x mod 10;
if d=x1 then x:=x div 10
else x:=-1
end;
if x=-1 then writeln('Неверно')
else writeln('Верно');
end.

0 голосов

Var number:integer;
    digit:integer;
    res:boolean;
begin
  readln(number);
  digit:=number mod 10;
  number:=number div 10;
  res:=true;
  while number>0 do begin
    if digit<>number mod 10 then begin
      res:=false;
      break;
    end;
    number:=number div 10;
  end;
  if res then writeln('Верно') else writeln('Неверно');
end.

(3.2k баллов)