Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Архив1 / doc200 / лаб 4

.doc
Скачиваний:
18
Добавлен:
01.08.2013
Размер:
15.36 Кб
Скачать

Лабораторная работа №4

Дисциплина ОАП

Студента группы 3ПМ-210

Журина Андрея

Указатели на одномерные массивы.

1. Цель работы:

Целью лабораторной работы является получение практических навыков в работе с

указателями и с адресной арифметикой в языке C ++.

2. Темы для предварительной проработки:

· Указатели. Типизированные указатели.

· Указатели и массивы.

· Адресная арифметика.

· Динамическое выделение памяти.

3. Задания для выполнения

· Выполнить задание лабораторной работы 1 с такими дополнительными условиями:

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

диапазоне -50 - 50;

в тексте программы запрещается применять операцию индексации.

· Вариант 11 — Найти количество пар соседних элементов, которые имеют

· одинаковые абсолютные значения, но противоположные знаки.

4. Текст программы:

#include <iostream>

#include <stdlib.h>

using namespace std;

int main()

{

//setlocale(LC_ALL, ".1251");

int size = rand() % 50;

int *mas = new int[size], *mas_el, kol_par = 0;

cout << "Размер массива: " << size << endl;

cout << "Массив: \n";

for(mas_el = mas; mas_el < mas + size; mas_el++) {

*mas_el = rand() % (-50) - rand() % 50;

cout << *mas_el << " ";

}

cout << "\n\n";

for(int i = 0; i < size-1; i++) {

if(abs(*(mas+i)) == abs(*(mas+i+1)) && *(mas+i) + *(mas+i+1) == 0 &&

*(mas+i) != 0)

kol_par++;

}

cout << "Кол-во пар: " << kol_par << endl;

//system("pause");

return 0;

}

5. Результат выполнения программы:

Размер массива: 33

Массив:

9 -28 -1 -7 9 -13 -4 -14 4 25 1 -3 18 6 6 -20 -11 -26 -5 13 2 -15 -11 9 7 -15

24 11 -26 26 -9 -9 -41

Кол-во пар: 1

Соседние файлы в папке doc200