Уважаемые программисты 9-х классов!
Сегодня мы начинаем знакомство с операторами цикла. В Паскале существует 3 типа цикла:
- For, или цикл с параметром
- While, или цикл с предусловием
- Repeat, или цикл с постусловием
For —это цикл, в котором тело выполняется заданное количество раз.
Существует две формы записи этого цикла:
[spoiler]Первая формаfor <счетчик1> := <значение1> to <конечное_значение> do <оператор1>; |
После каждой итерации значение <счетчик1> будет увеличиваться на 1. <значение1> — это начальное значение счетчика. Это может быть переменная или число. <конечное_значение>: как только значение <счетчик1> станет больше <конечное_значение>, выполнение цикла прекратится. Если требуется написать несколько операторов в теле цикла, используем begin и end. И <счетчик1>, и <конечное_значение>, и <значение1> — переменные целого типа. Чаще всего в качестве счетчика используется переменная i.
Вторая формаfor <счетчик2> := <значение2> downto <конечное_значение> do <оператор1>; |
После каждой итерации значение <счетчик2> будет уменьшатся на 1. <значение2> — это начальное значение счетчика. <конечное_значение>: как только значение <счетчик2> станет меньше <конечное_значение>, выполнение цикла прекратится.
Рассмотрим пример решения задачи.
Задача For2. Даны два целых числа A и B (A < B). Вывести в порядке возрастания все целые числа, расположенные между A и B (включая сами числа A и B), а также количество N этих чисел. |
Так как A < B, то цикл должен будет выводить все числа от А до B. Чтобы сосчитать количество чисел, используем формулу: <конечное_значение> — <начальное_значение> + 1.
program for2; var A, B, i, count: integer; begin read(A, B); for i := A to B do write(i, ' '); {выписываем числа от меньшего к большему} count := B - A + 1; {считаем количество чисел} writeln; write( 'Количество чисел - ', count); end. |
Составьте программу перевода старинных русских мер длины, торгового и аптекарского веса (цикл от A до B), номер вашей задачи - номер компьютера в кабинете №216 (нумерация компьютеров по часовой стрелке от 1 до 14):
- сажени в метры (1 сажень равна 2,1366 м)
- дюймы в сантиметры (1 дюйм равен 2,5 см)
- футы в метры (1 фут равен 0,3048 м)
- драхмы в граммы (1 драхма равна 3,7325 г)
- унции в граммы (1 унция равна 29,86 г)
- фунты в килограммы (1 фунт равен 0,40951 кг)
- аршины в метры (1 аршин равен 0,7112 м)
- золотники в граммы (1 золотник равен 4,2657 г)
- дюймы в миллиметры (1 дюйм равен 25,3995 мм)
- метры в ладони (1 метр равен 9,843 ладони)
- пяди в сантиметры (1 пядь равна 22,86 см)
- унции в караты (1 унция равна 141,75 карат)
- гектограммы в стоуны (1 гектограмм равен 0,1575 стоунов)
- линки в пики (1 линк равен 47,7 пик)
введите начальное количество саженей: 10 введите конечное количество саженей: 15 10 саженей = 21,366 м. 11 саженей = 23,5026 м. 12 саженей = 25,6392 м. 13 саженей = 27,7758 м. 14 саженей = 29,9124 м. 15 саженей = 32,049 м. |
Дополнительное задание для "продвинутых":
В первый день пловец проплыл 3 км. В каждый следующий день он проплывал на 10% больше, чем в предыдущий.
В какой по счету день пловец начнет проплывать более 5 км? К какому дню он суммарно проплывет более 30 км?
Внимание! В первой строке своей программы в комментариях указываем фамилию, имя и класс на кириллице. Имя файла формируем из своих инициалов и номера программы, например IVP08.pas (восьмая программа Иванова Василия Петровича). Не забываем копировать ваши программы в папку Обмен.
Удачи!
Ваши помощники:
Цикл For.ppt - презентация (автор К.Ю. Поляков)
сайт:
видео:
Уроки Pascal. Урок "Цикл For"
program perevod;
var
i : integer;
begin
for i:=1 to 9 do
begin
writeln ('22,86*',i,'= ',22,86*i);
end;
end.
program perevod;
var
i: integer;
begin
for i:=1 to 9 do
begin
writeln ('2286*i',i,'= ',2286*i);
end;
end.