Объяснение:
Пошаговая детализация представляет собой простой процесс, предполагающий первоначальное выражение логики модуля в терминах гипотетического (условного) языка очень высокого уровня с последующей детализацией каждого предложения в терминах языка более низкого уровня, до тех пор, пока, наконец, не будет достигнут уровень используемого языка программирования. Здесь уместно напомнить: чем меньше язык содержит деталей, тем более он высокого уровня. Можно считать языком самого высокого уровня обычную человеческую речь, а языком низкого уровня - машинный язык.
Самый простой алгоритм, который приходит в голову - дурацкий. Перебираем все числа и проверяем каждое, подходит ли оно. Гораздо проще взять первое подходящее число из заданного диапазона, а потом идти от него с шагом, равным 2 или 3 (смотря чему нужна кратность).
// PascalABC.NET 3.2, сборка 1341 от 20.11.2016
begin
Range(30,48,2).Println; // 1-я задача
Range(30,55,3).Println // 2-я задача
end.
Результат
30 32 34 36 38 40 42 44 46 48
30 33 36 39 42 45 48 51 54