Abs, Sqr в Pascal.

Abs - функция языка Паскаль, которая вычисляет модуль числа.
Sqr - функция языка Паcкаль, которая возводит число в квадрат.

Тип данных String в Pascal.

Со строковыми переменными можно производить различные операции. Операция сцепления строк позволяет соеденить 2 строки между собой.

GotoXY в Pascal.

Процедура GotoXY используется в Pascal для перевода курсора в нужную позицию на экране. Для этой процедуры указываются координаты. После указания процедуры GotoXY в коде программы сообщение будет выводиться на экран в тех координатах, которые мы ...

Циклы и массивы

Тип данных Integer.

Тип INTEGER (целый). Этот тип представляет множество целых чисел диапазона от -32768 до 32767. В памяти ЭВМ  под целое число отводится два байта (16 бит).

Циклы с параметром. Оператор FOR.

Эти циклы организуются в программах, где заранее известно число повторений. При этом повторное выполнение сопровождается изменением управляющего параметра (переменной цикла).

Циклы в Паскаль представляют собой многократно - повторяющиеся действия. В этой статье мы рассмотрим операторы  цикла For To и For Downto. Эти операторы используются в том случае, если нам необходимо, чтобы какое-то действие повторилось несколько раз. 

Создадим программу, которая будет выводить на экран квадраты чисел от 1 до 10.

Использование цикла For..to.


program ciklih1;
uses crt;
var N:integer;
begin
clrscr;
For N:=1 To 10 Do
writeln (sqr(N));
readln
end.

Строка №3. Записываем переменну «N». Она будет использоваться в качестве счетчика цикла. Практически во всех программах, использующих цикл For применяется счетчик цикла

В строке №6 записываем цикл For..To..Do. Счетчик цикла «N» показывает сколько раз должен быть выполнен цикл. В нашем примере счетчик будет принимать 10 различных значений от 1 до 10. Соответственно, цикл будет выполнен 10 раз. После слова Do записываются операторы, которые должны выполниться 10 раз при разных значениях счетчика. В нашем примере за словом Do идет оператор вывода на экран Writeln, который выводит на экран квадрат переменной «N» (т.е. счетчика цикла).

В строке №7 выводим квадрат переменной «N» на экран. Благодаря циклу For квадрат переменной  будет выведен 10 раз. Сначала для числа 1, затем для 2, затем для 3 и т.д. до 10.
ciklih v pascal

ciklih v pascal.

В примере переменная «N» является счетчиком цикла. В операторе For указывается начальное значение счетчика «1» и конечное значение «10». Причем не обязательно, чтобы начально значение было равно 1. Можно поставить 2 или 3 или 4 и т.д. Соответственно, квадраты чисел будут выводиться, начиная с 2, 3 или 4. Следует также скажать, что счетчик цикла может увеличиваться только на 1.


Форма записи For N:=1 To 10 Do увеличивает счетчик на еденицу. Если вместо To записать DownTo, то это будет форма записи, которая уменьшает счетчик на еденицу.
Напишем программу, которая будет выводить на экран кубы чисел от 10 до 5

Использование For..To..Downto.


program ciklih2;
uses crt;
var N: integer;
begin
clrscr;
For N:=10 Downto 5 Do
writeln (N*N*N);
readln
end.

В строке №6 записываем цикл For. Однако, в отличии от предыдущего примера, здесь вместо «To» употребляется «Downto». Поэтому действие, которое стоит после слова Do (строка №7) будет выполнено 5 раз в порядке уменьшения переменной «N». Т.е. сначала выведется 10 в кубе, затем 9 в кубе, затем 8 в кубе и т.д. до 5 в кубе.

ciklih v pascal..

ciklih v pascal...


Предыдущая статья : Оператор выбора Case Of в Pascal.

Оглавление : Уроки Паскаль. Циклы.

Следующая статья : Оператор цикла While..Do.


Комментарии  

 
+3 # Кирито 27.11.2012 15:24
при вознесеии в куб можно было использовать
writeln(power(3 ,N));
Ответить
 
 
-6 # Нео 16.12.2012 14:35
Ты напомнил мне Power в Excel 8)
Ответить
 
 
+2 # Антон 23.02.2013 16:59
Поправочка: power(N, 3)
Ответить
 
 
-6 # anonim 15.12.2012 14:19
:o :o :o :o :o :o :o :o :o :o :o
Ответить
 
 
-7 # anonim 15.12.2012 14:20
;-) 8)
Ответить
 
 
+1 # Программм 10.02.2013 14:55
Спасибо)
Ответить
 
 
0 # Никит 21.07.2014 14:56
и во второй задаче не пять раз, а шесть
распространенная арифметическая ошибка
Ответить
 
 
-3 # Bahr 25.12.2015 18:45
Следует также скажать, что счетчик цикла может увеличиваться только на 1.

скажать
админ у вас опечатка :D :D :D
Ответить
 
 
-2 # лул 17.11.2017 06:46
Прикольно :D :lol: :lol: :lol: :lol: :D :D :D :D :lol:
Ответить
 
 
0 # фыва 30.06.2022 07:59
1. Как делать взаимно простые вложенные циклы? в смысле - что должно быть на входе, чтобы на выходе получилось примерно так (для простоты координата по диагонали меняется через 3 метки, улица через 5):

(а1, б2, в3, г4, д5 - массив координат.
первая, вторая, третья - массив улиц.
остальное - массив меток.)

(to:) Моя дорога в школу - а1, первая улица, дом, улица, клуб, б2, околица, правление колхоза, вторая улица, поле, в3, роща, река, мост, г4, горка, третья улица, деревня, переулок, д5, почта, площадь, школа.

(downto:) Моя дорога из школы - д5, третья улица, школа, площадь, почта, г4, переулок, деревня, вторая улица, горка, в3, мост, река, роща, б2, поле, первая улица, правление колхоза, околица, а1, клуб, улица, дом.

Мяу.
Ответить
 
 
0 # фыва 30.06.2022 08:31
По отдельности хорошо получается.

С улицами:
begin
write ('Моя дорога в школу - ');
for i:=1 to 3 do begin
write (avenue +' улица, ');
for j:=1 to 14 do if (j-1) div 5=i-1 then write (way [j]+', ');
end;
writeln (way [15]+'.';
readln;
write ('Моя дорога из школы - ');
for i:=3 downto 1 do begin
write (avenue +' улица, ');
for j:=15 downto 2 do if (j-1) div 5=i-1 then write (way [j]+', ');
end;
writeln (way [1]+'.';
readln;
end.
Ответить
 
 
0 # фыва 30.06.2022 08:32
С координатами:
begin
write ('Моя дорога в школу - ');
for i:=1 to 3 do begin
write (coord +', ');
for j:=1 to 14 do if (j-1) div 3=i-1 then write (way [j]+', ');
end;
writeln (way [15]+'.';
readln;
write ('Моя дорога из школы - ');
for i:=3 downto 1 do begin
write (coord +', ');
for j:=15 downto 2 do if (j-1) div 3=i-1 then write (way [j]+', ');
end;
writeln (way [1]+'.';
readln;
end.

Мяу.
Ответить
 
 
0 # фыва 30.06.2022 09:47
Так можно и трамваи выворачивать. Например, самый эффектный из наших - он склеен из двух, и в середине петля. Остановки в кавычках, улицы без.

to: "Островского", петля (Пастера, Ленинградская, Горького, "речпорт" в сторону Островского (в с. О.) или Островского, Вокзальная, "Горького" в сторону Мирного (в с. М.)), Горького, Шмидта, "рынок", Шмидта, "Шмидта" в с. О., Пушкина, "Савченко", Пушкина, "Кирова", Пушкина, "Серова" в с. О., Чкалова, "Ленина", Чкалова, "Короленко" в с. М., Короленко, Бородинская, "Красная" в с. О. или "Бородинская" в с. М., Либкнехта, "Партсъезда" Благоева, петля (Артема в с. О. или Красная в с. М.)...
Ответить
 
 
0 # фыва 30.06.2022 09:48
...петля (Артема в с. О. или Красная в с. М.), Тельмана, "Тельмана", Героев Сталинграда (Г. С.), "супермаркет", Г. С., "больница", Г. С., "медучилище", Г. С., "сосенки", Г. С., "парк", Г. С., "Титова", Г. С., "депо" в с. О. или "магазин" в с. М., Г. С., "Матросская", Г. С., "Победы", Г. С., "Дивизии", Г. С., "шинник", Г. С., "металлобаза", Г. С., "Гальченко", Г. С., "завод", Г. С., "другой магазин", Г. С., "другой завод", петля (Г. С. в с. О. или двор в с. М.), "Мирный".
Ответить
 
 
0 # фыва 30.06.2022 09:57
"Партсъезда" Благоева - следует читать: "Партсъезда" в с. О., Либкнехта, Благоева.
Ответить
 
 
0 # фыва 30.06.2022 08:04
2. Бывают ли циклы с плавающим параметром типа: while...do begin if идти then i:=i+1; if бежать then i:=i+2; end? Мяу.
Ответить
 
 
0 # фыва 30.06.2022 10:03
downto: "Мирный", петля (двор в с. М. или Г. С. в с. О.), Г. С., "завод", Г. С., "магазин", Г. С., "другой завод", Г. С., "Гальченко", Г. С., "металлобаза", Г. С., "шинник", Г. С., "Дивизии", Г. С., "Победы", Г. С., "Матросская", Г. С., "другой магазин" в с. М. или "депо" в с. О., Г. С., "Титова", Г. С., "парк", Г. С., "сосенки", Г. С., "медучилище", Г. С., "больница", Г. С., "супермаркет", "Тельмана", Тельмана, петля (Красная в с. М. или Артема в с. О.), Благоева, Либкнехта, "Партсъезда" в с. О., Либкнехта, Бородинская, "Бородинская" в с. М. или "Красная" в с. О., Короленко, "Короленко" в с. М., Чкалова, "Ленина", Чкалова, "Серова" в с. О., Пушкина, "Кирова", Пушкина, "Савченко", Пушкина, "Шмидта" в с. О., Шмидта, "рынок", Шмидта, петля (Горького, "Горького", Вокзальная, Островского в с. М. или Горького, "речпорт", Ленинградская, Пастера в с. О.), "Островского".
Ответить
 
 
0 # фыва 30.06.2022 10:10
Г. С., "супермаркет", "Тельмана" - следует читать: Г. С., "супермаркет", Г. С., "Тельмана".

На самом деле петля в с. О. еще эффектнее - ...Г. С., "Тельмана", Тельмана, Либкнехта, Благоева, Красная, Тельмана, Артема, Благоева, Либкнехта... То есть не половина кольца, а полтора. Мяу.
Ответить
 

Добавить комментарий

   ГлавнаяПаскальЦиклы в ПаскальЦиклы в Pascal.