Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #include <iostream>
- using namespace std;
- int GCD(int a,int b)
- {
- while (a!=b) {
- if (a > b)
- a -= b;
- else
- b -= a;
- }
- return a;
- }
- vector<string> reducedFractionSums(vector<string> expressions)
- {
- vector<int> summ(4);
- int num, den, gcd;
- for (int i = 0; i < expressions.size(); i++)
- {
- summ[0]=atoi(expressions[i].c_str()); // 0 - числитель первой дроби
- expressions[i] = expressions[i].erase(0,expressions[i].find('/')+1);
- summ[1]=atoi(expressions[i].c_str()); // 1 - знаменатель первой дроби
- expressions[i] = expressions[i].erase(0,expressions[i].find('+')+1);
- summ[2]=atoi(expressions[i].c_str()); // 2 - числитель второй дроби
- expressions[i] = expressions[i].erase(0,expressions[i].find('/')+1);
- summ[3]=atoi(expressions[i].c_str()); // 3 - знаменатель второй дроби
- num = summ[0]*summ[3]+summ[1]*summ[2];
- den = summ[1]*summ[3];
- gcd = GCD(num, den);
- num = num / gcd;
- den = den / gcd;
- expressions[i] = to_string(num) + '/' + to_string(den);
- }
- }
- int main () {
- string y = "12/2+13/1";
- int x = atoi(y.c_str());
- cout << x;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement