ЧАСТЬ 3

ИНФОРМАТИКА

Электронное учебно-методическое пособие

 

 
 

 

4.10. Массивы

Массив – совокупность данных одного типа.
Одномерный массив объявляется так:

тип <имя> [количество элементов];

Двумерный массив объявляется так:

тип <имя> [количество строк][количество столбцов];

В памяти компьютера двумерный массив располагается последовательно по строкам [14].

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

Для доступа к элементу массива используется специальная операция индексирования. Значения индекса начинаются с нуля. Последний индекс равен количеству элементов минус один. Контроль выхода за границы массива возлагается на программиста.


Например:
int A[3] ; // объявление массива из 3х элементов целого типа выделяется
// 3*sizeof(int) байт памяти
A[0]=11; // присваивание первому элементу значения 11
cout<<A[0]<<’\n’; // Вывод 11 на экран
++A[0]; //Увеличение первого элемента на 1
cout<<A[0]<<’\n’; // Вывод 12 на экран


4.11. Операторы

Самый обычный вид оператора – оператор-выражение. Такой оператор состоит из выражения, за которым следует точка с запятой. Например:

a = b*3+c;
cout << "иду на грозу";

Простейшей формой оператора является пустой оператор:

;

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


4.12. Блоки


Блок – это возможно пустой список операторов, заключённый в фигурные скобки:

{ a=b+2; b++; }

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


4.13. Операторы if


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

#include <iostream.h>
main()
{ const float fac = 2.54;
float x, in, cm; char ch = 0;
cout << "введите длину: "; cin>> x >> ch;
if (ch == 'i') // i - дюймы
{ in = x; cm = x*fac; }
else if (ch == 'c') // cm - сантиметры
{ in = x/fac; cm = x; }
else in = cm = 0;
cout << " in=" << in << "cm =" << cm \n; }

Здесь при вводе с клавиатуры числа 5i программа считает и выводит на экран результат в сантиметрах. Условие в операторе if должно быть заключено в круглые скобки.


4.14. Оператор switch


Оператор switch производит сопоставление значения с множеством констант. Проверки в предыдущем примере можно записать так:

switch (ch) {
case 'i': {in = x; cm = x*fac; break;}
case 'c': {in = x/fac; cm = x; break; }
default: { in = cm = 0; break; }

}

cout << " in=" << in << "cm =" << cm \n; }

Операторы break применяются для выхода из оператора switch.

Константы в вариантах case должны быть различными, и если проверяемое значение не совпадает ни с одной из констант, выбирается вариант default. Программисту не обязательно предусматривать default.

 

 


© Сибирская государственная геодезическая академия (СГГА), 2011