Форум » Обработка целых чисел » № 25_117 » Ответить

№ 25_117

Rep21: Здравствуйте, программа выводит количество = 4806 и макс. число = 220777. Количество чисел, удовлетворяющих условию, в ответах гораздо больше. Если ответы верны, пожалуйста, напишите в чём я не прав. [pre2] function prime(x : integer) : boolean; begin prime := false; for var i := 2 to round(sqrt(x)) do if x mod i = 0 then exit; prime := true; end; label 1; begin var q := 0; var c := 0; var max := 0; var a : array [ 1..15] of integer; for var x := 105673 to 220784 do begin for var i := 2 to round(sqrt(x)) do if (x mod i = 0) and (prime(i) = true) then begin q += 1; a[ q] := i; end; if q >= 3 then for var j := 1 to q do for var l := 1 to q do for var k := 1 to q do if a[ j] * a[ l] * a[ k] = x then begin c += 1; if x > max then max := x; goto 1; end; 1: q := 0; end; writeln(c,' ', max); end. [/pre2]

Ответов - 1

Поляков: Посмотрите решение, которое есть на сайте.



полная версия страницы