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

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

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

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

09.10.2013, 19:52. Просмотров 242. Ответов 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;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2013, 19:52     Длинная арифметика(чтение и запись в файлы)
Посмотрите здесь:

Длинная арифметика C++
C++ Длинная арифметика
C++ Длинная арифметика))
Длинная арифметика N+1 C++
Длинная арифметика C++
C++ Длинная арифметика
C++ Длинная арифметика
Длинная арифметика C++
C++ Длинная арифметика
Длинная арифметика C++
C++ Длинная арифметика С++
C++ Длинная арифметика

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gng
629 / 475 / 129
Регистрация: 08.09.2013
Сообщений: 1,231
09.10.2013, 21:24     Длинная арифметика(чтение и запись в файлы) #2
size_t всегда >= 0
Bulat123
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 53
10.10.2013, 13:11  [ТС]     Длинная арифметика(чтение и запись в файлы) #3
спасибо большое) про то, что это беззнаковый тип знал, но не подозревал даже, что это играет такую важную роль
Yandex
Объявления
10.10.2013, 13:11     Длинная арифметика(чтение и запись в файлы)
Ответ Создать тему
Опции темы

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