Хорошо, во-первых, я довольно новичок в программировании, я только прочитал немного материала и работал над некоторыми проектными проблемами Эйлера, чтобы как-то обдумать концепции и тому подобное. Однако сегодня я получил сообщение об ошибке, в котором не смог разобраться, поэтому подумал, что попрошу здесь о помощи! Любые ссылки или советы приветствуются!
Вот сообщение об ошибке:
terminate called after throwing an instance of 'std::out_of_range'
what(): basic_string::substr Aborted
Так что любой совет, который вы могли бы получить, был бы потрясающим! Если вам нужен мой код или есть вопросы, задавайте! Хотя я лучше попробую разобраться в проблеме, чем найду ответ сам! Спасибо!
РЕДАКТИРОВАТЬ: Хорошо, так как вы, ребята, говорите, что вам нужно увидеть код здесь, он есть.
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int stringtoint(string s_convertee)
{
int i=0;
istringstream sin(s_convertee);
sin >> i;
return i;
}
int main()
{
string s_testnum = "233456091289474545356";
int n_maxmult = 0;
for (int i = 0; i<s_testnum.length(); i++)
{
int n_product = 1;
for (int j = i; j<(i+4); j++)
{
string s_multiplier = s_testnum.substr(j, 1);
int n_multiplier = stringtoint(s_multiplier);
n_product *= n_multiplier;
}
if (n_product>n_maxmult)
{
n_maxmult = n_product;
}
}
return 0;
}