Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.22.240.205] |
|
Страницы: (2) [1] 2 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
в файл содержатся два ряда данных » дата»(в формате месяц, год) «курс валюты» .
считываю данные сначала двумерный массив типа double, затем значения из первого столбца массива заношу в вектор Date. vector<time_t>Date; <div> for (int i = 0; i < count_row; i++) { Date.push_back((time_t)massiv[i][0]);</div> <div> }</div> а сохраняются в ней только цифры, которые были введены до запятой. То есть от 01.2017 сохраняется 01 я в теме time полный нуль может подскажет кто-нибудь что делать ? |
Сообщ.
#2
,
|
|
|
Цитата Nelly0892 @ в файл содержатся два ряда данных » дата»(в формате месяц, год) «курс валюты» . считываю данные сначала двумерный массив типа double ... может подскажет кто-нибудь что делать ? www.ya.ru -> time_t c++ Одна из ссылок: mktime |
Сообщ.
#3
,
|
|
|
Цитата Nelly0892 @ сначала двумерный массив типа double А зачем тут double? Добавлено Цитата Nelly0892 @ может подскажет кто-нибудь что делать ? Дата в каком виде? ДД.ММ.ГГГГ? |
Сообщ.
#4
,
|
|
|
01.2017 то есть ММ.ГГГГ
Добавлено я пробую это число передать в структуру дд.мм.гггг. объявляю int day=01, month, year. и пробую извлечь в виде целых чисел месяц и год |
Сообщ.
#5
,
|
|
|
какое число? 01.2017 что это зачисло
|
Сообщ.
#6
,
|
|
|
struct my_date { int month; int year; } d; stringstream ss("01.2017"); ss >> d.month; ss.get(); ss >> d.year; std::cout << d.month << ' ' << d.year; оно? |
Сообщ.
#7
,
|
|
|
месяц 01 год 2017.
Добавлено ну это ведь только на выводе таким образом можно отделить месяц от года, а мне нужно для дальнейших расчетов, чтоб можно было вычитать по месяцам и годам и сортировать по годам или месяцам |
Сообщ.
#8
,
|
|
|
Цитата Nelly0892 @ чтоб можно было вычитать по месяцам и годам и сортировать по годам или месяцам А в чем проблема? |
Сообщ.
#9
,
|
|
|
Цитата Nelly0892 @ ну это ведь только на выводе таким образом можно отделить месяц от года, а мне нужно для дальнейших расчетов не только. Как хотите так и приеняйте. Вот вам сортировка двух таких дат: int compareMyDate(my_date &date0, my_date &date1){ int y = date0.year-date1.year; if(y!=0){ return y; } return date0.month-date1.month; } |
Сообщ.
#10
,
|
|
|
то есть вы так из double вытаскиваете отдельно 01 и отдельно 2017? вы сами то пробовали это делать? то есть элемент double из вектора DATA. кто-нибудь понимает вопрос?
|
Сообщ.
#11
,
|
|
|
понять вопрос может не каждый, точнее не только лишь все могут понять, мало кто может выделить из дабла 2017
|
Сообщ.
#12
,
|
|
|
Цитата Nelly0892 @ кто-нибудь понимает вопрос? Никто не понимает, и хранить дату в double абсурдная идея. Лучше опиши задачу целиком. |
Сообщ.
#13
,
|
|
|
вобщем, есть два ряда данных
01.2017 -525 02.2017 -571 03.2017 -363 04.2017 -384 05.2017 -537 06.2017 -671 в vector<double>Vx передаю первый столбец и мне нужно преобразовать его к типу time_t сейчас делаю так по первой подсказке в этой теме. только вот на выводе где последняя строка, получаю "-1" struct tm *timeinfo = new tm; int day; int month; int year; vector<time_t>Data; time_t DD; double D; double g; //int year; //double mm, day; //int month; day = 1; for (int i = 0; i < count_row; i++) { D = Vx[i]; year = (int)(modf(D, &g) * 10000); month = (int)g; timeinfo->tm_year = year; timeinfo->tm_mon = month; timeinfo->tm_mday = day; DD = mktime(timeinfo); cout << "Date " << DD << "\n"; } |
Сообщ.
#14
,
|
|
|
Цитата Nelly0892 @ сейчас делаю так по первой подсказке в этой теме. плохая подсказка, используй мою. Добавлено Цитата Nelly0892 @ в vector<double>Vx передаю первый столбец В vector<double>Vx не может передаваться первый столбец. Точне дату в нем можно закодировать, но я сомневаюсь что это так. Покажи код, где заполняется Vx. Добавлено Цитата Nelly0892 @ year = (int)(modf(D, &g) * 10000); Это что за магическая формула? Добавлено Другими словами, что если кто-то умудрился закодировать в double 2 числа, то мы не сможем подсказать как их получить обратно без знаия алгоритма (или формулы) кодирования. С другой стороны где-то было написано Цитата в вектор Vx и Vy считываю из файла Лучше при чтении не использовать double, а использовать структуру наподобие моей. Добавлено Если есть код чтения из файла, то лучше показать его здесь. |
Сообщ.
#15
,
|
|
|
да что не понятно-то? кто-то решил, что хранить дату в дабле вида: целая часть - то месяц, а дробная - год, хорошая идея
|