Разделы презентаций


Технологии программирования

Содержание

Лекция 6. Массивы в C++.Массив — это структура данных, представленная в виде группы ячеек одного типа, объединенных под одним единым именем. Свойства массивов в массиве хранятся отдельные значения, которые называются элементами;

Слайды и текст этой презентации

Слайд 1Технологии программирования
Доц. каф. «Медиаменеджмента и медиапроизводства» Евич Л.Н.

Технологии программированияДоц. каф. «Медиаменеджмента и медиапроизводства» Евич Л.Н.

Слайд 2Лекция 6. Массивы в C++.
Массив — это структура данных, представленная

в виде группы ячеек одного типа, объединенных под одним единым

именем.

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

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

Лекция 6. Массивы в C++.Массив — это структура данных, представленная в виде группы ячеек одного типа, объединенных

Слайд 3Лекция 6. Массивы в C++.
Инициализация массивов
Массив можно инициализировать одним

из трех способов:

при создании массива - используя инициализацию по

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

При создании в массив могут быть занесены только константные значения. Впоследствии в массив можно записывать и значения переменных.
Лекция 6. Массивы в C++.Инициализация массивов Массив можно инициализировать одним из трех способов: при создании массива -

Слайд 4Одномерные массивы в С++.
Синтаксис  объявления одномерного массива в С++
/*тип данных*/ 

/*имя одномерного массива*/ [/*размерность одномерного массива*/];

Пример
short a[5];
Индекс представляет собой

смещение адреса по отношению к базовому адресу первого элемента.
Одномерные массивы в С++.Синтаксис  объявления одномерного массива в С++/*тип данных*/  /*имя одномерного массива*/ [/*размерность одномерного массива*/];Примерshort a[5];

Слайд 5Одномерные массивы в С++.
Инициализацию по умолчанию
Глобальные массивы (расположенные вне любой

функции), а также массивы, объявленные статическими внутри функции, по умолчанию

заполняются нулями, если не заданы начальные значения элементов массива.

#define SIZE1 10
int ar1[SIZE1]; /* глобальный массив */
 
void main() {
#define SIZE2 12
static int ar2[SIZE2]; /* статический массив */
}

Одномерные массивы в С++.Инициализацию по умолчаниюГлобальные массивы (расположенные вне любой функции), а также массивы, объявленные статическими внутри

Слайд 6Одномерные массивы в С++.
Явная инициализация
int iarray[3] = {-1,0, 1}; /*

при запуске программы осуществляется резервирование ячеек памяти для массива iarray

с одновременной записью значений в эти ячейки */
static float fvar[4] = {1.1314,-0.25,25E0,-.11E1}; /* при инициализации указано меньше значений, чем элементов массива, оставшиеся элементы по умолчанию примут нулевые значения.*/
static int ideoimal[3] = {0,1, 2, 3, 4, 5, 6, 7, 8, 9}; /* при инициализации указано больше значений, чем элементов массива. Компилятор рассматривает подобную ситуацию как ошибку. */
Одномерные массивы в С++.Явная инициализацияint iarray[3] = {-1,0, 1}; /* при запуске программы осуществляется резервирование ячеек памяти

Слайд 7Одномерные массивы в С++.
Инициализация безразмерных массивов
char Inp[] = "Введите значения

от 0 до 9.\n";
char simv[]={'A','a','E','e','I','i','O','o','U','u'};
int data[]={1,2,3,4,5,6,7,8,9,10};
/* В процессе инициализации массива,

для которого не задан размер, компилятор автоматически создаст массив такого размера, чтобы вместить все указанные элементы. */
Одномерные массивы в С++.Инициализация безразмерных массивовchar Inp[] =

Слайд 8Обращение к элементам массива
Обращение к определенному элементу одномерного массива осуществляется

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

индекса элемента.

В этом массиве значение элемента A[4] равно 9.

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

Слайд 9Обращение к элементам массива
Если элементу массива с индексом 2 присвоить

значение -6
(A[2]=-6), а элементу массива с индексом 5 присвоить

значение элемента с индексом 9 (A[5]=A[9]), то массив примет вид:
Обращение к элементам массиваЕсли элементу массива с индексом 2 присвоить значение -6 (A[2]=-6), а элементу массива с

Слайд 10Обращение к элементам массива
Пример 1

#include ;
#include ;
using namespace std;
void

main() {
setlocale(LC_ALL, "Russian");
char Inp[] = "Введите значения от

0 до 9." ;
cout << Inp << endl;
int data[]={1,2,3,4,5,6,7,8,9,10};
cout << data << endl;
char simv[] = {'A','a','E','e','I','i','O','o','U','u'};
cout << simv << endl;
float fvar[4] = {1.1314,-0.25,25E0,-.11E1};
cout << fvar[0]<<" "<< fvar[1]<<" "<< fvar[2]<< " "<<
fvar[3] << endl;
getchar();
}
Обращение к элементам массива Пример 1#include ;#include ;using namespace std;void main() { setlocale(LC_ALL,

Слайд 11Обращение к элементам массива
Пример 1

#include ;
#include ;
using namespace std;
void

main() {
setlocale(LC_ALL, "Russian");
char Inp[] = "Введите значения от

0 до 9." ;
cout << Inp << endl;
int data[]={1,2,3,4,5,6,7,8,9,10};
cout << data << endl;
char simv[] = {'A','a','E','e','I','i','O','o','U','u'};
cout << simv << endl;
float fvar[4] = {1.1314,-0.25,25E0,-.11E1};
cout << fvar[0]<<" "<< fvar[1]<<" "<< fvar[2]<< " "<<
fvar[3] << endl;
getchar();
}

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

Обращение к элементам массива Пример 1#include ;#include ;using namespace std;void main() { setlocale(LC_ALL,

Слайд 12Обращение к элементам массива
Пример 2


//Вывод элементов массива
#include ;
#include ;
using

namespace std;
void main() {
char simv[] = {'A','a','E','e','I','i','O','o','U','u','\0'};

cout << simv << endl;
getchar();
}
Обращение к элементам массива Пример 2//Вывод элементов массива#include ;#include ;using namespace std;void main() {  char simv[]

Слайд 13Обращение к элементам массива
Пример 3

#include ;
#include ;
using namespace std;
#define

SIZE1 10
int ar1[SIZE1]; /* глобальный массив */
void main() {

#define SIZE2 12
static int ar2[SIZE2]; /* статический массив */
for (int i=0; i cout<< ar1[i];
cout< for (int i=0; i cout<< ar2[i];
cout< getchar();
}
Обращение к элементам массива Пример 3#include ;#include ;using namespace std;#define SIZE1 10int ar1[SIZE1]; /* глобальный массив */void

Слайд 14Обращение к элементам массива
Пример 4
// Ввод/вывод элементов массива
#include ;
#include

;
using namespace std;
#define SIZE1 10
void main() {
int ar1[SIZE1];

for (int i=0; i> ar1[i];
for (int i=0; i cout << endl;
getchar(); getchar();
}
Обращение к элементам массива Пример 4// Ввод/вывод элементов массива#include ;#include ;using namespace std;#define SIZE1 10void main() {

Слайд 15Обращение к элементам массива
При работе с массивами следует помнить, что

индекс в обращении к элементу массива не должен превышать его

размер. При выходе за пределы массива компилятор С++ не выдает сообщения об ошибке, однако выход за пределы массива может привести к непоправимым результатам.
Пример 5
// Выход за пределы массива
// НЕ запускайте эту программу.
#include ;
#include ;
using namespace std;
#define SIZE1 10
void main() {
int ar1[SIZE1];
for (int i=1; i<=SIZE1; i++) cin >> ar1[i];
for (int i=1; i<=SIZE1; i++) cout << ar1[i] << "\t";
cout << endl;
getchar(); getchar();
}
Обращение к элементам массиваПри работе с массивами следует помнить, что индекс в обращении к элементу массива не

Слайд 16Дана последовательность действительных чисел a0, a1, …, a9. Составить программу,

которая меняет местами значения 3-го и 9-го элементов этой последовательности

и выводит полученную последовательность на экран.
Пример 6
#include ;
#include ;
#include ;
#include ;
using namespace std;
#define SIZE1 10
void main() {
srand(time(NULL));
int ar1[SIZE1], b;
for (int i=0; i for (int i=0; i cout << endl;
b=ar1[3]; ar1[3]=ar1[9]; ar1[9]=b;
for (int i=0; i cout << endl;
getchar();
}
Дана последовательность действительных чисел a0, a1, …, a9. Составить программу, которая меняет местами значения 3-го и 9-го

Слайд 17Дано натуральное число n и последовательность действительных чисел a0, a1,

…, an-1. Составить программу, которая находит наибольший элемент последовательности.
Пример

7
#include ;
#include ;
#include ;
#include ;
using namespace std;
#define SIZE1 100
void main() {
srand(time(NULL));
int ar1[SIZE1], max, n;
cin>>n;
for (int i=0; i for (int i=0; i cout << endl;
max=ar1[1];
for (int i=1; imax) max=ar1[i];
cout << max << " " << endl;
getchar(); getchar();
}
Дано натуральное число n и последовательность действительных чисел a0, a1, …, an-1. Составить программу, которая находит наибольший

Слайд 18Лекция 6. Массивы в C++.
Задания для самостоятельной работы
43. Ниже представлена

программа, в ходе выполнения которой значения элементов массива сначала задаются,

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

#include ;
#include ;
using namespace std;
#define SIZE1 13
void main() {
int ar1[SIZE1], d;
for (int i=0; i ar1[i]=i+2;
d=ar1[10];
for (int i= SIZE1-1; i>=0; i--)
ar1[i]=ar1[i-1];
ar1[0]=d-11;
for (int i=0; i cout << ar1[i] << " ";
getchar();
}
Лекция 6. Массивы в C++.Задания для самостоятельной работы43. Ниже представлена программа, в ходе выполнения которой значения элементов

Слайд 19Лекция 6. Массивы в C++.
Задания для самостоятельной работы
Дано натуральное число

n (n ≤100). Составьте программу, которая заполняет одномерный массив,

состоящий из n элементов, последовательностью чисел: 1, 3, 5, 7, … .
Составьте программу, которая заполняет одномерный массив двадцатью первыми натуральными числами, кратными 5-ти или 7-ми. Полученный массив вывести на экран.
Даны натуральные числа n, a0, a1, …, an-1. Составьте программу, которая определяет количество членов последовательности a0, a1, …, an-1 с чётными индексами и нечетными значениями.
Даны натуральные числа n, a0, a1, …, an-1. Составьте программу, которая вычисляет сумму тех элементов последовательности a0, a1, …, an-1, которые нечётны и не кратны 3..
Даны натуральное число n и последовательность целых чисел a0, a1, …, an-1. Составьте программу, которая находит наибольший элемент, имеющий нечётный порядковый номер в данной последовательности..


Лекция 6. Массивы в C++.Задания для самостоятельной работыДано натуральное число n (n ≤100). Составьте программу,  которая

Слайд 20Лекция 6. Массивы в C++.
Задания для самостоятельной работы
Даны натуральное число

n и последовательность действительных чисел a0, a1, …, an-1. Составьте

программу, которая все отрицательные элементы последовательности делит на значение наибольшего элемента. Полученную последовательность вывести на экран.
Дано натуральное число n. Составьте программу, которая образовывает массив B, состоящий из положительных элементов заданного одномерного массива A(n), больших пяти. Вывести на экран образованный массив и количество его элементов.
Даны натуральное число n и два одномерных массива X(n) и Y(n). Составьте программу, которая находит максимальную разность между соответствующими элементами массивов X(n) и Y(n) с чётными номерами.
Лекция 6. Массивы в C++.Задания для самостоятельной работыДаны натуральное число n и последовательность действительных чисел a0, a1,

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

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

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

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


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

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