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

Найти все варианты размещения знаков операций +,-,* на месте вопросов в выражении 1?2?3?4?5?6?7?8?9=100 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сбрасывается форматирование std::stringstream при очистке потока http://www.cyberforum.ru/cpp-beginners/thread1218354.html
Имеем объект класса std::stringstream используемый для форматированного вывода. Перед очередным выводом производится очистка потока. После очистки все форматирование сбрасывается. Как бы узнать - нормально ли это? Borland C++ Builder 6 (если это влияет). std::stringstream ss; ss.width(2); ss.setf(std::ios::right, std::ios::adjustfield); ss.fill('0'); ss << 1; ...
C++ Как записывать данные в конец файла Вот код: #include "stdafx.h" #include <fstream> #include <string> #include <iostream> #include <iomanip> using namespace std; int main(int argc, char* argv) {//1 http://www.cyberforum.ru/cpp-beginners/thread1218272.html
C++ Где ошибка в передаче указателя на массив?
через указатель на массив хочу в массив записать значние -1 или +1. гдето ошибка в синтаксисе. ПРошу помочь. ПОдозреваю что ошибка в самом вызове функции... А конкретней я не правильно из main`a вызываю нужную функцию. НО значения в определении функции и инициализации функции принимаю правлиьно. #include <iostream> #include <stdlib.h> using namespace std; int InputLocPl1(int gor, int...
Как автоматически создать несколько переменных с разными именами? C++
Товарищи программисты, есть строка с данными и в ней присутствуют точки, помогите пожалуйста написать цикл Который бы присваивал каждой позиции этих точек переменную с новым именем. Заранее благодарю.
C++ Наследование от std::ostream http://www.cyberforum.ru/cpp-beginners/thread1218253.html
Имеем код: #include <iostream> class DebugMessage : public std::ostream { public: DebugMessage() : std::ostream( std::cout.rdbuf() ) { } virtual ~DebugMessage() { *this << std::endl; } };
C++ Подсчитать в строке количество символов, меньших символа "К" Ввести строку символов. Подсчитать количество символов меньше символа «К». Вывести результат на экран. Помогите решить, пожалуйста. подробнее

Показать сообщение отдельно
FraidZZ
Модератор
 Аватар для FraidZZ
3885 / 1511 / 228
Регистрация: 06.01.2013
Сообщений: 4,032
Завершенные тесты: 1
27.06.2014, 17:15     Найти все варианты размещения знаков операций +,-,* на месте вопросов в выражении 1?2?3?4?5?6?7?8?9=100
Полное решение:
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
#include <iostream>
#include <vector>
#include <string>
 
using namespace std;
string str(int n);
 
int eval(vector<int> arr, string expr){
    int total = 0;
    vector<int> p = arr, m = arr, mp = arr;
    int sp = p[1], sm = m[1], smp = mp[1];
    if (arr.size() > 2){
        p[1] = p[0] + p[1]; p.erase(p.begin()); total += eval(p, expr + string("+") + str('0' + sp));
        m[1] = m[0] - m[1]; m.erase(m.begin()); total += eval(m, expr + string("-") + str('0' + sm));
        mp[1]=mp[0] *mp[1];mp.erase(mp.begin()); total+=eval(mp, expr + string("*") + str('0' + smp));
    } else {
        if ((arr[0] - arr[1]) == 100) {total++; cout<<expr<<"-"<<arr[1]<<endl;}
        if ((arr[0] + arr[1]) == 100) {total++; cout<<expr<<"+"<<arr[1]<<endl;}
        if ((arr[0] * arr[1]) == 100) {total++; cout<<expr<<"*"<<arr[1]<<endl;}
    }
    return total;
}
 
string str(int n){
    string a = "0";
    a[0] = (char) n;
    return a;
}
 
int main(){
    string expr = "1";
    vector<int> arr; for (int i = 1; i < 10; i++) arr.push_back(i);
    eval(arr, expr);
}
 
Текущее время: 12:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru