План-конспект занятия Базовые конструкции структурного программирования: операторы циклов

Цель: Формирование первоначальных представлений об реализации алгоритмической конструкции – цикла, использовании трёх типов циклических структур и соответствующих им операторов языка программирования С++. Задачи занятия: Образовательные - изучить циклические операторы языка программирования С++, выявить особенности из применения Развивающие – формировать умения при составлении программ циклической структуры на заданную ситуацию   Воспитательные – стимулирование и воспитание положительного отноше...
Раздел Информатика
Класс -
Тип Конспекты
Автор
Дата
Формат docx
Изображения Есть
For-Teacher.ru - все для учителя
Поделитесь с коллегами:

План-конспект занятия по дисциплине

«Основы алгоритмизации и программирования»


Тема: Базовые конструкции структурного программирования: операторы циклов

Цель: Формирование первоначальных представлений об реализации алгоритмической конструкции - цикла, использовании трёх типов циклических структур и соответствующих им операторов языка программирования С++.

Задачи занятия:

Образовательные - изучить циклические операторы языка программирования С++, выявить особенности из применения

Развивающие - формировать умения при составлении программ циклической структуры на заданную ситуацию

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

Оборудование: компьютер, мультимедийный проектор, экран, презентация «Программирование циклов».

Программное обеспечение: Microsoft PowerPoint, презентация к уроку.

План урока.

  1. Организационный этап (приветствие, определение отсутствующих на уроке) - 3 мин.

  2. Контроль и оценка знаний по теме «Базовые конструкции структурного программирования: управляющие конструкции, условный оператор».- 10 мин

  3. Актуализация опорных знаний - 5 мин

  4. Формирование новых знаний и способов действий. - 25 мин.

Изучение нового материала по теме «Базовые конструкции структурного программирования: операторы циклов».

  1. Понятие «цикл»

  2. Оператор цикла с предварительным условием

  3. Оператор цикла с последующим условием

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

  1. Применение новых знаний и способов действий - 30 мин.

  2. Итог урока - 4 мин.

  3. Домашнее задание - 3 мин.

Ход урока:

Слайд 1.

  1. Организационный момент. Цель, задачи урока - 3 мин.

Здравствуйте, ребята! Наше сегодняшнее занятие может быть условно разделено на 4 части:

  • Контроль и оценка знаний по теме «Базовые конструкции структурного программирования: управляющие конструкции, условный оператор».

  • Актуализация опорных знаний - повторение понятия цикла из курса математики; Изучение нового материала по теме «Базовые конструкции структурного программирования: операторы циклов»

  • Применение новых знаний и способов действий

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

Остальные студенты участвуют в устном опросе.

Для фронтального опроса студентов предусмотрены следующие вопросы:

  1. Назовите три основных структуры алгоритмов?

  2. Решение каких задач можно описать линейной блок-схемой алгоритмов, ветвлением?

  3. В чем отличие полного ветвления от неполного?

  4. По описанному примеру, составьте трассировочную таблицу (Шаг, исходное значение x, результат выполнения, тело итерации, выход х).План-конспект занятия Базовые конструкции структурного программирования: операторы циклов

Результат:

План-конспект занятия Базовые конструкции структурного программирования: операторы циклов

  1. Определите, что будет получено на экране в результате исполнения следующих операторов (показать операторы, используя проектор).

int main ()

{

float a,b,c,y,min;

cout<<" Ввод a: ";

cin>>a;

cout<<"\n Ввод b: ";

cin>>b;

cout<<"\n Ввод c: ";

cin>>c;

if (a>b)

{ min=b;}

else

{ min=a;}

if (min+a>1)

{ y=a*b-c; }

else

{ y=(a+b)*c; }

cout<<"\n Результат Y = "<

return 0;

getch ();

}

Предположительный ответ:

Результат:

Ввод а: 0.1

Ввод b: 2

Ввод c: 2

Результат Y = 4.2

II. Актуализация знаний и опыта студентов

Термин цикл, понятен каждому, приведите математические примеры, решение которых основано на повторении вычислений.

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

Что определяет количество повторений вычислений, в каждом из приведенных примеров?

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

Какие действия повторяются в каждом из примеров?

III. Формирование новых знаний и способов действий.

Изучение нового материала по теме «Базовые конструкции структурного программирования: операторы циклов»

  1. Понятие «цикл»

  2. Оператор цикла с предварительным условием

  3. Оператор цикла с последующим условием

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

  1. В практике программирования циклом называют многократное автоматическое выполнение некоторых действий (операторов). Любой цикл состоит из тела цикла, то есть из тех операторов, которые выполняются несколько раз, начальных установок, модификации параметра цикла и проверки условия продолжения выполнения цикла.

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

Рассказ сопровождается показом блок-схем, с использованием проектора.

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

while (выражение) оператор

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

Пример. Составить программу: определение значений функции y=x2+1 в указанном диапазоне с заданным шагом.

#include

void main()

{float xn, xk, dx;

printf("введите диапазон и шаг изменения аргумента");

scanf(%f%f%f, &xn, &xk, &dx);

printf("| x | y |\n");

float x=xn;

while (x<=xk)

{printf("|%5.2f|%5.2f|\n",x,x*x+1);

начало

xn, xk, dx

x=xn

x<=xk

x, x*x+1

x+=dx

конец

тело цикла

Условие цикла

x+=dx;

} }




Пример. Программа находит все делители целого положительного числа.

#include

void main

{int num;

cout<<"\nВведите число: "; cin>>num;

int half=num/2;

int d=2;

while (d<=half)

{if (!(num%d)) cout<

d++;}

}

3. Оператор do while

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

do оператор while (выражение);

Схема выполнения оператора do while :

1. Выполняется оператор цикла (которой может быть составным оператором).

2. Вычисляется выражение.

начало

n

f=i=1

f*=i++

i<=n

f

конец

3. Если выражение ложно, то выполнение оператора do while заканчивается и выполняется следующий по порядку оператор. Если выражение истинно, то выполнение оператора продолжается с пункта 1.

Пример. Программа вычисления факториала

# include <iostream.h>

void main()

{ long int f;

int i, n;

cout<<"n="; cin>>n;

f=i=1;

do

f*=i++; //f=f*i; i=i+I;

while (i<=n);

cout<<"\n"<

}

4. Цикл с параметром (for)

for (инициализация; выражение; модификации) оператор;

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

int k, m;

for (k=1, m=0; . . .

for (int i=0, j=2; . . .

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

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

Модификации выполняются после каждой итерации цикла и служат обычно для изменения параметров цикла. В части модификации можно записать несколько операторов через запятую. Простой или составной оператор представляет собой тело цикла. Любая из частей оператора for может быть опущена (но точки с запятыми надо ставить на своих местах!).

Пример (оператор, вычисляет сумму чисел от 1 до 100)

for (int i=1, s=0; i<=100; i++) s+=i;

Пример. Программа печатает таблицу значений функции y=x2+1 во введенном диапазоне.

# include

void main()

{ float xn, xk, dx, x;

printf("Введите диапазон и шаг изменения аргумента:");

scanf("%f%f%f,&xn,&xk,&dx");

printf("| X | Y |\n");

for (x=xn; x<=xk; x+=dx)

printf("|%5.2f|%5.2f |\n",x,x*x+1);

}

начало

xn, xk, dx

x=xn

x=xn;x<=xk;x+=dx

x, x*x+1

конец





Пример. Программа находит все делители целого положительного числа.

# include

void main()

{ int num, half, div;

cout<<"Введите число:"; cin>>num;

for (half=num/2, div=2; div<=half; div++)

if (num%div=0) cout<

}

С помощью цикла for нахождение N! Можно организовать следующим образом:

1) f=1;

for (i=1; i<=n; i++) f=f*i;

2) for (f=, i=1; i<=n; i++) f=f*i;

3) f=1;

i=1;

for (; i<=n; i++) f=f*i;

4) for (f=1, i=1; i<=n; f=f*i, i++);

5) for (f=1, i=1; i<=n; f*=i++);

IV. Применение новых знаний и способов действий

Группе студентов выдается три варианта заданий. Работа выполняется в три этапа. Первый этап состоит в определении постановки задачи, составлении математической модели данных, определении входных и выходных данных. Второй этап предполагает составление блок-схемы алгоритма решения задачи. Третий этап заключается в написании программы по блок-схеме алгоритма.

Работа студентов на каждом из этапов регламентируется временем. По завершении третьего этапа происходит оценка результатов деятельности студентов (сравнение с готовым решением со слайда).

  1. Итог урока

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

Какие рекомендации по использованию циклических операторов вы можете дать?

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

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

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

Оператор for предпочтительнее в большинстве остальных случаев (однозначно - для организации циклов со счетчиками).

Сегодняшней темой подводим итог в изучении материала модуля «Базовые конструкции структурного программирования».

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

IV. Домашнее задание

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

2-й уровень. Вводится с клавиатуры n чисел. Определить сколько положительных и отрицательных элементов содержит последовательность.

Литература

Павловская Т.А. С/С++. Программирование на языке высокого уровня.- СПб.: Питер, 2004. Семакин И.Г., Шестаков А.П. Основы программирования: Учебник. - М.: Мастерство, 2002.

Павловская Т.А., Щупак Ю.А. С/С++. Структурное программирование: Практикум. - СПб.: Питер, 2002.

Крячков А.В., Сухина И.В., Томшин В.К. Программирование на С и С++. Практикум: Учеб. пособие. - М.: Горячая линия - Телеком, 2000

© 2010-2022