Форум » Обработка числовых последовательностей » №552 » Ответить

№552

Артем: var M13, M2, M26, ml, ch, X, i, N: longint; begin M13 := 0; M2 := 0; M26 := 0; ml := 0; readln(N); for i := 1 to N do begin readln(ch); if (ch mod 13 = 0) and (ch mod 2 <> 0) and (ch > M13) then M13 := ch else if (ch mod 2 = 0) and (ch mod 13 <> 0) and (ch > M2) then M2 := ch else if (ch mod 26 = 0) and (ch > M26) then m26 := ch else if (ch > ml) then ml:=ch end; if M13 * M2 > M26 * ml then X := m13*m2 else X := m26*ml; writeln(X); end. Почему моя программа работает неверно? Варианту, когда два самых больших множителя кратны 26, удовлетворяет последнее условие. Я так думаю)

Ответов - 1

Поляков: Артем пишет: Почему моя программа работает неверно? В отладчиках есть пошаговый режим, пройдите в нем программу для тех исходных данных, для которых она работает неверно, и все выясните.



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