Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Практическое занятие № 5. Программирование. ЦиклыСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте Цель занятия Цель занятия – знать операторы цикла. Уметь записать алгоритм цикла в виде программы Turbo Pascal, ввести в компьютер и запустить программу, получить результат. Теоретический материал для практического занятия № 5 Оператор цикла с параметрами Счетный оператор цикла FOR имеет структуру: а) FOR i:=a TO b DO <оператор>; Здесь FOR, TO, DO – зарезервированные слова (для, до, выполнить); i – переменная цикла типа INTEGER; a – начальное значение переменной цикла (тип INTEGER); b – конечное значение переменной цикла (тип INTEGER); <оператор> – произвольный оператор Турбо Паскаля. Шаг изменения параметра цикла равен единице. Алгоритм выполнения оператора цикла с параметрами при выполнении оператора FOR:
Пример 1. Найти сумму значений переменной цикла. Фрагмент программы с оператором цикла запишется в виде: For i: =1 to 10 do s:=s+i; Writeln(‘s=’, s); В примере 1 рассматривается простой оператор цикла. Счётный оператор цикл FOR может иметь такую структуру: б) FOR i:= b DOWNTO a DO <оператор>; Замена зарезервированного слова TO на DOWNTO означает, что шаг изменения переменной цикла равен (-1). Пример 2. Найти сумму значений переменной цикла. Фрагмент программы с оператором цикла запишется в виде: For i: =10 to 1 downto s:=s+i; Writeln(‘s=’,s:8:3); {Результат получится тот же, что и в примере 1}. При работе с оператором FOR следует соблюдать ряд правил. Правила оператора FOR.
Оператор цикла WHILE с предусловием Структура оператора имеет вид: WHILE <условие> DO <оператор>; Здесь WHILE, DO – зарезервированные слова: WHILE –пока; DO – выполнить, <условие> – выражение логического типа; <оператор> – произвольный оператор Турбо Паскаля. Если выражение <условие> имеет значение TRUE, то выполняется <оператор>, после чего вычисление выражения <условие> и его проверка повторяются. Если <условие> имеет значение FALSE, оператор WHILE прекращает свою работу. Пример 3. Переписать фрагмент примера 1, используя оператор цикла с предусловием. Фрагмент программы с оператором цикла запишется в виде: s:=0; i:=1; while i<=10 do Begin s:=s+i; i:=i+1; End; Writeln(‘s=’,s); В примере 3 рассматривается составной оператор цикла, тело цикла заключено в операторные скобки. Оператор цикла начинается со строки while i<=10 do, которая читается «пока выполняется условие i<=10 делать …». После чего начинается словом Begin выполнение операторов внутри цикла до слова End; 2.3. Оператор цикла REPEAT…UNTIL с постусловием Структура оператора имеет вид: REPEAT <тело_цикла> UNTIL <условие>; Здесь REPEAT, UNTIL – зарезервированные слова (REPEAT –повторять, UNTIL не переводится, <условие> -условие выхода из цикла); <тело_цикла> – произвольная последовательность операторов Турбо Паскаля; <условие> – выражение логического типа. Операторы, входящие в <тело_цикла>, выполняются хотя бы один раз, после чего вычисляется выражение <условие>: если его значение есть FALSE, операторы <тело_цикла> повторяются, в противном случае оператор REPEAT…UNTIL завершает свою работу. Пример 4. Выполнить задание примера 3. Фрагмент программы с оператором цикла запишется в виде: s:=0; i:=1; repeat s:=s+i; i:=i+1; Until i>10; Writeln(‘s=’,s); В примере 4 цикл выполняется пока переменная i £ 10, при i>10 цикл закончится. 3. Примеры выполнения задания к практическому занятию № 5 При записи циклического алгоритма на языке программирования можно выбрать любой из трёх операторов цикла. Если известно количество циклов, то предпочтительно выбрать оператора цикла с параметрами, в котором указывается начальное и конечное значения счётчика циклов. Пример 5. Написать программу примера 4 из практической работы № 2 (блок-схема 2.2). В цикле вычислить значение функции z= x* y при условии, что одна из переменных - x меняется в каждом цикле, а другая переменная - у не меняется и может быть любым целым числом. PROGRAM PR5; Var x, y, z, i, n:integer; begin {циклический алгоритм} writeln (‘ввести x,y, количество циклов-n’); readln (x,y,n); {оператор цикла с параметрами} for i:=1 to n do begin z:=x*y; writeln (‘x= ’, x, ‘ y= ’, y, ‘ z= ’, z); x:=x+1; End; {конец оператора цикла с параметрами} End. Если неизвестно количество циклов, то следует выбрать любой из двух операторов цикла: с предусловием или с постусловием. Пример 6. Написать программу примера 2 из практической работы № 2, в котором заданы начальные значения переменных: x=1; y=5 и условие: пока y>x выполняется y: = y – x. Определить количество циклов и значения переменных: x; y после выхода из цикла. Алгоритм этой задачи представлен в виде блок-схемы 2.1. и программы: PROGRAM PR6; Var k, x, y: integer; begin {циклический алгоритм} x:=1; y:=5; k:=0; {оператор цикла с предусловием} while y>x do begin y: = y – x; k:=k+1; writeln (‘k=’, k, ‘ x= ’, x, ‘ y= ’, y); end; {конец оператора} end. В примере 6 используется оператор цикла с предусловием, который работает при условии y>x. Условие проверяется при входе в цикл. В теле цикла счётчик цикла задан в виде оператора присваивания k:=k+1; который выдаёт количество выполненных циклов. Пример 7. Этот же алгоритм рассматривается в примере 7, где используется оператор цикла с постусловием. Цикл выполняется при условии y>x, но в конце оператора проверяется условие выхода из цикла (y<=x). PROGRAM PR7; Var k, x, y: integer; begin {циклический алгоритм} x:=1; y:=5; k:=0; {оператор цикла с постусловием} repeat y: = y – x; k:=k+1; writeln (‘k=’, k, ‘ x= ’, x, ‘ y= ’, y); until y<=x; {конец оператора} end. Пример 8. Написать программу. Вычислить и вывести таблицу значений функции y=cos(x). Переменная X изменяется в интервале от x1 до xk с шагом dx. В данной программе используется оператор цикла с параметрами. PROGRAM PR8; Var x,y,dx,x1,xk:real; i, n:integer; begin {циклический алгоритм} writeln (‘ввести начальное – x1, конечное – xk, шаг – dx’); read (x1,xk,dx); n:=trunc((xk-x1)/dx+1); x:=x1; {оператор цикла с параметрами} for i:=1 to n do begin y:=cos(x); Writeln (‘x= ’, x:8:5, ‘ y= ’, y:8:5); x:=x+dx; End; {конец оператора цикла с параметрами} End. Задания к практическому занятию № 5
Задание ИДЗ №3 по теме: «Программирование. Циклы» в Приложении №1 (Задание 5). Вопросы для самоконтроля к практическому занятию № 5. Тема «Программирование. Циклы» 1. Дан оператор на паскале: FOR k:=1 TO m DO S:=S+k; Всего циклов будет выполнено: 1) k; 2) 1; 3) m; 4) s. 2. Дан оператор на паскале: FOR k:=1 TO m DO s:=s+k; Выберите условие выхода из цикла: 1) k=1; 2) k=m; 3) k>m; 4) k<m. 3. Дан фрагмент на паскале, в котором цикл закончится при условии: k:=1; s:=0; while k<=m do begin s:=s+k; k:=k+1; end; 1) k>m; 2) k=m; 3) k<m; 4) k<=m. 4. Дан фрагмент на паскале, в котором цикл закончится при условии: k:=1; repeat s:=s+k; k:=k+1; until k>m; 1) k>m; 2) k=m; 3) k<m; 4) k=s. 5. Дан оператор на паскале FOR k:=m TO n DO s:=s+k Счетчиком цикла является переменная: 1) m; 2) n; 3) k; 4) s. 6. Дан фрагмент на паскале: k:=1; s:=0; while k<=m do begin s:=s+k; k:=k+1; end; в котором цикл выполняется при условии: 1) k<=m; 2) k=m; 3) k<m; 4) k>m. 7. Дан оператор на паскале: FOR k:=3 TO m DO S:=S+k; Для выполнения циклов значение m должно быть: 1) m<k; 2) m= s; 3) m>=k; 4) m<=k. 8. Дан оператор на паскале: FOR k:=3 TO m DO S:=S+k; Значение шага изменения переменной k будет: 1) любым; 2) шаг=3; 3) шаг=1; 4) шаг= k; 9. Определите правильный ответ Дан фрагмент на паскале: k:=3; s:=0; while k>=1 do begin s:=s+k; k:=k-1; end; Writeln(‘s=’, s); Результат выполнения цикла: 1) s=6; 2) s=5; 3) s=3; 4) s=0. 10. Дан фрагмент на паскале: x:=5; z:=0; repeat z:=z+x; x:=x - 1; until x>3; writeln(z); Результат выполнения цикла: 1) z=0; 2) z=5; 3) z=9; 4) z=12. Практическое занятие №6. Языки программирования высокого уровня Цель занятия Цель занятия – познакомиться с языками программирования, знать их классификацию. Уметь анализировать возможности и особенности рассматриваемых языков программирования, делать выводы об общих и отличительных характеристиках языков высокого уровня.
|
||
|
Последнее изменение этой страницы: 2016-08-16; просмотров: 830; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.007 с.) |