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

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

Восстановить пароль Регистрация
 
Bulat123
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 53
09.10.2013, 19:52     Длинная арифметика(чтение и запись в файлы) #1
Во время выполнения программа вылетает с выдачей ошибки "Необработанное исключение по адресу 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++ Длинная арифметика
C++ длинная арифметика
C++ Длинная арифметика
Длинная арифметика C++
[Файлы] Запись-чтение-запись. Почему не прокатывает? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gng
605 / 451 / 122
Регистрация: 08.09.2013
Сообщений: 1,153
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     Длинная арифметика(чтение и запись в файлы)
Ответ Создать тему
Опции темы

Текущее время: 01:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru