uinput = input('трёхзначное натуральное число: ') # 123
numbers = [int(i) for i in uinput] # [1, 2, 3]
highest = max(numbers) # 3
lowest = min(numbers) # 1
numbers.pop(numbers.index(highest)) # [1, 2, 3] = [1, 2]
numbers.pop(numbers.index(lowest)) # [1, 2] = [2]
middle = numbers[0] # 2
# print(highest, lowest, middle) 3 1 2
num1 = str(highest) + str(middle) # '32'
if lowest == 0:
~~~~if middle == 0:
~~~~~~~~num2 = str(highest) + str(lowest)
~~~~else:
~~~~~~~~num2 = str(middle) + str(lowest)
else:
~~~~num2 = str(lowest) + str(middle) # '12'
print(num1 + ' - ' + num2 + ' = ' + str(int(num1) - int(num2))) # 32 - 12 = 20
Поделитесь своими знаниями, ответьте на вопрос:
ХЕЛП НАПИШИТЕ ТОЧНУЮ ФОРМУЛИРОВКУ ЗАДАЧИ program ex_4;var i, n: byte; k: integer; a: array[1..120] of integer;begin . 'randomize;write('сколько элементов в массиве? '); readln(n);write('введите заданное число k: '); readln(k);for i := 1 to n dobegin a[i] := -100 + random(201); write(a[i] : 6) end;writeln;for i := n downto 1 dobegin a[2 * i]:= k; a[2 * i - 1]:= a[i] end;writeln('ответ:');for i:= 1 to 2 * n do write(a[i]:6);writelnend.
<p>program xxx;</p><p> var i, k, d, e, s : integer;</p><p>begin</p><p> k:=0;</p><p> for i:= 10 to 99 do</p><p> begin</p><p> d:= i div 10;</p><p> e:= i mod 10;</p><p> s:=d + e;</p><p> if i mod s = 0 then k:=k+1</p><p> end;</p><p> write ('кол-во чисел которые делятся на сумму своих цифр=', k);</p><p> readln</p><p>end.</p>