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

Почему код не работает? - C++

Восстановить пароль Регистрация
 
kaznachey1993
-66 / 3 / 0
Регистрация: 24.11.2011
Сообщений: 97
12.06.2012, 11:13     Почему код не работает? #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
 
using namespace std;
 
unsigned long double* remove(unsigned long double* Arr, size_t* Size)
{
              if (Arr == NULL)
         return Arr;
    unsigned long double prfNums[47] = {6,28,496,8128,33550336,8589869056,137438691328};
    unsigned long double tmpArr[47] = {0};
     unsigned int notPrfNumsCount = 0;
     std::set<unsigned long double> prfNumsSet(prfNums, prfNums+7);
     for (size_t i =0; i < *Size; ++i)
    // {
         std::set<unsigned long double>::iterator it = prfNumsSet.find(Arr[i]);
         if (it == prfNumsSet.end())
       //  {
             tmpArr[notPrfNumsCount] = Arr[i];
             notPrfNumsCount++;
       /  }
     //}
     *Size = notPrfNumsCount;
     unsigned long double *resArr = new  long double[notPrfNumsCount * sizeof(unsigned long double)];
     std::copy(tmpArr, tmpArr+notPrfNumsCount,resArr);
     return resArr;
 }
 
    system("pause");
 
    return 0;
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rofl113
10 / 10 / 1
Регистрация: 26.02.2012
Сообщений: 36
12.06.2012, 11:39     Почему код не работает? #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
 
using namespace std;
 
unsigned long double* remove(unsigned long double* Arr, size_t* Size)
{
 if (Arr == NULL) return Arr;
 unsigned long double prfNums[47] = {6,28,496,8128,33550336,8589869056,137438691328};
 unsigned long double tmpArr[47] = {0};
 unsigned int notPrfNumsCount = 0;
 std::set<unsigned long double> prfNumsSet(prfNums, prfNums+7);
 for (size_t i =0; i < *Size; ++i)
  {
   std::set<unsigned long double>::iterator it = prfNumsSet.find(Arr[i]);
   if (it == prfNumsSet.end())
   {
    tmpArr[notPrfNumsCount] = Arr[i];
    notPrfNumsCount++;
   }
  }
 *Size = notPrfNumsCount;
 unsigned long double *resArr = new long double[notPrfNumsCount * sizeof(unsigned long double)];
 std::copy(tmpArr, tmpArr+notPrfNumsCount,resArr);
 return resArr;
//}
 
 system("pause");
 
 return 0;
 
}
Попробуй так, в программу не вникал - так что может работать не правильно.
kaznachey1993
-66 / 3 / 0
Регистрация: 24.11.2011
Сообщений: 97
12.06.2012, 11:49  [ТС]     Почему код не работает? #3
Цитата Сообщение от rofl113 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
 
using namespace std;
 
unsigned long double* remove(unsigned long double* Arr, size_t* Size)
{
 if (Arr == NULL) return Arr;
 unsigned long double prfNums[47] = {6,28,496,8128,33550336,8589869056,137438691328};
 unsigned long double tmpArr[47] = {0};
 unsigned int notPrfNumsCount = 0;
 std::set<unsigned long double> prfNumsSet(prfNums, prfNums+7);
 for (size_t i =0; i < *Size; ++i)
  {
   std::set<unsigned long double>::iterator it = prfNumsSet.find(Arr[i]);
   if (it == prfNumsSet.end())
   {
    tmpArr[notPrfNumsCount] = Arr[i];
    notPrfNumsCount++;
   }
  }
 *Size = notPrfNumsCount;
 unsigned long double *resArr = new long double[notPrfNumsCount * sizeof(unsigned long double)];
 std::copy(tmpArr, tmpArr+notPrfNumsCount,resArr);
 return resArr;
//}
 
 system("pause");
 
 return 0;
 
}
Попробуй так, в программу не вникал - так что может работать не правильно.
Неа,неработает!
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
12.06.2012, 11:58     Почему код не работает? #4
RTFM, double не может быть unsigned
kaznachey1993
-66 / 3 / 0
Регистрация: 24.11.2011
Сообщений: 97
12.06.2012, 12:05  [ТС]     Почему код не работает? #5
Цитата Сообщение от soon Посмотреть сообщение
RTFM, double не может быть unsigned
А что нвдо?
Арсенал
144 / 66 / 6
Регистрация: 30.12.2011
Сообщений: 137
12.06.2012, 13:23     Почему код не работает? #6
kaznachey1993,

у вещественных типов нет понятия "беззнаковый и знаковый типы"
Yandex
Объявления
12.06.2012, 13:23     Почему код не работает?
Ответ Создать тему
Опции темы

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