Меню
Разработки
Разработки  /  Информатика  /  Презентации  /  Прочее  /  Массивы и параметрические циклы

Массивы и параметрические циклы

Презентация использовалась на занятиях профессионального модуля в ОПК СТИ НИТУ МИСиС

21.12.2017

Содержимое разработки

Тема 2  Разработка программ с циклами   Лекция 2. 3 . Массивы и параметрические циклы.

Тема 2

Разработка программ с циклами Лекция 2. 3 .

Массивы и параметрические циклы.

Литература Основная: Подбельский В.В., Фомин С.С. Программирование на языке Си: Учеб. пособие. – М.: Финансы и статистика, 2004. Дополнительная: С/ C ++ Структурное программирование. Практикум. Программирование на языке высокого уровня. Питер, 2004. Юркин А. Задачник по программированию. Гриф МО. Учебное пособие, Питер, 2002. Шмидт Г. Самоучитель Си++. СПб.: БХВ – Петербург, 2004.

Литература

Основная:

Подбельский В.В., Фомин С.С. Программирование на языке Си: Учеб. пособие. – М.: Финансы и статистика, 2004.

Дополнительная:

С/ C ++ Структурное программирование. Практикум. Программирование на языке высокого уровня. Питер, 2004.

Юркин А. Задачник по программированию. Гриф МО. Учебное пособие, Питер, 2002.

Шмидт Г. Самоучитель Си++. СПб.: БХВ – Петербург, 2004.

Вопросы: 1. Массивы и переменные с индексом. 2. Параметрические циклы  for . 3. Вложенные циклы. 4. О ператоры b reak  и  continue .

Вопросы:

1. Массивы и переменные с индексом.

2. Параметрические циклы for .

3. Вложенные циклы.

4. О ператоры b reak и continue .

1. Массивы и переменные с индексом

1. Массивы и переменные с индексом

Массив объединяет совокупность однотипных переменных. Массивы бывают одномерные и многомерные. Описание одномерного массива включает: 1. Указание типа элементов . Применяются такие же типы как и у простых переменных; 2. Наименование . Выбирает программист по обычным правилам; 3. Количество элементов массива . Запись количества элементов производится в квадратных скобках. Элементы массива нумеруются, начиная с нуля . Примеры объявления одномерных массивов: int x [30]; float y [12];  Первое объявление – описание одномерного массива

Массив объединяет совокупность однотипных переменных. Массивы бывают одномерные и многомерные.

Описание одномерного массива включает:

1. Указание типа элементов . Применяются такие же типы как и у простых переменных;

2. Наименование . Выбирает программист по обычным правилам;

3. Количество элементов массива . Запись количества элементов производится в квадратных скобках.

Элементы массива нумеруются, начиная с нуля .

Примеры объявления одномерных массивов:

int x [30];

float y [12];

Первое объявление – описание одномерного массива " х " из 30 величин типа int с номерами х [0] , х [1], ..., х [29];

Второе объявление – описание одномерного массива " y " из 12 величин типа float с номерами y [0] , y [1], ..., y [11].

Обращение к элементу массива Указывается имя массива и индекс (номер элемента в массиве) у[2] у[ i ] х[2* j ] Значение индекса должно быть целой положительной величиной – константой, переменной, выражением целого типа. Элементы массива можно применять везде, где применялись простые переменные.

Обращение к элементу массива

Указывается имя массива и индекс (номер элемента в массиве)

у[2]

у[ i ]

х[2* j ]

Значение индекса должно быть целой положительной величиной – константой, переменной, выражением целого типа.

Элементы массива можно применять везде, где применялись простые переменные.

Двумерные массивы Пример объявления двумерного массива

Двумерные массивы

Пример объявления двумерного массива " y 1"

float y 1[10][5];

Нумерация элементов (расположение элементов в памяти)

y [0][0], y [0][1], ..., y [0][4], y [1][0], ..., y [9][4].

При размещении первым изменяется правый индекс.

Обращение к элементу массива производится по имени массива и двум индексам, например

у[ i ][2* j ]

Одномерный и двумерный массив соответствует в математике понятию вектор , матрица соответственно.

Возможно объявление и использование массивов большей мерности (трехмерных, четырехмерных и т.д.).

2. Параметрические циклы  for

2. Параметрические циклы for

Цикл типа for for ( операторы 1 ;  условие ;  операторы 2 )  {  тело цикла ;  } Схема  выполнения  цикла операторы 1 Ложно Условие Истинно тело цикла операторы 2

Цикл типа for

for ( операторы 1 ; условие ; операторы 2 )

{

тело цикла ;

}

Схема выполнения цикла

операторы 1

Ложно

Условие

Истинно

тело цикла

операторы 2

Вычислить значение функции y  с точностью delta Очередной i +1 член ряда z i +1  формируется на основе предыдущего z i по соотношению z i +1 = – z i * x /( i +1), начальные значения z 1= x , i = 1.

Вычислить значение функции y с точностью delta

Очередной i +1 член ряда z i +1 формируется на основе предыдущего z i по соотношению

z i +1 = – z i * x /( i +1),

начальные значения z 1= x , i = 1.

delta;) //операторов 1 и 2 нет { i=i+1; yi= –yi*x/i; y=y+yi; } Второй вариант записи фрагмента программы for (y=x,i= 1 ,yi=x; fabs(yi)delta; i++ , yi*= –x/i, y+= yi ); //тела цикла нет Третий вариант записи фрагмента программы for(y = x,i =1 ,yi = x ; fabs(yi) delta;) { i ++ ; yi * = –x/i; y + =yi; } " width="640"

Первый вариант записи фрагмента программы

y = x ; i =1; yi = x ;

for(;fabs(yi)delta;) //операторов 1 и 2 нет {

i=i+1;

yi= –yi*x/i;

y=y+yi; }

Второй вариант записи фрагмента программы

for (y=x,i= 1 ,yi=x; fabs(yi)delta;

i++ , yi*= –x/i, y+= yi ); //тела цикла нет

Третий вариант записи фрагмента программы

for(y = x,i =1 ,yi = x ; fabs(yi) delta;) { i ++ ;

yi * = –x/i;

y + =yi; }

Программа расчета среднего балла по учебной дисциплине в группе (количество курсантов в группе не более 35) #include  void main() {  int oz[35], i, j, kur;  float  sb ;  m1: printf (

Программа расчета среднего балла по учебной дисциплине в группе (количество курсантов в группе не более 35)

#include

void main()

{

int oz[35], i, j, kur;

float sb ;

m1: printf ("\nVvedite kol-vo kursantov, ot 1 do 35 chelovek \nkur= ");

scanf("%d",&kur);

if (kur35)

{

printf("\nKol-vo kursantov d. b . ot 1 do 35. Povtorite vvod");

goto m1;

}

 printf(

printf("\nVvedite ozenki\n");

for(j=0; j

/*расчет среднего балла*/

for (sb=0, j=0; j

printf("\nSredniy ball= %4.2f\n", sb/kur);

}

3. Вложенные циклы

3. Вложенные циклы

Расчет среднего балла по 6 учебным дисциплинам  int oz[35][6], i, j, kur, dis; float  sb ;  … for (i=0; i  {  for (sb=0, j=0; j  printf(

Расчет среднего балла по 6 учебным дисциплинам

int oz[35][6], i, j, kur, dis;

float sb ;

for (i=0; i

{

for (sb=0, j=0; j

printf("\nDisziplina № %d: Sredniy ball = %4.2f", i+1, sb/kur);

}

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

4 . О ператоры b reak  и  continue .

4 . О ператоры b reak и continue .

Оператор break передает управление к оператору, следующему за циклом. y=x; i=1; yi=x; while (1) //заведомо истинное условие  {  i++;  yi*=–x/i; y+=yi;   if  (fabs(yi)  } Применения при проверке правильности исходных данных while ( 1 ) //заведомо истинное условие  {  scanf (35) printf ("\ n Kol-vo kursanov d. b . ot 1 do 35 . Povtorite vvod ”); else break ; } " width="640"

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

y=x; i=1; yi=x;

while (1) //заведомо истинное условие

{

i++; yi*=–x/i; y+=yi;

if (fabs(yi)

}

Применения при проверке правильности исходных данных

while ( 1 ) //заведомо истинное условие

{

scanf ("% d ",& kur );

if ( kur kur 35) printf ("\ n Kol-vo kursanov d. b . ot 1 do 35 . Povtorite vvod ”); else break ;

}

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

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

Вопросы для самоподготовки 1. Назначение массивов, размерность массивов. 2. Понятие индекса массива, тип значений и диапазон изменения индекса. 3. Назначение цикла типа for . 4. Сущность этапов выполнения цикла типа for . 5.  Формы записи цикла типа for . 6. Требования к оформлению вложенных циклов.

Вопросы для самоподготовки

1. Назначение массивов, размерность массивов.

2. Понятие индекса массива, тип значений и диапазон изменения индекса.

3. Назначение цикла типа for .

4. Сущность этапов выполнения цикла типа for .

5. Формы записи цикла типа for .

6. Требования к оформлению вложенных циклов.

6, n 100) . " width="640"

Составление программ инженерных задач с параметрическими циклами

Задача 1

Составить программу для расчета среднего значения и среднеквадратического отклонения результатов измерений вещественных величин. Количество измерений и результаты измерений задаются вводом.

Расчетные соотношения:

среднее значение

R ср = (r(1) + r(2) + …+ r(n)) / n;

среднеквадратическое отклонение

S = {(r(1)*r(1) + r(2)*r(2) + …+ r(n)*r(n)) / n - R ср *R ср } 0,5 .

Здесь r(i) – результаты измерений, n - количество измерений ( n 6, n 100) .

100* T в (i) . " width="640"

Задача 2

Составить блок схему алгоритма и программу для расчета коэффициента готовности K г_с , среднего времени безотказной работы To и среднего времени восстановления работоспособности T в_с системы, состоящей из n элементов.

Исходные данные:

- количество элементов системы n ;

- среднее время безотказной работы элемента To(i) ;

- среднее время восстановления работоспособности элемента T в (i) ;

Все величины неотрицательные, кроме того, n , расчетные соотношения справедливы при To(i) 100* T в (i) .

Расчетные соотношения: K г_с = To _с/( To _с + T в_с) . Коэффициент готовности системы. K г( i ) = To ( i ) /( To ( i ) + T в( i )) . Коэффициент готовности  элемента. K г_с = 1 – (1 - K г( 1 ) )*(1 - K г( 2 ) )*…*(1 - K г( n ) ) . T в_с = (T в( 1 ) /To ( 1 ) + T в( 2 ) /To ( 2 ) + …+ T в( n ) /To ( n ) )/(1/To ( 1 ) + + 1/To ( 2 ) + … + 1/To ( n ) ) . To _с = T в_с * K г_с *(1 - K г_с ) .

Расчетные соотношения:

K г_с = To _с/( To _с + T в_с) . Коэффициент готовности системы.

K г( i ) = To ( i ) /( To ( i ) + T в( i )) . Коэффициент готовности элемента.

K г_с = 1 – (1 - K г( 1 ) )*(1 - K г( 2 ) )*…*(1 - K г( n ) ) .

T в_с = (T в( 1 ) /To ( 1 ) + T в( 2 ) /To ( 2 ) + …+ T в( n ) /To ( n ) )/(1/To ( 1 ) +

+ 1/To ( 2 ) + … + 1/To ( n ) ) .

To = T в_с * K г_с *(1 - K г_с ) .

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

Задания к летучке

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

Вариант 1

Вариант 1

-80%
Курсы дополнительного образования

Создание динамических веб-страниц с помощью PHP и MySQL

Продолжительность 72 часа
Документ: Cвидетельство о прохождении курса
4000 руб.
800 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Массивы и параметрические циклы (180.5 KB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт

Пользовательское соглашение Политика обработки персональных данных Политика использования файлов cookie
Учителю!
Огромная база учебных материалов на каждый урок с возможностью удаленного управления
Тесты, видеоуроки, электронные тетради