Все программы на сайте

Новости it-индустрии Новости железа Полезные советы новичкам



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

Напомним, что материал «Первая программа на Паскале» был напечатан в июльском номере журнала (спецвыпуск, 2007 год) и скачать ее в формате pdf можно здесь - http:// gmi.ru/fc_img/34.zip (76 кб).

Однако на знании одного ввода-вывода информации далеко не уедешь, поэтому сейчас будем осваивать циклы

Существует три основных цикла -for, while и until.

С их помощью упрощается как непосредственная связь между пользователем и программой, так и алгоритмизация в целом.

Допустим, нам нужно сосчитать сумму нескольких целых чисел, причем неизвестно, сколько их будет.

Поэтому введение n-ного количества переменных неуместно.

Вариант 1. FOR (screen 1)
Program Summa;
var
n,s,i,a:integer; begin
readln(n); {1}
s:=0;{2}
for i:=1 to n do {3} begin {4} readln(a); {5}
s:=s+a;{6} end;{7}
writeln('Сумма ',n,' чисел равна ', s); 
{8} readln; end.


Теперь традиционный разбор программы. {1}- Здесь пользователем задается количество суммируемых чисел. {2}- с помощью этой переменной мы и будем считать сумму. Заметьте, необходимо задать ей начальное значение (в данном случае это 0).

{3}- Начало цикла. Дословный перевод - для i от 1 до п делать. Т.е. определенное действие будет выполняться п раз. {4}-{7}- тело цикла. Если в нем выполняется лишь одно действие, то begin и end можно опустить (здесь после end строго ставится точка с запятой!). {5}- ввод самих чисел. {6}- значение s изменяется в соответствии с вводимыми числами. {8}- вывод результата.

Вариант 2. WHILE.
begin
s:=0;
а:=1;{1}
while а<>0 do {2}
begin {3}
readln(a);
s:=s+a;
end;{4}


В этом варианте мы не знаем, сколько чисел будет введено, но программа должна вывести результат, когда будет введен 0. Цикл while {2} выполняется, если условие истинно, т.е. до тех пор, пока а<>0. Чтобы началось выполнение алгоритма, необходимо изначально задать а значение, отличное от 0. {3}-{4}- тело цикла.

Вариант 3. REPEAT-UNTIL
begin s:=0; 
repeat {1} readln(a); 
s:=s+a; 
until a=0; {2}


Очень полезный цикл, выполняющийся хотя бы один раз. То есть нет необходимости задавать значение а, как в while. {1}- начало цикла, {2}-конец. Операции над переменными производятся, пока не будет истинным прописанное выражение.

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

А если вам требуются салоны красоты в Ростове-на-Дону рекомендую воспользоваться сервисом rostov-na-donu.gidm.ru.