#define IN 1 //внутри слова #define OUT 0 //вне слова
int main() { string s; getline(cin, s); int state = OUT; //позиция s = ' ' + s + ' '; int k = 0; //позиция начала слова for (int i = 0; i < s.size(); i++) if (s[i] == ' ') { if (state == IN && s[k] == s[i - 1]) cout << s.substr(k, i - k + 1) << endl; state = OUT; } else if (state == OUT) { k = i; state = IN; } return 0; }
Для того что бы округлить нужно использовать "=ОКРУГЛ" данная команда округляет число до указанного количества десятичных разрядов, цифр после запятой. (что бы округлить сумму нужно записывать количество десятичных разрядов в конце выражения). Пример:«=ОКРУГЛ(выражение);число)»
Дано:
Математическое выражение: «(57+185)−2(74:(7+10))»
Найти: Значение выражения и округлить его в MS Ecxel.
Формула (Её нужно ввести в окошко Excel и нажать "Enter"): «=ОКРУГЛ((57+185)-2*(74/(7+10));2)»
ответ: 233,29
Далее скриншот, и файл Excel в котором формула и сам ответ.
#include <string>
using namespace std;
#define IN 1 //внутри слова
#define OUT 0 //вне слова
int main()
{
string s;
getline(cin, s);
int state = OUT; //позиция
s = ' ' + s + ' ';
int k = 0; //позиция начала слова
for (int i = 0; i < s.size(); i++)
if (s[i] == ' ') {
if (state == IN && s[k] == s[i - 1])
cout << s.substr(k, i - k + 1) << endl;
state = OUT;
} else if (state == OUT) {
k = i;
state = IN;
}
return 0;
}