Форум программистов, компьютерный форум CyberForum.ru

Непонятен текст задания - C++

Восстановить пароль Регистрация
 
лилиэн
6 / 6 / 0
Регистрация: 22.11.2012
Сообщений: 95
09.09.2013, 14:55     Непонятен текст задания #1
Вот задание:
b) Создать абстрактный тип данных (структура) - вектор, который имеет указатель на float и число элементов. Определить функции: инициализации, удаления вектора, установки/ изменения размера, доступа к элементам вектора, вычисления суммы элементов вектора. Для примера, в функции main, организовать поэлементное умножение двух векторов.
Не понимаю на счет числа элементов
Так как написано в тексте задания я понимаю что в структуре будет неопределенное число элементов ,а сколько именно мы будем хранить в определенном поле,и все эти элементы будут типа float.Но я не могу же создать структуру с неопределенным числом элементов.
я себе это представляю так:
C++
1
2
3
4
5
struct vector
{
   float *fpNum;
   int iCount;
}
тогда что могут иметь в виду под "вычисления суммы элементов вектора" и" установки/ изменения размера"
прошу просто объяснить чего они хотеть от меня то
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Петррр
 Аватар для Петррр
5915 / 3352 / 333
Регистрация: 28.10.2010
Сообщений: 5,926
09.09.2013, 14:58     Непонятен текст задания #2
Сумма элементов - зная количество элементов вектора (число хранится в поле iCount), ты считаешь сумму.
Изменение размера - ты перевыделяешь память под указатель fpNum, и в iCount записываешь новое количество элементов, и переписываешь все значения в новую память.
лилиэн
6 / 6 / 0
Регистрация: 22.11.2012
Сообщений: 95
09.09.2013, 15:24  [ТС]     Непонятен текст задания #3
Цитата Сообщение от Петррр Посмотреть сообщение
Сумма элементов - зная количество элементов вектора (число хранится в поле iCount), ты считаешь сумму.
Изменение размера - ты перевыделяешь память под указатель fpNum, и в iCount записываешь новое количество элементов, и переписываешь все значения в новую память.
Ну ок,допустим у меня 5 элементов...значит мне надо 5 указателей на каждый элемент...но я не могу в уже существующую структуру добавить или убрать указатель не так ли? так что все еще не понятно
Петррр
 Аватар для Петррр
5915 / 3352 / 333
Регистрация: 28.10.2010
Сообщений: 5,926
09.09.2013, 15:26     Непонятен текст задания #4
Указатель, это некая цифра, указывающая на начало участка памяти, которую вы выделили, а выделять память можно под сколько угодно элементов.
лилиэн
6 / 6 / 0
Регистрация: 22.11.2012
Сообщений: 95
09.09.2013, 15:45  [ТС]     Непонятен текст задания #5
Цитата Сообщение от Петррр Посмотреть сообщение
Указатель, это некая цифра, указывающая на начало участка памяти, которую вы выделили, а выделять память можно под сколько угодно элементов.
ну тоесть есть у меня в iCount хранится 5 то pfNum указывает на 1й из 5 элементов, а сразу после него хранится следущий и так далее,значит чтобы добраться до следущего мне достаточно сделать pfNum++ столько раз сколько у меня чисел...гениально блин) спасибки
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
09.09.2013, 18:38     Непонятен текст задания #6
Цитата Сообщение от лилиэн Посмотреть сообщение
pfNum++
не просто прибавить один, а прибавить размер ячейки массива
лилиэн
6 / 6 / 0
Регистрация: 22.11.2012
Сообщений: 95
10.09.2013, 09:20  [ТС]     Непонятен текст задания #7
Цитата Сообщение от Raali Посмотреть сообщение
не просто прибавить один, а прибавить размер ячейки массива
а разве он не знает сам размер своей ячейки..то есть если он float то он сдвигается на 1 float
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.09.2013, 09:40     Непонятен текст задания
Еще ссылки по теме:

C++ Дописать в конец a.jpeg некий секретный текст. Вывести этот текст на экран
C++ Немного непонятен алгоритм (в списке класса, состоящем из n строк и m столбцов, отмечаются выполненные лабораторные работы)
С++ Дан текст, составленный из строчных букв. Напечатать текст заглавными буквами C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,040
10.09.2013, 09:40     Непонятен текст задания #8
лилиэн,
может имелась ввиду структура такого типа
C++
1
2
3
4
5
struct MyVect
{
int Coint;
float data[0];
}
напрямую с ней работать нельзя (она и получается абстрактная)
вот как с ней можно работать
например выделяем память для структуры в которой пять float
C++
1
2
3
4
MyVect* mv= (MyVect*) new unsigned char[sizeof(MyVect)+sizeof(float)*5];
mv->Coint=5;
mv->data[0]=3.0;
mv->data[4]=4.0;
Yandex
Объявления
10.09.2013, 09:40     Непонятен текст задания
Ответ Создать тему
Опции темы

Текущее время: 03:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru