В программах какого типа используется счетный оператор цикла

Цель работы Овладеть техникой составления программ с повторяющимися фрагментами.

Задачи работыНаучиться использовать оператор цикла FORв программах циклического типа.

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

Требования к отчету. Итоги практической работы представить в виде отчета, содержащего:

— Новый теоретический материал;

— Решенные задачи 2 уровня (все) и 3 уровня (одну задачу на выбор преподавателя) в следующем виде: входные и выходные данные, блок-схема алгоритма, текст программы (с комментариями), таблица с тестовыми данными и классами входных/выходных данных.

Технология работы

1. Ознакомьтесь с теоретическим материалом, необходимым для выполнения работы:

Оператор цикла с параметром

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

УРОК 19. Оператор цикла (8 класс)

Служебное слово To указывает направление изменения параметра – увеличение на 1 (начальное значение меньше конечного значения; если это условие не выполнится, то оператор не выполнится ни разу). Если необходимо, чтобы параметр уменьшался на 1, то используется слово DownTo (начальное значение больше конечного значения). В качестве оператора можно использовать любой простой или составной оператор.

Цикл For удобно использовать для организации вывода данных программы. Вместе с оператором ifи функцией readln он позволяет выполнить постраничный вывод. Например, при выполнении следующего цикла программа будет приостанавливать вывод после заполнения экрана столбцом цифр до нажатия клавиши :

for i:=1 to 50 do

Begin

ifi mod 24=23 then readln;

Генератор случайных чисел

В работе используется генератор случайных чисел. В языке программирования Паскаль для генерации псевдослучайных чисел в заданных диапазонах используется функция random. Перед ее использованием обычно выполняется процедура инициализации датчика случайных чисел randomize; иначе программа всегда будет выдавать один и тот же результат. Randomize задает начальное значение последовательности, от которого вычисляются все последующие. При каждом запуске программы это значение будет разным, а значит и результат работы функции random будет различным.

Функция random генерирует случайное число в диапазоне от 0 (включительно) до единицы. Если в скобках указан аргумент, то от 0 до значения указанного в скобках (не включая само значение). Так выражение random(10), говорит о том, что будет получено любое число в диапазоне [0, 10). Если требуется получать значения в каком-либо другом диапазоне (не от нуля), то прибегают к математической хитрости.

формуладиапазона [a,b]x:=random(b-a+1)+a;

2. Выполните следующие упражнения:

Задания уровня 1

Упражнение 1. Программа выводит на экран целые числа от 1 до 10, целые числа от 10 до -10 и латинские символы от a до r в алфавитном порядке.

Информатика. Язык Pascal: Оператор цикла for в Pascal. Центр онлайн-обучения «Фоксфорд»

1. Наберите текст программы:

2. Запустите программу на выполнение и проверьте её работу.

3. Измените программу так, чтобы она выводила на экран числа от 20 до 30 и буквы от ‘r’ до ‘a’ в обратном порядке.

4. Сохраните программу.

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

1. Наберите текст программы:

2. Запустите программу на выполнение и проверьте её работу.

3. Измените программу так, чтобы она содержала тест на 10 вопросов. Подсчет оценки производится по следующим критериям: «5» ставится, если правильно выполнены все задания, «4» ставится, если правильно выполнены 8 или 9 заданий, «3» ставится, если правильно выполнены 6 или 7 заданий, в остальных случаях ставится оценка «2».

4. Сохраните программу.

Упражнение 3.Дано натуральное число N. Определить, является ли оно простым.

Натуральное число N называется простым, если оно делится нацело без остатка только на единицу и N. Число 13 – простое, т.к. делится только на 1 и 13, N=12 не является простым, т.к. делится на 1, 2, 3, 4, 6, 12. Алгоритм решения этой задачи заключается в том, что число N делится на параметр цикла i, изменяющийся в диапазоне от 2 до N/2. Если среди значений параметра не найдется ни одного числа, делящего заданное число нацело, то N – простое число, иначе оно таковым не является.

2. Запустите программу на выполнение и проверьте её работу.

3. Сохраните программу.

3. Выполнить самостоятельно:

Задания уровня 2

1. Составить программу вычисления факториала.Факториал числа — это произведение последовательности чисел от 1 до этого числа. N! = 1*2*. *N.

2. Вычислить сумму натуральных нечетных чисел, не превышающих n.

3. Вычислить произведение натуральных чисел, кратных трем и не превышающих n.

Задания уровня 3

1. Вычислить a n (n>0), где a — вещественное число, которое необходимо возвести в целую положительную степень n.

2. Выведите на экран в три столбца список чисел от 1 до N, их квадратов и кубов. Число N вводите с клавиатуры.

3. Вычислите сумму S и произведение P всех целых чисел от N1 до N2. Пример: для N1=3, N2=7 получимS=25, P=2520.

4. Напишите программу вычисления выражения (3-x)(6-x)(9-x)∙ … ∙(21-x), где x – действительное число ().

Читайте также:
Программа обслуживания это определение

5. Последовательно вводится Nцелых чисел. Найдите минимальное и максимальное число из введенных чисел.

6. Вводится последовательность из M элементов. Каждый элемент последовательности – цифра (то есть находится в диапазоне от 0 до 9). Сформироватьчисло N, считая первый элемент последовательности младшим разрядом. Например, дана последовательность 5, 4, 3, 2, 1, тогда десятичное число формируется следующим образом: 5+4*10+3*100+2*1000+1*10000=12345.

7. Проверить, является ли введенное целое число простым.

8. На промежутке от 1 до M найти все числа Армстронга. Натуральное число из n цифр называется числом Армстронга, если сумма его цифр, возведенных в степень n, равна самому числу. Например, число 153 (153=1 3 +5 3 +3 3 ).

9. Проверить, является ли целое число, введенное пользователем, палиндромом. (палиндромом называют любой симметричный относительно своей середины набор символов).

10. Дана строка, содержащая 20 символов. Подсчитать сколько раз буквы f и a встречаются в данной строке.

11. Дана строка, содержащая 20 символов. Подсчитать количество цифр, входящих в данную строку.

Окончание работы:

1. Сохранить созданные программы.

2. Подготовить ответы на контрольные вопросы.

3. Показать работу преподавателю.

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

1. Что называют циклом?

2. Какова функция оператора цикла с параметром?

3. В программах какого типа используется счетный оператор цикла?

4. Каким образом изменить наращивание переменной цикла в отрицательную сторону?

5. Перечислите правила использования оператора цикла с параметром.

ПРАКТИЧЕСКАЯ РАБОТА №5

ПРИМЕНЕНИЕ ЦИКЛОВ С ПРЕДУСЛОВИЕМ И С ПОСТУСЛОВИЕМ

Цель работы Овладеть техникой составления программ с повторяющимися фрагментами.

Задачи работыНаучиться использовать операторы цикла WHILEи REPEATв программах циклического типа.

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

Требования к отчету. Итоги практической работы представить в виде отчета, содержащего:

— Новый теоретический материал;

— Решенные задачи 2 уровня (все) и 3 уровня (одну задачу на выбор преподавателя) в следующем виде: входные и выходные данные, блок-схема алгоритма, текст программы (с комментариями), таблица с тестовыми данными и классами входных/выходных данных.

Технология работы

1. Ознакомьтесь с теоретическим материалом, необходимым для выполнения работы:

1.1 Оператор while…do предназначен для реализации циклов с предусловием. Форма записи:

В качестве оператора может быть любой простой или составной оператор.

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

1.2 Оператор repeat…until реализует цикл с постусловием. Данный цикл всегда будет выполнен хотя бы один раз. Форма записи:

Repeat

Последовательность операторов может состоять из одного или нескольких любых операторов.

В цикле while подразумевается такой алгоритм: пока условие истинно, выполнять операторы тела цикла. В цикле repeat действует другой алгоритм: выполнять тело цикла, пока не станет истинным условие, т.е. пока условие ложно, выполняется цикл.

2. Выполните следующие упражнения:

Задания уровня 1

Упражнение 1. Подсчет суммы цифр натурального числа (цикл с предусловием).

1. Наберите текст программы:

2. Запустите программу на выполнение и проверьте её работу.

3. Сохраните программу.

4. Составьте алгоритм и трассировочную таблицу для примера четырехзначного числа.

Упражнение 2.Подсчёт суммы положительных элементов последовательности до первого нулевого элемента. Последовательность чисел вводится поэлементно с клавиатуры (цикл с постусловием).

1. Наберите текст программы:

2. Запустите программу на выполнение и проверьте её работу.

3. Сохраните программу.

4. Составьте алгоритм и трассировочную таблицу для примера последовательности из 5-ти чисел.

Упражнение 3.Изменить программу для первого упражнения так, чтобы использовался цикл с постусловием.

Упражнение 4.Изменить программу для второго упражнения так, чтобы использовался цикл с предусловием.

3. Выполнить самостоятельно:

Задания уровня 2

1.Вывести значение функции на отрезке от a до b с шагом d. Числа a, b, d вводятся с клавиатуры. Программу составьте, используя цикл с предусловием.

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

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

Задания уровня 3

1.Дано действительное число A. Требуется найти первое значение числа N, при котором сумма S=1+1/2+1/3+…+1/Nпревышает A. Программу составьте двумя способами: используя цикл с предусловием и цикл с постусловием.

2.Мяч упал с высоты 243 сантиметра, ударяется о землю и отскакивает, поднимаясь над землей каждый раз на 2/3 высоты, с которой он падал. Определите через сколько ударов мяч поднимется на высоту меньшую 32 сантиметров.

3.Дано натуральное число N. Вычислить: S=l! + 2! + 3. + N!

4.Напишите программу вычисления выражения (3-x)(6-x)(9-x)∙ … ∙(21-x), где x – действительное число.

5.Последовательно вводится N целых чисел. Найдите минимальное и максимальное число из введенных чисел.

6.Вводится последовательность из M элементов. Каждый элемент последовательности – цифра (то есть находится в диапазоне от 0 до 9). Сформировать число N, считая первый элемент последовательности младшим разрядом. Например, дана последовательность 5, 4, 3, 2, 1, тогда десятичное число формируется следующим образом: 5+4*10+3*100+2*1000+1*10000=12345. Сохранить программу под именем P4PR10

Читайте также:
Как русифицировать программу winrar

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

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

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

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

4. Окончание работы:

1. Сохранить созданные программы.

2. Подготовить ответы на контрольные вопросы.

3. Написать отчет.

4. Показать работу преподавателю.

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

1. Что называют циклом?

2. Какова функция предусловного оператора цикла?

3. В программах какого типа используется предусловный оператор цикла?

4. Каким образом можно создать бесконечную программу?

5. Как прервать выполнение бесконечного цикла?

6. Какова функция оператора цикла с постусловием?

7. В программах какого типа используется оператор цикла с постусловием?

8. Почему перед словом UNTILвставка точки с запятой не обязательна?

Дата добавления: 2018-04-04 ; просмотров: 1448 ; Мы поможем в написании вашей работы!

Поделиться с друзьями:

Источник: studopedia.net

38. Счетный оператор цикла или оператор цикла с параметром

Оператор цикла с параметром используется в программе в случае, когда заранее известно количество повторений в цикле.

Этот оператор имеет следующую структуру:

For : = to do ;

Здесь: For, to, do — зарезервированные слова;

— параметр цикла — переменная типа Integer (точнее любого порядкового типа);

— начальное значение — выражение того же типа;

— конечное значение — выражение того же типа;

— произвольный оператор Turbo Pascal.

При выполнении оператора For вначале вычисляется начальное значение и осуществляется его присваивание параметру цикла. Затем производится проверка условия , если условие имеет значение ИСТИНА, то выполняется оператор следующий за словом do, в противном случае оператор For прекращает свою работу.

Отметим два обстоятельства. Во-первых, условие, управляющее работой оператора For, проверяется перед выполнением оператора : если условие не выполняется в самом начале работы циклического оператора, исполняемый оператор не будет выполнен ни разу. Другое обстоятельство — шаг наращивания параметр строго постоянен и равен +1. Существует другая форма оператора:

For : = downto do ;

Замена зарезервированного слова to на downto означает, что шаг наращивания параметра цикла равен -1.

В случае использования в цикле не одного, а нескольких операторов, то принято заключать эти группы операторов в логические скобки begin и end.

