code
code
#include <vector>
#include <algorithm>
#include <ctype.h>
#include <string>
#include <cmath>
using namespace std;
void day3() {
string input1;
vector <string> inputs = { };
vector <char> symbols = { '*','+','-','=','$','&','@','^','%' ,'#' };
vector <int> currentnumber = {};
vector <int> leftoverindex = {};
int power = 0;
int sum = 0;
int testsum = 0;
bool overload = false;
int size;
cout << "Size: ";
cin >> size;
getline(cin, input1);
inputs.push_back(input1);
}
for (int i = 0; i < inputs.size(); i++) { // B is a half symbol, it only
affects the current line
if (isdigit(inputs[i][element]) == false) {
inputs[i][element] = 'B';
}
else if (element == inputs[i].size() - 1) {
inputs[i].push_back('B');
}
else if (element == 0) {
inputs[i] = 'B' + inputs[i];
}
else {
for (int b = 0; element + b < inputs[i + 1].size() ||
inputs[i + 1][element + b]; b++) {
if (inputs[i][element + b] == '.') {
inputs[i][element + b] = 'B';
break;
}
if (find(symbols.begin(), symbols.end(), inputs[i]
[element + b]) != symbols.end()) {
break;
}
if (element + b == inputs[i + 1].size() - 1) {
inputs[i].push_back('B');
break;
}
}
}
}
}
if (find(symbols.begin(), symbols.end(), inputs[i][element]) !=
symbols.end() || inputs[i][element] == 'B') {
if (element + 1 > inputs[i].size()) {
overload = true;
}
if (isdigit(inputs[i][element + 1]) && overload == false) {
for (int b = 0; (isdigit(inputs[i][element + b]) || b == 0) &&
element + b < inputs[i].size(); b++) {
if (b > 0) {
currentnumber.push_back(inputs[i][element + b] - '0');
inputs[i][element + b] = '.';
power = b - 1;
}
testsum = sum;
power = 0;
currentnumber = {};
}
if (element - 1 > 0) {
if (isdigit(inputs[i][element - 1])) {
for (int b = 0; (isdigit(inputs[i][element - b]) || b == 0)
&& element - b >= 0; b++) {
if (b > 0) {
currentnumber.push_back(inputs[i][element - b] -
'0');
}
if (element - b == 0) {
break;
}
}
if (i == 9) {
}
sum += currentnumber[counter] * pow(10, counter);
}
testsum = sum;
currentnumber = {};
}
}
if (i + 1 < inputs.size()) {
}
}
}
}
int main()
{
day3();
}