Загадывается трехзначное число Х. Из него нужно вычеркнуть одну цифру так, чтобы оставшееся число Y являлось делителем иходного числа Х.
напишите такую программув PascalABCNET

Ответы

Ответ дал: Fs0cietyE1337
0
Program SimpleText;var  a,FirstN,SecondN,ThirdN : integer;Begintryreadln(a);FirstN := a div 100;SecondN := ((a div 10) mod 10 );ThirdN :=( a mod 10);if ( a mod (SecondN*10+ThirdN) = 0 ) then writeln('Вычеркиваем первую цифру')else if ( a mod (FirstN*10+ThirdN) = 0) then writeln('Вычеркиваем вторую цифру')else if ( a mod (FirstN*10+SecondN) = 0) then writeln('Вычеркиваем третью цифру')else writeln('Неверно загадано число'); excepton System.DivideByZeroException do
writeln('Деление на 0');end;end.
Приложения:
Ответ дал: Fs0cietyE1337
0
Ну, я, в любом случае, старался
Ответ дал: Аноним
0
Темп не менее, убирайте недочет в программе, иначе Ваше решение будет ошибочным им его удалят.
Ответ дал: Fs0cietyE1337
0
Я, конечно, исправил, но появляется другой вопрос : для чего тут два разных по реализации но одинаковых по сути решения?
Ответ дал: Аноним
0
Если нет прямого копирования, возможны варианты, что авторы нашли одинаковый алгоритм. Это допустимо.
Ответ дал: Аноним
0
Когда пишешь решение, вовсе не обязательно читать имеющееся.
Ответ дал: Аноним
0
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var x:=ReadInteger('Введите трехзначное число:');
  var (a,b,c):=(x div 100,x div 10 mod 10,x mod 10);
  if b+c<>0 then
    if x mod (10*b+c)=0 then begin
      Writeln('Вычеркнуть первую цифру (',a,')');
      Exit
      end
  else
    if a+c<>0 then
      if x mod (10*a+c)=0 then begin
        Writeln('Вычеркнуть вторую цифру (',b,')');
        Exit
      end
    else
      if a+b<>0 then
        if x mod (10*a+b)=0 then begin
          Writeln('Вычеркнуть третью цифру (',c,')');
          Exit
        end;
  Writeln('Нет решения')
end.
Приложения:
Вас заинтересует