Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Тема: Решение задач с применением операторов цикла

 

Цель: Научиться использовать все виды операторов цикла при решении задач на языке Pascal и представлять алгоритм решения задачи в виде блок-схемы.

Краткие сведения:

Оператор цикла с предусловием в Паскале

Оператор цикла с предусловием реализует следующую базовую конструкцию:

Формат записи:
While L do OP;
где:
While- пока не;
do– выполнить;
L– выражение логического типа;
OP – тело цикла; оператор (простой или составной).

Работа оператора:Вычисляется значение логического выражения, если вычисленное значение истинно, то выполняется оператор OPпосле чего повторяется проверка условия и выполнение операторов тела цикла. В противном случае осуществляется выход из цикла.

Вычисление значения логического выражения предшествует выполнению операторов тела цикла, поэтому этот оператор цикла называется циклом с предусловием.

Пример 9.3. Составить программу вычисления функции y для заданного значения x.

где: C=2,7; n=2; a=0.5; 0<t<1; Dt=0,1.

Program Ex_2;
Uses crt;
Var
y, C, a, t :real;
n :integer;
Begin
clrscr;
Writeln('Введите C, a, n'); Read(C, a, n);
Writeln('Результат:');
Writeln('t’:5,’y’:15);
t:=0;
While t<1 do
Begin
y:=C*exp(a*t)*cos(n*t);
Writeln(t:4:1,’ ‘:5, y:10);
t:=t+0.1;
End;
End.

Оператор цикла с постусловием в языке Паскаль

Оператор цикла с постусловием реализует следующую конструкцию:

Формат записи:
Repeat
OP
Until L;
где:
Repeat- повторять;
Until– пока не;
L– выражение логического типа;
OP – тело цикла; оператор (простой или составной).

Работа оператора: Выполняетсяоператор OPпосле чего вычисляется значение логического выражения L, если вычисленное значение False, то снова выполняется оператор OP в противном случае осуществляется выход из цикла.

Вычисление значения логического выражения следует после выполнения операторов тела цикла, поэтому этот оператор цикла называется циклом с постусловием.

В отличие от цикла с предусловием, в цикле с постусловием тело цикла выполняется о крайней мере один раз не зависимо от условия.
В операторе цикла с постусловием ключевые слова Repeatи Untilиграют роль операторных скобок.
Пример 9.4. Составить программу вычисления функции y для заданного значения x.


где: C=2,7; n=2; a=0.5; 0<t<1; Dt=0,1.

Program Ex_2;
Uses crt;
Var
y, C, a, t :real;
n :integer;
Begin
clrscr;
Writeln('Введите C, a, n');
Read(C, a, n);
Writeln('Результат:'); Writeln('t’:5,’y’:15);
t:=0;
Repeat
y:=C*exp(a*t)*cos(n*t);
Writeln(t:4:1,’ ‘:5, y:10);
t:=t+0.1;
Untile t>=1;
End.

Оператор цикла с параметром в языке Паскаль

Оператор цикла с параметром реализует следующую базовую конструкцию:

 

Форматзаписи:
1. For P:=Pn to Pk do OP;
2. For P:=Pk downto Pn do OP;
где:
For- для;
to– до;
downto – уменьшая до
do– выполнить;
OP – тело цикла; оператор (простой или составной);
P -параметр цикла, переменная порядкового типа;
Pn, Pk –начальное и конечное значение параметра.

Работа оператора: Вычисляется начальное значение параметра цикла Pn и присваивается параметру P. Проверяется условие P>Pk,и если оно Trueвыполняютсяоператоры тела цикла OP .После чего наращивается значение P на единицу и опять проверяется условие P>Pk . Если условие False осуществляется выход из цикла.
В операторе с downtoшаг изменения параметра цикла равен –1.

Примеры записи:

For i:=1 to n do n:=sqr(i)+1;
For s:=’A’ to ‘Z’ do R:=R+ord(s)/127;
For L:=False to True do H:= (False or L) And Not (L);

Пример 9.5. Составить программу вычисления функции y для заданного значения n.


где: C=2,7; a=0.5; t=0,1; 0<n<10; Dn=1.

Program Ex_3;
Uses crt;
Var
y, C, a, t :real;
n :integer;
Begin
clrscr;
Writeln('Введите C, a, t');
Read(C, a, n);
Writeln('Результат:');
Writeln(‘n’:5,’y’:15);
For n:=1 to 10 do
Begin
y:=C*exp(a*t)*cos(n*t);
Writeln(n:4,’ ‘:5, y:10);
end;
End.

 

Задания:

! Для задачи 1 использовать оператор цикла с постусловием, для задачи 2 – оператор цикла с предусловием, для задачи 3 – оператор цикла с известным числом повторений

Вариант №1.

1.Дано целое число А. Определить количество цифр в числе, которые больше 6.

2.Сумма в А руб. лежит на расчетном счету. На сумму начисляется в% каждый год прибыли. Прибыль со счета не снимается. Через сколько лет данная сумма удвоится.

3. Дочери 8 лет, а матери 38 лет. Через сколько лет мать будет в 3 раза старше дочери?

Вариант №2.

1. Дано целое число А. Определить количество цифр в числе, которые меньше 5.

2.Спортсмен марафонец, готовясь к соревнованиям в первый день тренировки пробежал А км. Каждый следующий день он наращивал норму тренировки на В% от предыдущего дня. В какой день тренировок норма его пробега превысит С км?

3.В клетке сидят фазаны и кролики. Известно, что всего у них 35 голов и 94 ноги. Определить количество фазанов и кроликов.

Вариант №3.

1. Дано целое число А. Определить сумму цифр в числе, которые меньше 5.

2.Дана функция . Составить таблицу значений функции на отрезке [A, B] с шагом H.

3.Для учащихся закуплено 100 билетов в кино на общую сумму 3400 рублей. Билеты стоят 30 и 40 рублей. Сколько билетов было по 30 и по 40 рублей?

Вариант №4.

1. Дано целое число А. Определить сумму цифр в числе, которые больше 5.

2. Спортсмен марафонец, готовясь к соревнованиям в первый день тренировки пробежал А км. Каждый следующий день он наращивал норму тренировки на В% от предыдущего дня. В какой день тренировок общий пробег за все дни превысит С км?

3.У Андрея и Бори было 11 орехов. У Андрея и Вовы – 12 орехов. У Вовы и Бори – 13 орехов. Сколько всего было орехов у мальчиков?

Вариант №5.

1. Дано целое число А. Определить количество четных цифр в числе.

2. Сумма в А руб. лежит на расчетном счету. На сумму начисляется в% каждый год прибыли. Прибыль со счета не снимается. Через сколько лет данная сумма превысит С руб.?

3.Найти сумму всех нечетных двухзначных чисел.

Вариант №6.

1.Дано целое число А. Определить количество нечетных цифр в числе.

2.Количество граждан некоторого города увеличивается ежегодно на В%. Через сколько лет население города возрастет в 2 раза, если вначале было А человек.

3.Определить, можно ли упаковать 60 кг конфет в коробки по 3 кг и 5 кг. Если можно, то каким образом (привести все варианты)?

Вариант №7.

1. Дано целое число А. Определить сумму четных цифр в числе.

2.Мячик упал с высоты Р. Ударился о землю и поднялся на 2/3 предыдущей высоты. Через сколько ударов мячик поднимется на высоту Р?

3.Собака погналась за лисицей, которая была на расстоянии 30 м от нее. Прыжок собаки равен 2 м, а прыжок лисицы – 1 м. В то время как лисица делает 3 прыжка, собака делает 2 прыжка. Какое расстояние должна пробежать собака, чтобы догнать лисицу?

Вариант №8.

1. Дано целое число А. Определить сумму нечетных цифр в числе.

2.Гриб за сутки увеличивает свою массу на 40%. Через сколько суток масса гриба увеличится в 2,5 раза, если первоначально масса гриба составляла А?

3.Жители островов Чунга и Чанга один раз в год обмениваются своими драгоценностями. Жители острова Чанга везут на остров Чунга половину своих драгоценностей, а жители острова Чунга везут на остров Чанга 1/3 своих драгоценностей. В данный момент на острове Чанга х драгоценностей, на острове Чунга у драгоценностей. Сколько драгоценностей будет на каждом из островов через к лет?

Вариант №9.

1. Дано целое число А. Определить, есть ли в данном числе цифры, которые меньше 5.

2.Спортсмен, готовясь к соревнованиям по бегу на длинные дистанции, в первый день тренировок пробежал а км. Каждый следующий день он увеличивал норму пробега на в%. Какая норма пробега будет у спортсмена в к день тренировок?

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

Вариант №10.

1. Дано целое число А. Определить, есть ли в данном числе цифры, которые больше 5.

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

3.Дан натуральный отрезок чисел [A,B]. Найти те числа этого отрезка, которые при делении на данное число K, дают в остатке число 4.

Вариант №11.

1. Дано целое число А. Определить, есть ли в данном числе цифра, которая равна цифре К.

2.Дан натуральный отрезок чисел [A,B]. Найти те числа этого отрезка, которые являются делителями последнего числа В.

Вариант №12.

1. Программа запрашивает количество чисел, затем вводит целые числа в соответствии с указанным количеством. Программа находит сумму отрицательных и сумму нечетных чисел. Программа выводит ту сумму, которая по модулю меньше.

2.Дано натуральное число N. Найти 1!+2!+3!+…+N!

3.Сколько имеется четырехзначных чисел, которые делятся на 45, а две средние цифры у них 97.

Вариант №13.

1.Начальный вклад в банк составляет а рублей. Через сколько лет он станет больше b рублей? Каждый год вклад увеличивается на 3%.

2. Ежегодный прирост рыбы в пруду составляет 15%. Запасы рыбы оценены в А тонн. Ежегодный план отлова В тонн. Подсчитать, сколько лет можно выдерживать заданный план?

3. Программа запрашивает количество чисел, затем вводит целые числа в соответствии с указанным количеством и находит количество чисел, которые по модулю >5, количество чисел, кратных 4 и 5 одновременно, и сумму чисел, которые делятся на 6 с остатком

Вариант №14.

1. Каждая бактерия делится на две в течение одной минуты. В начальный момент имеется A бактерий. Сколько времени потребуется, чтобы количество бактерий превзошло X?

2. Определить количество посетителей салона, которых успеет обслужить мастер-стилист, если его рабочий день составляет t часов и известна продолжительность (в минутах) обслуживания каждого посетителя очереди (вводится пользователем).

3. Найти все натуральные числа от 1 до N, представимые в виде суммы кубов двух натуральных чисел.

Вариант №15.

1. Найти сумму чисел от 10 до n, кратных 10, где (10<n)

2. Вычислить значение функции для всех x от 0 до π с шагом π/6. Вывести все полученные значения.

3. Дано натуральное число n. Вычислить .

Контрольные вопросы:

В каком случае алгоритм называется циклическим?

2) Что называется циклом?

3) Для чего используются операторы цикла в языке Турбо-Паскаль?

4) Что называется итерацией?

5) В чем заключается отличие цикла с предусловием от цикла с постусловием?

6) Что называется параметром цикла? В каком случае параметр цикла называется счетчиком?

7) Для чего предназначен оператор break?

8) Для чего предназначен оператор continue?




©2015 studopedya.ru Все права принадлежат авторам размещенных материалов.