![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 08.10.2013
Сообщений: 19
|
![]()
нужно написать программу в Pascal двумя циклами while и repeat которая выводит простые числа от 1 до n
c циклом for я сделал Код:
Последний раз редактировалось Stilet; 13.10.2013 в 16:59. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,378
|
![]()
1. Нет необходимости проверять делимость на числа, которые больше корня самого числа.
Если число делится, то оно представимо в форме: n = m * k; Увеличивая m, уменьшаем k. В крайнем случае получим - n = m * m. 2. Аналогом цикла for, построенного на While будет такой цикл: Код:
Код:
Как-то так, ...
|
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 08.10.2013
Сообщений: 19
|
![]() Цитата:
я не очень понял что писать на месте троеточий .... замечание по поводу цикла с for я понял , но так же писать больше нужно |
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 30.05.2011
Сообщений: 651
|
![]() Код:
Код:
Код:
Создание, программирование и сопровождение сайтов любой сложности.
Изготовление программ на заказ. Список услуг и портфолио на сайте www.andreygrom.ru Последний раз редактировалось Stilet; 13.10.2013 в 16:59. |
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 08.10.2013
Сообщений: 19
|
![]() Цитата:
но ведь если я напишу m:=round (sqrt(n)) а потом сделаю цикл от i до m , мне найдет простые числа до корня этого числа , а нужно так что именно до числа которое вводиться |
|
![]() |
![]() |
![]() |
#6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]()
Во-первых, цикл for i:=2 to (n+5) do уже ищет простые числа не от 1 до n, а от 2 до n+5. Во-вторых, m := round(sqrt(n)) нужен для того, чтобы не проверять лишние делители, так как проверяемое число не может делиться на число, большее корня из проверяемого числа.
Спасибо, Poma][a. Поправил у себя ![]()
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() Последний раз редактировалось BDA; 13.10.2013 в 18:12. |
![]() |
![]() |
![]() |
#7 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
![]()
И в-третьих везде нужно писать sqrt, а не sgrt
![]() |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
циклы while и repeat | Seferus | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 06.10.2011 18:58 |
задачи на циклы Repeat While For | Kot007 | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 19.05.2011 22:03 |
циклы с операторами For, While, Repeat | baltser | Помощь студентам | 1 | 03.06.2010 06:59 |
циклы while...do и repeat...until. | deniks | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 07.12.2008 15:58 |