Функции Sqr, Abs, Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi в Pascal.

Мы уже знаем, какие существуют функции для целых переменных. Это – нахождение модуля числа (Функция Abc), а также возведение числа в квадрат (Функция Sqr). В этом уроке мы рассмотрим функции, применяемые к дробным числам. Это функции Sqr - квадрат ...

Приоритет выполнения логических операций в Pascal.

Логические операции применяются при написании многих программ в Pascal. Все операции имеют определенный приоритет выполнения : Первой выполняется операция NOT. Второй выполняется операция AND. Последними выполняются операции OR и XOR (Они имеют ...

Textcolor, Window, Textbackground в Pascal.

Текст, который мы выводим на экран с помощью процедуры Writeln или с помощью оператора Write можно изменять. Процедура Textcolor используется для изменения цвета выводимого текста. Процедура Textbackground изменяет цвет фона, на котором выводится ...

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

Сортировка простым включением и простым выбором.

Сортировка простым включением.
Пример 33. Методом простого включения упорядочить (отсортировать) в порядке возрастания массив из 8 целых чисел (44, 55,12,42, 94, 18, 06, 67).

Массив строк типа STRING.

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

Циклы в Паскаль представляют собой многократно - повторяющиеся действия. В этой статье мы рассмотрим операторы  цикла 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 08:04
2. Бывают ли циклы с плавающим параметром типа: while...do begin if идти then i:=i+1; if бежать then i:=i+2; end? Мяу.
 
   ГлавнаяПаскальЦиклы в ПаскальЦиклы в Pascal.