zeltos384
?>

Заполните недостающие команды для программы:Даны два числа А=1 и В=10. Выводятся все нечетные числа и их кубы в интервале от А до В. Запишите пропущенные команды через запятую​

Информатика

Ответы

nikv568734
Учитывая, что 50 - это очень немного (50-е простое число всего лишь 229), можно придумать всё что угодно (даже ужасающе неэффективное).
Можно просто перебирать все числа, начиная с двойки, и каждое делить на все меньшие его, начиная с двойки. Если хоть на одно разделится - не простое, иначе простое. Попутно подсчитывая число простых чисел, N-е найти не составит труда.

Псевдокод:
ввод N
i = 2
counter = 0
нц
   для j = 2..(i - 1)
      если i mod j = 0 тогда
         увеличить i на 1
         следующая итерация внешнего цикла
      увеличить counter на 1
      если counter = N тогда
         вывод i
         завершение работы программы
   увеличить i на 1
кц

Дальше можно изменять эту программу, оптимизировать. Например, известно, что меньший собственный делитель любого составного числа не превосходит корня из этого числа, следовательно, можно во внутреннем цикле делать перебор не до i - 1, а до [sqrt(i)].
Другое полезное наблюдение может заключаться в том, что все простые числа кроме 2 имеют вид 6m - 1 или 6m + 1 (остальные не подходят: очевидно, 6n делится на 6, 6n +-2 четные числа, а 6n + 3 делится на 3). Это наблюдение позволит примерно в три раза сократить число итераций внешнего цикла.
Наконец, можно сохранять все встретившиеся простые числа в массив, и затем проверять, делится ли текущее число на простые числа, меньшие себя: если не делится, то оно - тоже простое. Для хранения 50 маленьких натуральных чисел в памяти не нужно много места.
Можно воспользоваться каким-нибудь другим алгоритмом, например, решетом Эратосфена. Но в зависимости от того, на каком языке программирования будет потом реализовываться этот алгоритм, он может записываться нетривиально. Для выполнения "на бумажке" решето Эратосфена - один из самых удобных
В конце концов, можно использовать "читерский" метод - взять откуда-нибудь первые 50 простых чисел, записать их куда-нибудь, а потом просто за O(1) находить нужное число в памяти.
Вячеслав
В школе учатся четыре талантливых мальчика: Иванов, Петров, Сидоров и Андреев. Один из них - будущий музыкант, другой преуспел в бальных танцах, третий - солист хора мальчиков, четвертый подает надежды как художник. О них известно следующее:
1. Иванов и Сидоров присутствовали в зале консерватории, когда там солировал в хоре мальчиков певец.
2. Петров и музыкант вместе позировали художнику.
3. Музыкант раньше дружил с Андреевым, а теперь хочет познакомиться с Ивановым.
4. Иванов не знаком с Сидоровым, так как они учатся в разных классах и в разные смены. Кто чем увлекается?

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Заполните недостающие команды для программы:Даны два числа А=1 и В=10. Выводятся все нечетные числа и их кубы в интервале от А до В. Запишите пропущенные команды через запятую​
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

pwd10123869
mishanay301csfp
Наталья_Владимир708
За что в Pygame отвечает модуль KEYDOWN
nv6634
aguliaeva
household193
suhovaab
Dimston134877
rimmaskis
ananyananar
flerbuket332
natalia-bokareva
НиколаевнаОльга
bochkarevazh
teashop