Воспользуемся расширенной записью шестнадцатиричного числа в десятичной системе счисления. Тогда 3(a*16²+b*16+c)=b*16²+c*16+a; 767a=208b+13c; 59a=16b+c → a=(16b+c)/59 (1) Здесь a,b,c - шестнадцатиричные цифры, имеющие десятичный эквивалент от 0 до 15. Наложим ограничения. a и b не могут быть нулевыми, поскольку с них начинаются числа, а с может быть и нулем. При b=15 и c=15 значение a по формуле (1) не может быть больше (16*15+15)/59, что в целых числах дает 4. Следовательно, нам надо подобрать такие b и c, чтобы a принимало значения от 1 до 4. Будем подставлять эти значения в (1). 1) При а=1 получаем (16b+c)/59=1 → 16b+c=59. b=59/16=3 (нацело), c=59-16*3=11. Искомое число 13B₁₆ 2) При а=2 получаем (16b+c)/59=2 → 16b+c=118. b=118/16=7 (нацело), с=118-16*7=6. Искомое число 276₁₆
Аналогичным образом находим два остальных числа: 3B1₁₆ и 4EC₁₆
Замечание. Фактически, мы получаем числа 59х1, 59х2, 59х3, 59х4 и переводим их в шестнадцатиричную систему счисления, поскольку в формуле (1) в скобках записано представление расширенное представление шестнадцатиричного числа.
procedure sortbutmeh(var ar:ty;n:integer); Var i,j,c:integer; begin for i:=1 to n-1 do for j:=i+1 to n do if ar[i]<ar[j] then begin c:=ar[i]; ar[i]:=ar[j]; ar[j]:=c; end; end;
begin randomize; readln(n); writeln('First array:'); for i:=1 to n do begin ar[i]:=random(100); write(ar[i]:4); end; sortbutmeh(ar,n); writeln; writeln('Array after sortbutmeh()'); for i:=1 to n do write(ar[i]:4); end.
//2) Var n:integer;
procedure ned(n:integer); begin case n of 1:writeln('Понедельник'); 2:writeln('Вторник'); 3:writeln('Среда'); 4:writeln('Четверг'); 5:writeln('Пятница'); 6:writeln('Суббота'); 7:writeln('Воскресенье'); end; end;
begin readln(n); ned(n); end.
//3) Var s:string;
function lengthbutmeh(s:string):integer; begin while pos(' ',s)<>0 do delete(s,pos(' ',s),1); lengthbutmeh:=length(s); end;
первая простая,решу вторую,посложнее
2)n = int(input())
kp=0
m=0
mm=0
for i in range(n):
a = float(input())
if a > 0:
kp+=1
if a>m:
m=a
if a<mm:
mm=a
print(kp,m,mm)