4 / 4 / 0
Регистрация: 25.06.2010
Сообщений: 106
|
|
1 | |
самый, самый большой ))11.08.2011, 12:33. Показов 2526. Ответов 18
Метки нет (Все метки)
народ че делать unsigned long long int - оказался недостаточен
есть тип побольше какой-нить? или там как-то обойти как в паскале? VS 2008
0
|
11.08.2011, 12:33 | |
Ответы с готовыми решениями:
18
Как переставить местами самый маленький и самый большой элементы массива? В заданной матрице найти самый большой отрицательный элемент и самый маленький положительный и вывести их на экран Самый самый самый простой пример рекурсии Найти второй самый большой элемент массива и второй самый маленький элемент массива |
Higher
|
|
11.08.2011, 12:38 | 2 |
Длинная арифметика
Больше никак. И как на паскале это обойти можно? о_О Там тоже максимальный - int64, но только у него еще 1 разряд под знак. Поэтому unsigned long long больше самого большого паскалевского типа =)
0
|
4 / 4 / 0
Регистрация: 25.06.2010
Сообщений: 106
|
|
11.08.2011, 12:55 [ТС] | 5 |
точно вроде работает, токо int(double_var) выдает отрицательный результат
хотя double_var положителен короче как вывести double_var, чтоб другая прога считала его за int ?
0
|
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
|
|
11.08.2011, 12:58 | 7 |
Noname2512, а как другая прога его будет считывать? Вот так же и выводить, только наоборот
0
|
4 / 4 / 0
Регистрация: 25.06.2010
Сообщений: 106
|
|
11.08.2011, 13:03 [ТС] | 8 |
ну да неправильно я выразился
как сделать так чтобы double_var был визуально похож на int , чтоб там без точек, без е+...
0
|
Higher
|
|
11.08.2011, 13:04 | 9 |
Да не подойдет double для ваших целей... =)
Код
diagon@shadeware:~$ cat test.cpp && g++ test.cpp && ./a.out #include <iostream> int main(){ double x; std::cin >> x; std::cout << std::fixed << x; } 1234567890123456789012345678901234567890 1234567890123456846996462118072609669120.000000 Вывести без нулей на конце можно с помощью setprecision(0)
0
|
4 / 4 / 0
Регистрация: 25.06.2010
Сообщений: 106
|
|
11.08.2011, 13:07 [ТС] | 10 |
0
|
Заблокирован
|
|
11.08.2011, 13:37 | 12 |
- что значит неточно хранитсья в дабл, это тип для хранения чисел с плавающей точкой размерностью до Е+304, что в него записал то и считал, что ты имел в виду???
Добавлено через 1 минуту Как C вариант double num; printf("%.0f",num);
0
|
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
|
||||||
11.08.2011, 13:38 | 14 | |||||
diagon даже пример тебе показал, что он имел ввиду. Вот тебе ещё один:
0
|
404 / 360 / 36
Регистрация: 11.10.2010
Сообщений: 1,907
|
|
11.08.2011, 13:44 | 15 |
Зачем же извращатся над стандартными типами, лучше использовать длинную арефметику, в инете есть масса премеров.
0
|
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
|
|
11.08.2011, 13:53 | 16 |
Ну, про длинную арифметику в первом же ответе было сказано. Да и примеры даже на этом форуме найти можно. И мои в том числе, и diagon тоже самодельные классы/функции показывал.
0
|
Freelance
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
|
||||||
11.08.2011, 14:00 | 17 | |||||
double без потери точности может представлять только 15 десятичных цифр и
1
|
Заблокирован
|
|
11.08.2011, 14:09 | 18 |
Double использует для хранения 64 бита: 1 знаковый, 11 - под экспоненту,52 - под мантиссу. Т.е. точно целое число можно получить до 2^52-1
В то же время, unsigned long long int (добавлен стандартом С99) использует для хранения целого 64 бита. Т.е. точно целое число можно получить до 2^64-1. Если этого мало - переходим на длинную арифметику. В принципе не рекомендуется смешивать целочисленную арифметику и арифметику с плавающей точкой (их даже обрабатывают два разных процессора).
0
|
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
|
|
11.08.2011, 14:16 | 19 |
Ну, на всякий случай поправлю немного. Да, для хранения мантиссы отведено 52 бита, но при этом там хранится 53-битная мантисса В нормализованной записи целая часть мантиссы всегда равна 1, поэтому в типах double и float эта единица в явном виде не сохраняется (в отличие от long double).
Так что целые до 2^53-1.
1
|
11.08.2011, 14:16 | |
11.08.2011, 14:16 | |
Помогаю со студенческими работами здесь
19
Определить сколько стоит самый дешевый и самый дорогой обед Определить самый урожайный и самый неурожайный год в колхозе “Заря” Определить, какой сначала был день самый тёплый или самый холодный? Найти самый большой элемент Массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |