Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Образовательный студенческий форум _ Информатика / Программирование _ Maple

Автор: Максус 18.9.2009, 10:49

Задача: Если числа n и n+2 являются простыми, то они называются простыми числами-близнецами. Найдите все простые близнецы, не превосходящие 1000.

Подскажите, пожалуйста, с чего следует начать в составлении кода на Maple?

Автор: Vago 18.9.2009, 13:56

С блок-схемы. Или с описания алгоритма на PDL. Или вообще на русском языке (...берём очередное натуральное число; если оно простое, то ... , в противном случае - ... ). Потом лезем в Help Maple'а задаём там поиск по слову 'programming' и смотрим, как там программируются цикл и выбор...

Для вероятностной оценки того, является ли число простым, в Maple есть функция isprime() .

Автор: Максус 19.9.2009, 5:59


for n from 1 to 1000 do
if isprime(n) = true then print(n, n+2) end if;
end do;
Выводится список простых-близнецов, смущает только первая пара "2,4" (4 - не простое число), в чем моя ошибка? И можно ли как-нибудь более компактно выводить полученный результат, в строчку? (Все пары чисел располагаются в столбец, что очень "захламляет", а мне нужно распечатать работу huh.gif ).
Заранее, спасибо smile.gif

Автор: Vago 19.9.2009, 7:25

Цитата(Максус @ 19.9.2009, 8:59) *

for n from 1 to 1000 do

Судя по условию, на 998 можно остановиться wink.gif
Цитата
смущает только первая пара "2,4"

А пара "7,9" не смущает? wink.gif
Нашли очередное простое n и так обрадовались, что тут же его, в паре с неважно каким n+2, распечатали. А это самое n+2 проверять на простоту не надо? wink.gif
Цитата
можно ли как-нибудь более компактно выводить полученный результат, в строчку?

printf( "%6d и %d", i, i+2);
А если снова захочется в столбец - добавить в конец форматного шаблона символ перехода на новую строку:
printf( "%6d и %d\n", i, i+2);

Автор: Максус 19.9.2009, 7:48

Ох, да, конечно, позабыл:
for n from 1 to 1000 do if isprime(n) = true and isprime(n+2) = true
Спасибо, огромное smile.gif

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)