1) Var n,m,max,min:integer; Begin write('Введите число: '); readln(n); min:=9; max:=0; while n>0 do begin m:=n mod 10; if m<min then min:=m; if m>max then max:=m; n:=n div 10; end; writeln('Максимальное число: ',max); writeln('Минимальное число: ',min); End. 2) var i,count: integer; n,s:string; begin writeln('Введите число: '); readln(s); writeln('Введите цифру: '); readln(n); for i:=1 to length(s) do if(s[i]=n)then count:=count+1; writeln('Количество раз, когда встречается цифра = ',count); end.
Думаю, логика у нас здесь будет такая: нужно разложить данные три числа на простые сомножители. Получится: 132 = 2 * 2 * 3 * 11 106 = 2 * 53 134 = 2 * 67 Что у них есть общего - то можно откинуть, потому что количество кругов будет при общих сомножителях делиться без остатка. Собрать в ответ нужно следующее: от первого - 2 * 2 * 3 * 11 от второго - 53 (двойку не берём, потому что она уже взята с первым) от третьего - 67 (двойку опять не берём)
Получается: 2 * 2 * 3 * 11 * 53 * 67 = 468732 секунды. Это, как я думаю, ответ.
При этом (чисто для сведения), до момента встречи: первый намотает 3551 круг второй - 4422 круга третий - 3498 кругов.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку