обозначим уменьшаемое как abc. тогда нужное нам число - это cba, где c, a, b = {0,1,2,3,4,5,6,7,8,9}
по условию, abc - cba = xyz (*), где x, y, z = {a,b,c}. заметим, что abc - cba > 0, и, следовательно, a > c, т.е. c < 9 (**)
из (*) получим уравнения для вычитаний из младшего, среднего и старшего разрядов соответственно (a):
10 + c - a = z (заняли "1" из среднего разряда) (a.1)
10 + (b - 1) - b = 9 при любом b (заняли "1" из старшего разряда)
a - 1 - c = x (a.2)
уравнение (*) приобретает вид:
abc - cba = x9z (***)
но y = 9 не может быть цифрой c, поскольку c < 9 согласно (**). следовательно, возможными комбинациями x,z будут: (x,z) = {(a,,,,b)}.
рассмотрим систему уравнений (a) для всех возможных случаев:
1: x = a или b, z = c.
(a.1): 10 + c - a = c => a = 10 - противоречие (должно быть a < 10).
2: x = c, z = a.
(a.1), (a.2): 10 + c - a = a, a - 1 - c = c => 10 + c = 2*(2c + 1), a = 2c + 1 => 8 = 3c, a = 2c + 1 => c = 8/3 - противоречие (c должно быть целым числом).
3: x = c, z = b.
(a.1), (a.2): 10 + c - a = b, a - 1 - c = c => 10 + c - (2c + 1) = b, a = 2c + 1 => 9 - c = b, a = 2c + 1 => для всех возможных c: c = {0,1,2,3,4} получим соответствующие им значения a и b. (a,b,c) = {(1,9,,8,,7,,6,,5,4)}. подстановкой в (***) получим единственно возможное решение: (a,b,c) = (9,5,4), т.е a = 9, b = 5, c = 4.
итак, нужное нам число это cba = 459, другие два - 954 и 495 соответственно.
проверка: 954 - 459 = 495.
программу написала в паскале, надеюсь подходит))
program 1; var a: array[1..10] of integer; i,q,max,min,l,k: integer; begin randomize; for i: =1 to 10 do begin a[i]: =random(100); write(a[i]: 3); end; writeln; for i: =1 to 10 do if (a[i]> q) and (a[i]< l) then inc(k); writeln('k=',k); end.
2.
program 2; var a: array[1..10] of integer; i,max,min,k,l: integer; begin randomize; for i: =1 to 10 do begin a[i]: =random(100); write(a[i]: 3); end; writeln; max: =a[1]; min: =a[1]; for i: =2 to 10 do begin if a[i]> max then begin max: =a[i]; k: =i; end; if a[i]< min then begin min: =a[i]; l: =i; end; end; writeln('max=',max,', его индекс=',k,', min=',min,', его индекс=',l); end.
Поделитесь своими знаниями, ответьте на вопрос:
Определить значение переменной s после выполнения следующего фрагмента алгоритма, представленного в виде блок-схемы, если а=692. начало: 1) ввод а, 2) s: =0 3) s: =s+a mod 10 4) a: =a div 10 5) a=0, если нет, то вернуться к 3 действию если да то вывод s 6) конец