Дана последовательность целых чисел, состоящая из 25 элементов. Вычислить сумму элементов последовательности.

. .

Program primer1;

Var i, a, s : integer;

For i := 1 to 25 do

Write (‘Сумма элементов равна ‘, x);

Решим задание из примера 1 используя конструкцию оператора For, в которой шаг наращивания будет равен -1.

. .

Program primer2;

Var i, a, s : integer;

For i := 25 downto 1 do

Write (‘Сумма элементов равна ‘, x);

39. Цикл с предпроверкой условия

Оператор цикла с предпроверкой условия While. Do схематично представлен в виде блок-схемы на рис.2 и имеет следующий формат:

Здесь While, Do — зарезервированные слова («Пока [выполняется условие]», «делать»);

— выражение логического типа;

оператор> — произвольный оператор, составляющий тело цикла (включая случай расширенного оператора).

Если условие имеет значение «Истинно» (True), то выполняетсяоператор>, после чего проверка условия повторяется. Если условие имеет значение «Ложь» (False), то оператор While прекращает свою работу.

Рис.5.2 Блок-схема цикла с предпроверкой условия

Лабораторная работа №4. “Программирование циклических вычислительных процессов”

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

Теоретическая часть

4.1.1. Циклические алгоритмы.

Цикл – это последовательность действий, которая может выполняться более одного раза.

Циклический алгоритм – это алгоритм, содержащий один или несколько циклов.

Имеется 3 вида циклов:

— цикл с предусловием;

— цикл с постусловием;

— цикл со счетчиком (счетный цикл).

Если выполнение цикла связано с каким-либо логическим условием, то используются циклы с предусловием или с постусловием.

Циклы со счетчиком представляют такой класс, в котором выполнение тела цикла должно повторяться заранее определенное число раз.

Блок-схемы циклических алгоритмов выглядят следующим образом:

1. Цикл со счетчиком.

2. Цикл с предусловием. 3. Цикл с постусловием.

4.1.2 Операторы цикла в языке программирования C++.

В C++ для каждого вида цикла имеется соответствующий оператор:

— цикл типа while (с предусловием);

— цикл типа do…while (с постусловием);

— цикл типа for (счетный).

1.Оператор цикла типа while

while (условие) оператор;

где: (условие) – логическое выражение;

оператор – выполняемый в цикле оператор или тело цикла.

Если тело цикла представляет собой составной оператор, то его нужно заключить в операторные скобки<. >:

Схема работы такого цикла: пока условие является истинным (true), выполняется тело цикла и снова проверяется условие и т.д. Когда условие станет ложным (false) цикл завершает работу.

2. Оператор цикла типа do…while

Читайте также:
Пропал значок программы на рабочем столе

Схема работы такого цикла: сначала выполняется оператор, потом проверяется условие, если условие является истинным, выполняется оператор и снова проверяется условие и т.д. Когда условие станет ложным, цикл завершает работу.

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

3. Оператор цикла типа for

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

i=0, x=0.5, p=1, s=0

B – условное выражение, которое проверяет условие продолжения работы цикла. Например:

C – выражение приращения, которое задает приращение параметру цикла и при необходимости другим параметров, тогда они записываются списком. Например: x+=0.1, i++

4.1.3 Пример составления алгоритма и программы на языке C++ для циклического вычислительного процесса.

Вычислить значение выражения:

b – исходная величина, ее значение вводятся с клавиатуры и не изменяется;

a – изменяется в диапазоне [0;10] с шагом 1;

y – результат, его значения выводятся на экран.

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

Блок-схема алгоритма решения данной задачи с использованием счетного цикла выглядит следующим образом:

Текст программы на языке C++, соответствующей данному алгоритму, выглядит следующим образом:

else printf(“ y не существуетn”);

Блок-схема алгоритма решения данной задачи с использованием цикла с предусловием выглядит следующим образом:

Текст программы на языке C++, соответствующей данному алгоритму, выглядит следующим образом:

else printf(“ y не существуетn”);

Блок-схема алгоритма решения данной задачи с использованием цикла с постусловием выглядит следующим образом:

Текст программы на языке C++, соответствующей данному алгоритму, выглядит следующим образом:

else printf(“ y не существуетn”);

Практическая часть

4.2.1 Требования к выполнению работы:

Выполнить задание из лабораторной работы № 3 для диапазона значений одной из переменных. Изменяемая переменная, диапазон ее изменения и шаг указаны в таблице 4. Составить блок-схемы алгоритмов и программы для двух типов циклов, указанных в индивидуальном задании (таблица 4).

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

Порядок выполнения работы.

1. Выполнить анализ задания, сформулировать постановку задачи.

2. Составить блок-схемы алгоритмов.

3. Составить программу на языке C++. Предусмотреть ввод исходных данных с клавиатуры и вывод результатов на экран.

4. Выполнить проверку работоспособности программы на различных исходных данных.

5. Выполнить анализ полученных результатов.

Варианты индивидуальных заданий.

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

Таблица 4. Варианты индивидуальных заданий

№ п/п Изменяемая переменная Типы циклов
10 ≤ a ≤ 10, Δ a=1 1. С предусловием, 2. Счетный
-4 ≤ d ≤ 4, Δ d = 0.5 1. С предусловием, 2. С постусловием
-6 ≤ x ≤ 3, Δ x = 0.5 1. Счетный, 2. С постусловием
0 ≤ b ≤ 30, Δ b = 1.5 1. С предусловием, 2. Счетный
-15 ≤ j ≤ 10, Δ j = 0.5 1. С предусловием, 2. С постусловием
5 ≤ e ≤ 35, Δ e = 2 1. Счетный, 2. С постусловием
-5 ≤ m ≤ 15, Δ m = 1 1. С предусловием, 2. Счетный
1 ≤ c ≤ 70, Δ c = 3 1. С предусловием, 2. С постусловием
1.5 ≤ c ≤ 15, Δ c = 0.5 1. Счетный, 2. С постусловием
-8 ≤ b ≤ 28, Δ b = 2 1. С предусловием, 2. Счетный
-4.5 ≤ x ≤ 11.5, Δ x = 0.5 1. С предусловием, 2. С постусловием
-7 ≤ k ≤ 2, Δ k = 0.3 1. Счетный, 2. С постусловием
-1 ≤ m ≤ 21, Δ m = 1 1. С предусловием, 2. Счетный
-2 ≤ e ≤ 34, Δ e = 2 1. С предусловием, 2. С постусловием
-11 ≤ c ≤ 23, Δ c = 2 1. Счетный, 2. С постусловием
-13 ≤ p ≤ 50, Δ p = 3 1. С предусловием, 2. Счетный
3.3 ≤ b ≤ 9.3, Δ b = 0.3 1. С предусловием, 2. С постусловием
3.5 ≤ y ≤ 12.3, Δ y = 0.4 1. Счетный, 2. С постусловием
-7.5 ≤ a ≤ 5.7, Δ a = 0.6 1. С предусловием, 2. Счетный
-1.5 ≤ h ≤ 1.2, Δ h = 0.1 1. С предусловием, 2. С постусловием
0 ≤ h ≤ 10, Δ h=0.5 1. Счетный, 2. С постусловием
-15 ≤ b ≤ 15, Δ b =2 1. С предусловием, 2. Счетный
-7 ≤ l ≤ 3, Δ l = 0.5 1. С предусловием, 2. С постусловием
-5.5 ≤ b ≤ 6.5, Δ b = 0.5 1. Счетный, 2. С постусловием
1 ≤ k ≤ 9, Δ k = 0.4 1. С предусловием, 2. Счетный
0 ≤ b ≤ 6.9, Δ b = 0.3 1. С предусловием, 2. С постусловием
-3 ≤ v ≤ 9, Δ v = 0.6 1. Счетный, 2. С постусловием
-2 ≤ p ≤ 2.6, Δ p = 0.2 1. С предусловием, 2. Счетный

4.3 Контрольные вопросы и практические задания:

1. Как работает оператор while?

2. Как работает оператор do . while?

3. Как работает оператор for?

4. Подчеркнуть в программе операторы, образующие цикл.

5. В чем заключается отличие операторов while и do . while?

6. Заменить в программе один оператор цикла другим.

Источник: megaobuchalka.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru