Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Bulat123
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 53
#1

Длинная арифметика(чтение и запись в файлы) - C++

09.10.2013, 19:52. Просмотров 281. Ответов 2
Метки нет (Все метки)

Во время выполнения программа вылетает с выдачей ошибки "Необработанное исключение по адресу 0x000B966F в longMult.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0x********."
Никак не могу увидеть ошибку.
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
33
34
35
36
37
38
39
40
#include<iostream>
#include<cstring>
#include<fstream>
 
#define MAX 2500
 
int main() 
{
    std::fstream input, output;
    input.open("INPUT.TXT", std::ifstream::in);
    char str1[MAX], str2[MAX], mult[MAX] = {0};
    input.getline(str1, MAX, '\n');
    input.getline(str2, MAX, '\n');
    input.close();
    size_t sizeOne = strlen(str1) - 1, sizeTwo = strlen(str2) - 1, newSize = 0, n = 0, i = 0;
    for (i = 0; i <= sizeOne; ++i)
        str1[i] -= 48;
    for (i = 0; i <= sizeTwo; ++i)
        str2[i] -= 48;
    for (i = 0; i <= sizeOne; ++i){
        n = i;
        for (size_t j = 0; j <= sizeTwo; ++j){
            mult[n] += str2[sizeTwo - j] * str1[sizeOne - i];
            if (mult[n] > 9) {
                mult[n+1] += mult[n] / 10;
                mult[n] %= 10;
                newSize = n + 1;
            }
            newSize = (n > newSize) ? n : newSize;
            ++n;
        }
    }
    output.open("OUTPUT.TXT", std::ofstream::out);
    for (size_t i = newSize; i >= 0; --i) {
        mult[i] += 48;
        output << mult[i];
    }
    output.close();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2013, 19:52
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Длинная арифметика(чтение и запись в файлы) (C++):

[Файлы] Запись-чтение-запись. Почему не прокатывает? - C++
Сначала записываю в файл &quot;а&quot; запись &quot;makulatura&quot;, потом читаю ее в строку h. Все ок. Но потом когда открываю файл &quot;a&quot; опять для записи с...

Длинная арифметика - C++
Срочно нужны исходники (функции): 1. Перевод обычного числа в длинное (массив, строка , вектор кто с чем работает) 2. Нахождение суммы...

Длинная арифметика - C++
Алгоритмы всех операций в принципе уже готовы (длина числа ограничивается только ресурсами ПК). Осталось только подобрать качественный...

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

Длинная арифметика - C++
Здравствуйте, есть такая задача.. Препод по алгоритмам задал сделать программу для перевода чисел в разные системы счислений. Это...

Длинная арифметика - C++
Всем привет! Хотелось бы узнать -- есть ли в С++ библиотека, где реализованы операции над длинными числами?

2
gng
645 / 491 / 134
Регистрация: 08.09.2013
Сообщений: 1,326
09.10.2013, 21:24 #2
size_t всегда >= 0
1
Bulat123
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 53
10.10.2013, 13:11  [ТС] #3
спасибо большое) про то, что это беззнаковый тип знал, но не подозревал даже, что это играет такую важную роль
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.10.2013, 13:11
Привет! Вот еще темы с ответами:

Длинная арифметика - C++
:senor: Здраствуйте, пишу модуль длинной математики. В принципе, работоспособность у него положительная. Но в силу моей неопытности меня...

Длинная арифметика - C++
class BigInt { static const int max_size = 100000;//количество десятичных разрядов, которые должно вмещать static...

Длинная арифметика С++ - C++
требуется написать задачу для подсчета суммы s=1^2+2^2+3^2+...+n^2 n&gt;=20000

длинная арифметика - C++
Долгое время бьюсь как составить программу по этой теме в интернете искал нашел это for (int i=(int)s.length(); i&gt;0; i-=9) if (i &lt; 9) ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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