Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Ветвления. Последовательная обработка данных (язык C, лекция 3)

Содержание

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУВетвленияУсловный оператор if для записи ветвлений: if (выражение) оператор S1 [else оператор S2]Сокращенный условный оператор: if (выражение) оператор SСхема работы оператора if (полного и
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУВведение в программированиеЛекция 3.ВЕТВЛЕНИЯ.ПОСЛЕДОВАТЕЛЬНАЯ ОБРАБОТКА ДАННЫХ Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУВетвленияУсловный оператор if для Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУВетвленияУсловие ветвления алгоритма и Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка1. Входная последовательность Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка2. Входная последовательность Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработкаЕсли количество повторений Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка3. Входная последовательность Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательностиЗадача 3.1. Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательностиИспользуем алгоритм Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательностиСхема алгоритма «Сумма числовой последовательности» Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательностиТрассировочная таблица Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательности/* Программа Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательности/* Программа Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательности/* Программа Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУМаксимум числовой последовательностиЗадача 3.2.«Максимум Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУМаксимум числовой последовательности Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУМаксимум числовой последовательности/* Программа
Слайды презентации

Слайд 2 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУВетвленияУсловный оператор if

АСОИУ
Ветвления
Условный оператор if для записи ветвлений:
if (выражение) оператор

S1 [else оператор S2]
Сокращенный условный оператор:
if (выражение) оператор S
Схема работы оператора if (полного и сокращенного)

Слайд 3 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУВетвленияУсловие ветвления алгоритма

АСОИУ
Ветвления
Условие ветвления алгоритма и программы – выражение языка С

в скобках (так же как в циклах). Условие истинно, если значение выражения ≠ 0, ложно в противном случае. Оператор s может быть простым или составным.
Требуется вычислить значение величины a*x2 + b2*x, если a < 0 y = x – a*b, если 0 ≤ a < 1 1 + x, если a ≥ 1
/* фрагмент программы для вычисления величины y */
float a, b, x; cin >> a >> b>>x;
if ( a < 0 ) cout << “y = ” << a *x *x + b *b *x;
else if ( a < 1 ) cout << “y = ” << x - a * b;
else cout << “y = ” << 1 + x;



Слайд 4 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка

АСОИУ
Последовательная обработка
Последовательная обработка данных (однопроходная обработка)

применяется если:
1. необходимо вводить и обрабатывать последовательность элементов исходных данных, в том порядке, в каком она размещена в файле на внешнем носителе;
2. каждый элемент последовательности используется не более одного раза.
Не требуется хранения сразу всех элементов. Достаточно иметь одну переменную, содержащую текущий (очередной) элемент входной последовательности.
В некоторых случаях используются несколько текущих элементов (например, два-три соседних).

Слайд 5 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка

АСОИУ
Последовательная обработка
Элементами данных последовательности могут быть:

- числа; - символы, строки; - записи файла и др.
Последовательность исходных данных может задаваться:
1. с указанием количества элементов;
2. с признаком конца последовательности;
3. обрабатываться до конца входного файла.

Слайд 6 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка1. Входная

АСОИУ
Последовательная обработка
1. Входная последовательность задается с указанием количества элементов

n ≥ 0 в следующем порядке: n, X1, X2, ... , Xn

Алгоритм 3.1. Последовательная обработка заданного количества элементов.
Ввод n; for (j=1; j<=n; j++)
{ Ввод X; Обработка X; }

Слайд 7 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка2. Входная

АСОИУ
Последовательная обработка
2. Входная последовательность задается с признаком конца:

X1, X2, ... , Xn, W
где n - неизвестное заранее количество элементов (n >= 0), W -признак конца последовательности (известное заранее значение, отличающееся от элементов последовательности).
Алгоритм 3.2. Последовательная обработка элементов с признаком конца W.
Ввод X; while (X != W)
{ Обработка X;
Ввод X; }

Слайд 8 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработкаЕсли количество

АСОИУ
Последовательная обработка
Если количество повторений n > 0, то возможно

использование цикла с постусловием
Ввод X;
do { Обработка X;
Ввод X; }
while (X != W);

Слайд 9 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка3. Входная

АСОИУ
Последовательная обработка
3. Входная последовательность X1, X2, ... , Xn

продолжается до конца входного файла, n - неизвестное заранее количество элементов (n >=0), признак конца отсутствует.
Алгоритм 3.3. Последовательная обработка элементов до конца файла.
Ввод X; while (не конец входного файла)
{ Обработка X;
Ввод X; }

Слайд 10 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка

АСОИУ
Последовательная обработка
Конец файла при вводе с

клавиатуры задается комбинацией клавиш Ctrl+Z и Enter.
В программе на языке С конец входного файла можно обнаружить после попытки ввода данных за пределами файла.
Например, значением функции scanf является количество фактически введенных элементов. Если не удалось ввести ни одного элемента, значение функции равно -1.

Слайд 11 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУПоследовательная обработка

АСОИУ
Последовательная обработка
Иногда в языке C можно

обойтись одной операцией ввода X, поместив ее внутри условия цикла.

while (ввод X и X != W) Обработка X;
while (ввод X и не конец входного файла) Обработка X;

Слайд 12 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательностиЗадача

АСОИУ
Сумма числовой последовательности
Задача 3.1. «Сумма числовой последовательности».
Определить сумму

и среднее арифметическое значение элементов заданной числовой последовательности.
а) Входная последовательность задается с указанием количества элементов n ≥ 0 в следующем порядке:
n X1 X2 ... Xn
Тест. Вход: 4 2 3.5 1.5 5 Выход: Сумма = 12.00 Среднее = 3.00

Слайд 13 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательностиИспользуем

АСОИУ
Сумма числовой последовательности
Используем алгоритм 3.1. для определения суммы элементов

числовой последовательности.
x – текущий элемент последовательности, s – текущее значение суммы элементов.
До начала цикла по вводу и обработке элементов величину s обнуляем. На каждом шаге цикла вводим одно очередное число и его значение добавляем к величине s.

Слайд 14 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательностиСхема алгоритма «Сумма числовой последовательности»

АСОИУ
Сумма числовой последовательности
Схема алгоритма «Сумма числовой последовательности»


Слайд 15 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательностиТрассировочная

АСОИУ
Сумма числовой последовательности
Трассировочная таблица исполнения алгоритма задачи «Сумма числовой

последовательности»

n=

s=

i=

x=

i<=n

Сумма=12.00
Среднее=3.00

4

0

1

+

2

2.0

2

+

3.5

5.5

3

+

1.5

7.0

4

-

5

12.0

5

+

Вывод


Слайд 16 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУСумма числовой последовательности/*

АСОИУ
Сумма числовой последовательности
/* Программа 3.1а. Сумма и среднее числовой

последовательности.*/ /* Задано количество чисел n>=0. */
#include void main(void)
{ int n; /* Количество чисел */ float x, /* Текущее число */ sum=0; /* Текущая сумма */ int i; /* Номер текущего числа */
scanf("%d", &n);
for ( i = 1; i <=n; i++) { scanf("%f", &x); /* Ввод текущего числа */
sum = sum + x; }
printf ("\n Сумма = %.2f\n Среднее = %.2f\n", sum, sum/n); }

Слайд 17 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

АСОИУ
Сумма числовой последовательности
/* Программа 3.1б. Сумма и среднее числовой

последовательности.*/ /* Задан признак конца W = 9999 */
#include #define W 9999 void main(void)
{ float x, /* Текущее число */ sum=0; /* Текущая сумма */
int k = 0; /* Количество чисел */
scanf ("%f", &x);
while (x != W) { sum = sum + x; k++;
scanf("%f", &x); }
if (k > 0)
printf ("\n Сумма = %.2f\n Среднее = %.2f\n", sum, sum/k); }

Слайд 18 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

АСОИУ
Сумма числовой последовательности
/* Программа 3.1в. Сумма и среднее числовой

последовательности.*/ /* Последовательность продолжается до конца файла */
#include void main(void)
{ float x, /* Текущее число */ sum=0; /* Текущая сумма */
int k = 0; /* Количество чисел */
while (scanf ("%f", &x) >0) /* ввод чисел до конца файла */
{ sum = sum + x; k++;}
if (k>0)
printf ("\n Сумма = %.2f\n Среднее = %.2f\n", sum, sum/k);
}

Слайд 19 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУМаксимум числовой последовательностиЗадача

АСОИУ
Максимум числовой последовательности
Задача 3.2.
«Максимум числовой последовательности»
Последовательность

вещественных чисел продолжается до конца файла. Составить программу нахождения максимального члена последовательности.
Тест. Вход: -5 3.1 2 Выход: Максимум = 3.100000

Слайд 20 Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.
КГТУ (КАИ), кафедра

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.КГТУ (КАИ), кафедра АСОИУМаксимум числовой последовательности

АСОИУ
Максимум числовой последовательности
Используем алгоритм 3.3. для обработки

последовательности.
x – текущий элемент последовательности, max – максимум просмотренной части последовательности.
Начальное значение max равно первому члену последовательности.
На каждом шаге цикла вводим одно очередное число и если очередное число оказывается больше max, оно заменяет максимум.

  • Имя файла: vetvleniya-posledovatelnaya-obrabotka-dannyh-yazyk-c-lektsiya-3.pptx
  • Количество просмотров: 127
  • Количество скачиваний: 0