Предмет: Информатика, автор: needsupport6578

Нужна ваша помощь. Необходимо написать программу в PascalABC и лучше с объяснениями. Сам не понимаю.
Дано натуральное число. Верно ли, что в данном числе нет данной цифры А (цифру А вводить с клавиатуры)

Ответы

Автор ответа: Аноним
0
1. PascalABC.NET 3.2

begin
  var s:=ReadlnString('Введите натуральное число:');
  var c:=ReadlnChar('Введите цифру для поиска:');
  if Pos(c,s)>0 then Writeln('Такая цифра есть')
  else Writeln('Такой цифры нет')
end.

2. PascalABC.NET любой версии, Free Pascal и т.д. на строках

var
  s:string;
  c:char;
begin
  Write('Введите натуральное число: '); Readln(s);
  Write('Введите цифру для поиска: '); Readln(c);
  if Pos(c,s)>0 then Writeln('Такая цифра есть')
  else Writeln('Такой цифры нет')
end.

3. То же, но без строк, с циклом

var
  n:longint;
  d:0..9;
begin
  Write('Введите натуральное число: '); Read(n);
  Write('Введите цифру для поиска: '); Read(d);
  while n>0 do begin
    if n mod 10=d then begin
      Writeln('Такая цифра есть');
      Exit
      end;
    n:=n div 10
    end;
  Writeln('Такой цифры нет')
end.
Автор ответа: needsupport6578
0
не ожидал вас снова увидеть)))00))0
Автор ответа: Аноним
0
И потом, любой человек должен иметь шанс на реабилитацию, не так ли?
Автор ответа: Gleb1Kosyrev
0
//PascalABC.NET 3.2 сборка 1318

Var
  n,a:integer;
  b:boolean;
begin
b:=true;      //"флаг", указывающий на результат
readln(a);    //вводим цифру
readln(n);    //вводим число
while n>0 do          //пока число не равно 0 
if n mod 10=a then  //mod 10 возвращает последнюю цифру числа   
begin
      b:=false;       //если эта цифра равна а, тогда "флаг" меняет своё значение
      break;          //и выходим из цикла
    end
  else
      n:=n div 10;    {иначе посредством div 10 убираем самый правый разряд. Если левый аргумент меньше 10, он вернёт 0 и тем самым завершит цикл}
if b=true then writeln('Да') else writeln('Нет'); {"флаг" остаётся true только если не встретилось совпадений в цикле}
end.      

Пример ввода:

3
123
Пример вывода:
Нет
Автор ответа: needsupport6578
0
Спасибо
Похожие вопросы
Предмет: Математика, автор: hijey47
Предмет: Математика, автор: arishka23091