Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.12.2017, 16:25   #1
С.Т.У.Д.Е.Н.Т
 
Регистрация: 13.12.2017
Сообщений: 8
По умолчанию Надо вывести на экран простые числа от 1 до N, используя три типа циклов.

Есть задача.
Надо вывести на экран простые числа от 1 до N, используя три типа циклов. Я смог использовать только For i to n dо. Пожалуйста, объясните, как применить остальные два.
С.Т.У.Д.Е.Н.Т вне форума Ответить с цитированием
Старый 13.12.2017, 16:31   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Циклы легко взаимозаменяются. Например, для вайла выносим инициализацию, проверку оставляем и в конце дописываем инкремент.
p51x вне форума Ответить с цитированием
Старый 13.12.2017, 16:32   #3
С.Т.У.Д.Е.Н.Т
 
Регистрация: 13.12.2017
Сообщений: 8
По умолчанию

Я еще совсем новичок, поэтому можно немного попроще?
С.Т.У.Д.Е.Н.Т вне форума Ответить с цитированием
Старый 13.12.2017, 16:42   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Куда еще проще. Прочитайте главу про циклы хотя бы.
for i = 1 to n do эквивалентно i = 1 while i <= n Inc(i)
p51x вне форума Ответить с цитированием
Старый 13.12.2017, 16:51   #5
С.Т.У.Д.Е.Н.Т
 
Регистрация: 13.12.2017
Сообщений: 8
По умолчанию

Спасибо
С.Т.У.Д.Е.Н.Т вне форума Ответить с цитированием
Старый 13.12.2017, 16:54   #6
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Три вида цикла - это:
Код:
While <условие> do 
begin
<код программы> 
end;
Код:
For <переменная счётчик>:<начальное значение> to <конечное значение> do 
begin
<код программы> 
end;
и
Код:
Repeat 
<код программы>
Until <условие>;
Основные виды циклов. While Do выполняет код программы в нём, пока условие, заданное в конструкции будет верным(действительным, правильным). For To Do - это цикл со счётчиком. Обычно это переменная типа Integer. Смысл такой - цикл выполнил код программы и по окончанию увеличил переменную на 1(Есть дополнительные конструкции в цикл, позволяющие увеличить или уменьшить шаг цикла, и даже сделать его на уменьшение. Такие конструкции уже давно общеизвестны и их не составляет особого труда найти в поисковике). Последний Repeat Until - это цикл, практически обратный While Do, только разница в том, что он сначала выполнит код программы, а потом проверит условие, и если оно действительно, то повторит код программы ещё раз.
Вопросы ещё есть?
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 13.12.2017, 17:10   #7
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Сообщение от саша40 Посмотреть сообщение
Три вида цикла - это:
Садись, три.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 13.12.2017, 17:13   #8
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от С.Т.У.Д.Е.Н.Т Посмотреть сообщение
используя три типа циклов
Цитата:
Сообщение от саша40 Посмотреть сообщение
Три вида цикла - это:
Цитата:
Сообщение от Sciv Посмотреть сообщение
Садись, три.
А че так?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 13.12.2017, 17:58   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
А че так?
ну, например, за грубую ошибку:
Цитата:
Сообщение от саша40 Посмотреть сообщение
Последний Repeat Until - это цикл, практически обратный While Do, только разница в том, что он сначала выполнит код программы, а потом проверит условие, и если оно действительно, то повторит код программы ещё раз.
цикл repeat until (как это и следует из перевода с английского) выполняется пока условие не станет истинным: цикл выполняется, пока условие ложно, как только условие выполнилось - выходит из цикла.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 17.12.2017, 08:00   #10
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
function Simple(n:integer):boolean;
var i:integer;
begin
   Result:=false;
   If n<2 then
      Exit;
   For i:=2 to Trunc(Sqrt(n)) do
      If n mod i=0 then
         Exit;
   Result:=true;
end;

var i,n:integer;
begin
   Write('n = '); Readln(n);
   For i:=1 to n do
      If Simple(i) then
         Writeln(i);
   Writeln;
   i:=0;
   Repeat
      i:=i+1;
      If Simple(i) then
         Writeln(i);
   Until i>=n;
   Writeln;
   i:=0;
   While i<n do
   begin
      i:=i+1;
      If Simple(i) then
         Writeln(i);
   end;
   Readln;
end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести на экран 1 или 0 в зависимости от того, имеют три заданных целых числа одинаковую четность или нет. Delphi. Проверить задачу на ошибки student_23 Помощь студентам 3 27.01.2017 09:45
Программка Delphi - надо вывести в строку все простые натуральные числа, которые меньше задаваемого трехзначного N Наталья30111992 Помощь студентам 1 30.10.2013 07:16
Вывести на экран все простые числа, не превосходящие заданное число М - Паскаль bibek13 Помощь студентам 4 06.12.2011 08:17
Даны три числа a,b и с. Если все они ненулевые вывести их на экран в порядке возростания 1znar Паскаль, Turbo Pascal, PascalABC.NET 1 07.07.2011 18:41