Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2010, 15:31   #1
snap006
 
Аватар для snap006
 
Регистрация: 22.12.2010
Сообщений: 5
Восклицание Необходимо сложить два числа которые больше чем long long

#include "stdafx.h"
#include <iostream>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
#include <fstream>

int _tmain(int argc, _TCHAR* argv[])
{
unsigned __int64 A = 18446744073709551000;
unsigned __int64 B = 200;
unsigned __int64 C=A+B;
printf("%i \n",C);
}
для начала необходимо просто добиться правильного сложения
после выполнения этого кода результат сложения -416. подскажите в чем проблема...
snap006 вне форума Ответить с цитированием
Старый 22.12.2010, 15:41   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

unsigned __int64=unsigned long long.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 22.12.2010, 15:53   #3
snap006
 
Аватар для snap006
 
Регистрация: 22.12.2010
Сообщений: 5
Вопрос

#include "stdafx.h"
#include <iostream>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
#include <fstream>

int _tmain(int argc, _TCHAR* argv[])
{
unsigned long long A = 18446744073709551000;
unsigned long long B = 200;
unsigned long long C=A+B;
printf("%i \n",C);
getch();
}

эффект тотже...
-416 получается...
какие идеи?
snap006 вне форума Ответить с цитированием
Старый 22.12.2010, 15:56   #4
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

складывай массивы в столбик.
либо используй либу gmp
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 22.12.2010, 16:08   #5
snap006
 
Аватар для snap006
 
Регистрация: 22.12.2010
Сообщений: 5
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
складывай массивы в столбик.
либо используй либу gmp
не подскажите где её взять?
и как её использовать?
snap006 вне форума Ответить с цитированием
Старый 22.12.2010, 16:15   #6
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2snap006
у меня в репозитории есть. у тебя не знаю. с ней идет ман.
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 22.12.2010, 16:20   #7
snap006
 
Аватар для snap006
 
Регистрация: 22.12.2010
Сообщений: 5
Вопрос

Цитата:
Сообщение от pproger Посмотреть сообщение
складывай массивы в столбик.
либо используй либу gmp
не могу понять какую библиотеку надо использоавть...(скачалЮ, но там их штук 20)
а как происходит складывание массивов в столбик?
желательно на моем примере, но просто алгоритм тоже сойдет
snap006 вне форума Ответить с цитированием
Старый 22.12.2010, 16:33   #8
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2snap006
в начальной школе учился?
складываем единицы, если результат > 9, то разряд переносится в десятки. и тд
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 22.12.2010, 16:42   #9
snap006
 
Аватар для snap006
 
Регистрация: 22.12.2010
Сообщений: 5
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
2snap006
в начальной школе учился?
складываем единицы, если результат > 9, то разряд переносится в десятки. и тд

я думал тут особенный алгоритм, спасибо...
snap006 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
MMX сложить два числа gansm Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 13 29.10.2010 05:16
Макрос: сложить два числа белочка Microsoft Office Excel 6 23.12.2009 22:02
перевод строки в long long и обратно Dimarik Общие вопросы C/C++ 9 16.09.2009 13:27
Сложить два числа iwaniwan Win Api 3 23.04.2009 06:27