На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Qraizer, Hsilgos
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
> как преобразовать из double в time_t ?
    void readData() {
    double **massiv;

    massiv = new double*[count_row];

    for (int i = 0; i < count_row; i++)
    {
    massiv[i] = new double[count_col];
    }

    //считываем матрицу из файла
    for (int i = 0; i < count_row; i++)
    {
    for (int j = 0; j < count_col; j++)
    {
    massiv[i][j] = v.at(i*count_col + j);
    }
    }

    for (int i = 0; i < count_row; i++)
    {
    Vi.push_back(massiv[i][0]);

    Vj.push_back(massiv[i][1]);


    }

    this->count_row = count_row;
    this->count_col = count_col;
    this->v = v;
    this->Vx = Vi;
    this->Vy = Vj;






    }

    Добавлено
    поверьте, Vx у меня заполняется полностью

    Добавлено
    а из вашей подсказки я отдельно месяц и год никак не получу в формате time_t

    Добавлено
    кароче, сама справлюсь. всем спасибо
      Ааа. Я теперь понял как у Nelly0892 используется double: считывается месяц в целой части, а год в дробной.
      Сразу говор: так делать нельзя. Выделить обратно год и месяц, в принципе, можно, но не нужно.
      ExpandedWrap disabled
        #include <limits>
        ...
        int month, year;
        month = static_cast<int>(Vx[i]);
        year = static_cast<int>( (Vx[i] - month + std::numeric_limits<double>::epsilon()) * 10000.0 );
        std::cout << month << ' ' << year;

      Но делать так все равно нельзя.

      Добавлено
      Цитата Nelly0892 @
      //считываем матрицу из файла

      Тут нет обращения к файлу. v - это вообще что такое?
      Сообщение отредактировано: shm -
        ну я просто весь код не скинула
          а ты скинь! желательно с 12го этажа :crazy:
            в векторе v хранятся все данные из файла

            Добавлено
            ну окей, только вопрос то был ни в том как структуру сделать

            Добавлено
            тяжко у вас тут на форуме, очень тяжко
              в жизни еще тяжелее будет :whistle: тебе, деточка, пытаются показать, как надо делать, прозрачно намекая, что хранить время в дабле, а считывать из файла векторы - не есть гуд
                это для программиста не есть гуд, а аналитики именно так в файл и сохраняют. так что работа чисто под заказчика

                Добавлено
                да блин, разобрались с double. но че-то никто не заметил что я там mktime(timeinfo); использую

                вот тут вся соль
                  угу, один аналитик вектор со временем сохраняет, второй вектор даблов читает :lool:
                    Цитата shm @
                    а из вашей подсказки я отдельно месяц и год никак не получу в формате time_t

                    Ну если есть непреодолимое желание забивать гвозди микроскопом:
                    ExpandedWrap disabled
                      #include <limits>
                      #include <cstring>
                      #include <ctime>
                      ...
                      int month, year;
                      month = static_cast<int>(Vx[i]);
                      year =  static_cast<int>((Vx[i] - month + std::numeric_limits<double>::epsilon()) * 10000.0);
                          
                      tm tmm;
                      memset(&tmm, 0, sizeof(tmm));
                      tmm.tm_year = year - 1900;
                      tmm.tm_mon = month - 1;
                      tmm.tm_mday = 1;
                      time_t time = mktime(&tmm);
                       
                      //в переменной time время формата time_t
                      std::cout << ctime(&time);

                    Хотя я бы настоятельно рекомендовал прислушаться к моим советам выше.
                    Сообщение отредактировано: shm -
                      ну а если ты, аналитик, по гост ескд говоришь, так там работают в текстовом формате, ибо еще и табуляция формализована. ну то есть читают/пишут строки и парсят/компонуют их. но вы, конечно, вольны и левой пяткой в правом ухе :-?
                        Цитата Nelly0892 @
                        а аналитики именно так в файл и сохраняют

                        Попробуй сохрани так 2010 год. :whistle:

                        Добавлено
                        У тебя сохранится .201, хотя мой последний алгоритм будет работать и с этим. Хотя в целом это бред.

                        Добавлено
                        Цитата Nelly0892 @
                        тяжко у вас тут на форуме, очень тяжко

                        А что тяжкого-то? Во-первых пришлось применить экстрасенсорные способности, чтобы понять способ кодирования двух чисел в double т.к. этого описано не было. Во-вторых данный способ помимо того, что бредовый в принципе, да еще и сложнее в реализации, чем использовать ту же структуру. И зачем это все надо? Почему бы не прислушаться к людям, которые занимаются этим много лет?
                          Вот блин, ответил в другой теме, а тут уже всё разобрали...

                          Добавлено
                          Скрытый текст
                          Цитата _lcf_ @
                          угу, один аналитик вектор со временем сохраняет, второй вектор даблов читает :lool:

                          Надо просто убрать аналитиков от компутеров подальше :)
                          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                          0 пользователей:


                          Рейтинг@Mail.ru
                          [ Script execution time: 0,0414 ]   [ 17 queries used ]   [ Generated: 23.04.24, 11:30 GMT ]