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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 41, средняя оценка - 4.83
adamo86
2 / 2 / 0
Регистрация: 10.04.2011
Сообщений: 185
#1

Работа с длинными числами - C++

14.08.2011, 20:56. Просмотров 5550. Ответов 24
Метки нет (Все метки)

Мне нужно прочитать из файла 22-х значные целые числа для количественного сравнения. int и long int не сохраняют полную длину числа. Какой тип можно использовать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2011, 20:56     Работа с длинными числами
Посмотрите здесь:

Работа с длинными числами - C++
Здравствуйте! На программировании в вузе дали индивидуальную задачу которая предусматривает работу с большими числами: 1 <= N <=...

Функция с++ (работа с длинными числами - вывод результата в файл) - C++
У меня есть проэкт с++ который использует динамическую библиотеку для работы с длинными числами. В проэкте я перегружаю операторы +,-,...

Действия с длинными числами - C++
Ребята, нужна помощь. Информации нигде нет. Задача такова. Нужно провести арифметичексие действия с целыми числами не превышающие 30 цифр....

Класс для работы с длинными числами - C++
Необходимо реализовать класс для работы с длинными числами. Подскажите алгоритм реализации следующих пунктов: 1) Ввод/вывод числа 2)...

Операции с длинными числами - неправильно выводится результат - C++
Здравствуйте, помогите с операцией умножение неправильно выводит рез-тат, например 555 * 3 = 555

Длинная арифметика. Класс работы с длинными числами. - C++
// модул_умнож.cpp : main project file. #include "stdafx.h" #include "vector" #include <algorithm> #include "stdio.h" #include...

Создать класс для работы с длинными числами - C++
Помогите, пожалуйста, сделать хотя бы один из нижеперечисленных вопросов. Нужно создать класс для работы с длинными числами(сложение,...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
14.08.2011, 21:57     Работа с длинными числами #21
diagon, в спецификации сказано <0 и >0, так что действительно, что угодно
А вот зачем вычислять разность всего числа, если нужно просто определить факт разности одного разряда двух разных чисел - не пойму.
diagon
Higher
1927 / 1193 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
14.08.2011, 22:08     Работа с длинными числами #22
Как-то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int cmp(const char * a, const char * b){
    int len1 = strlen(a), len2 = strlen(b);
    
    if (len1 > len2)
        return 1;
    if (len2 > len1)
        return -1;
    
    for (int i = 0; i < len1; ++i)
    {
        if (a[i] > b[i])
            return 1;
        if (a[i] < b[i])
            return -1;
    }
    return 0;
}
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
14.08.2011, 22:10     Работа с длинными числами #23
diagon, как вариант. Но опять же - вы возвращаете 1, 0 и -1 - хватит знакового однобайтового, char, а у вас целых 4 байта, int.
diagon
Higher
1927 / 1193 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
14.08.2011, 22:14     Работа с длинными числами #24
Цитата Сообщение от talis Посмотреть сообщение
diagon, как вариант. Но опять же - вы возвращаете 1, 0 и -1 - хватит знакового однобайтового, char, а у вас целых 4 байта, int.
А зачем эта экономия? 3 байта никакой роли не сыграют. И char прежде всего ассоциируется с символом, поэтому код станет немного сложнее понять. Я вообще хотел использовать short, но вспомнилось с баша
philpirj@habr: каждый раз, когда ты пишешь int i вместо short i, сотни пользователей вынуждены докупать планку памяти
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.08.2011, 22:17     Работа с длинными числами
Еще ссылки по теме:

Действия над многорозряднымии числами(очень длинными) - C++
Помогите пожалуйста: 1. Задачи: - Введение многоразрядного числа с клавиатуры. - Выведение многоразрядного числа на экран. -...

работа с числами - C++
a) Дано трёхзначное число. Определить, есть ли среди его цифр одинаковые? b) Дано натуральное число с различными цифрами. Определить,...

работа с числами - C++
мне интересует вот что. Например я ввожу число 1234, программа должна выводить 1 2 3 4,то есть разделить число а каждую цифру засунуть в...

Работа с числами - C++
ну вопщем у меня есть решение задач на турбо паскале а мне их надо решить в С++...я решил, принес преподавателю а мне сказали, что надо без...

Работа с числами в с++ - C++
не понимаю, как решить эту задачу.. бился день и ночь( помогите пожалуйста :( Вводится некоторое натуральное число N, состоящее не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
14.08.2011, 22:17     Работа с длинными числами #25
Ну сделайте так:

C
1
2
3
4
typedef char byte;
 
byte strcmp( char * str1, char * str2 )
//...
А вообще, от всей души желаю вам докупить планку памяти и собрать комп своей мечты
Yandex
Объявления
14.08.2011, 22:17     Работа с длинными числами
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru