Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Использование динамических данных

Цель: Научиться работать с динамическими массивами, размер которых заранее неизвестен.

 

 

Блок-схема:

 

Код программы:

// Функции ввода-вывода

#include < iostream>

#include < stdio.h>

using namespace std;

int main()

{

// Открываем текстовый файл для чтения

FILE *f = fopen(" array.txt", " rt");

// В случае неудачного открытия завершаем работу программы

if (! f) return 0;

// Размер массива

int n = 0;

// Массив

double *arr;

// Считываем размер массива из файла

fscanf(f, " %d\n", & n);

// Если размер некорректен, заверщаем работу программы

if (n < = 0) return 0;

// Выделяем динамическую память под массив

arr = new double[n];

// Заполняем массив, считывая его элементы из файла

cout < < " Array: " < < endl;

for (int i = 0; i < n; i++)

{

fscanf(f, " %lf\n", & arr[i]);

cout< < arr[i]< < " \t";

}

cout< < endl;

// Считаем среднее значение, проходя циклом по элементам

double mean = 0;

for (int i = 0; i < n; i++)

{

mean += arr[i];

}

mean /= n;

cout< < " Mean value = " < < mean< < endl;

// Очищаем динамическую память

delete [] arr;

// Закрываем файл

fclose(f);

system(" pause");

return 0;

}


 

Вывод на экран

Описание:

Для работы с файлом используются функции из заголовочного файла stdio.h. Для открытия файла используется функции fopen, для чтения из файла – функция fscanf. При открытии необходимо проверить корректность операции, если файл открыт некорректно, программа завершает работу. При считывании размера массива из файла необходимо также проверить его корректность: это должно быть положительное число. Для выделения и удаления динамической памяти используются функции new и delete.

 

Вывод:

Для управления динамической памятью в C++ можно использовать функции new и delete. Функция new позволяет создавать динамические массивы – массивы, размер которых определяется на этапе работы программы.

В данной работе был создан динамический массив и считан из текстового файла. Проведена работа с данными – вычислено среднее арифметическое в данном массиве.

<== предыдущая лекция | следующая лекция ==>
Предлагаем вашему вниманию необходимый инструмент и оснастку | Феохромоцитома.
Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.006 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал