Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Networs
0 / 0 / 0
Регистрация: 21.06.2018
Сообщений: 5
1

Найти все варианты размещения знаков арифметических операций на месте вопросительных знаков

27.06.2018, 10:25. Просмотров 398. Ответов 2
Метки нет (Все метки)

Составить программу, которая нашла все варианты размещения знаков арифметических операций +, -, * на месте вопросительных знаков в выражении 1? 2? 3? 4? 5? 6? 7? 8? 9? 9, чтобы значение этого выражения равно 100.
.....
почему мне выдает ошибку в 32 и 73 строке??

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#include <iostream>
 
 
int mass[9]={1,2,3,4,5,6,7,8,9}, Sf, Ss;
 
 
int Do(int znak, int a, int b, int &S){
    if(znak == 0){
        S=a-b;
    }
    if(znak == 1){
        S=a+b;
    }
    if(znak == 2){
        S=a*b;
    }
    return 0;
}
char Znak(int i){
    char Znak;
    if(i == 0){
        Znak='-';
    }
    if(i == 1){
        Znak='+';
    }
    if(i == 2){
        Znak='*';
    }
    return Znak;
}
void main(){
    int count(0);
    std::cout<<"Varianti podstanovki znakov pri kotorom virazhenie ravno 100:"<<"\n";
    for(int a(0); a<3; a++){
        for(int b(0); b<3; b++){
            for(int c(0); c<3; c++){
                for(int d(0); d<3; d++){
                    for(int e(0); e<3; e++){
                        for(int f(0); f<3; f++){
                            for(int g(0); g<3; g++){
                                for(int h(0); h<3; h++){
                                    Do(e, mass[0], mass[1], Sf);
                                    Ss=0;
                                    Do(b, Sf, mass[2], Ss);
                                    Sf=0;
                                    Do(c, Ss, mass[3], Sf);
                                    Ss=0;
                                    Do(d, Sf, mass[4], Ss);
                                    Sf=0;
                                    Do(e, Ss, mass[5], Sf);
                                    Ss=0;
                                    Do(f, Sf, mass[6], Ss);
                                    Sf=0;
                                    Do(g, Ss, mass[7], Sf);
                                    Ss=0;
                                    Do(h, Sf, mass[8], Ss);
                                    Sf=0;
                                    if(Ss == 100){
 
                                        std::cout<<"1"<<Znak(a)<<"2"<<Znak(b)<<"3"<<Znak(c)<<"4"<<Znak(d)<<"5"<<Znak(e)<<"6"<<Znak(f)<<"7"<<Znak(g)<<"8"<<Znak(h)<<"9"<<" = 100"<<"\n";
                                        count++;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
std::cout<<"Kol-vo variantov podstanovki znakov pri kotorom virazhenie ravno 100"<<"\t"<<count<<"\n";
system("pause");
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2018, 10:25
Ответы с готовыми решениями:

Найти все варианты размещения знаков операций +,-,* на месте вопросов в выражении 1?2?3?4?5?6?7?8?9=100
Составить программу, которая бы нашла все варианты размещения знаков арифметических операций +,-,*...

Поставить знаки арифметических операций вместо знаков вопроса в выражении
Вот интересная задача. Сам не мог решить , возможно у вас получится . Составить программу,...

Классы для арифметических операций с большими числами (целые числа более 10 знаков)
C++ ,Классы для арифметических операций с большими числами(целые числа более 10 знаков), и бывают...

Рассчитать все возможные варианты для 3 знаков
Дано: 1 2 0 Найти все возможные комбинации 10 разрядного числа (пример: 1021020021) и чтобы...

Программа по подсчету арифметических знаков
Ввести ленту произвольной длины, которую трактовать как арифметическое выражение, содержащие...

2
Bleach163
32 / 27 / 20
Регистрация: 23.06.2018
Сообщений: 79
Завершенные тесты: 1
27.06.2018, 10:37 2
Могли бы и сами ошибки написать... Не знаю почему в 73-й строке ошибка, но по поводу 32-й строки: скорее всего ваш компилятор не поддерживает void main. Попробуйте заменить на int main
0
Networs
0 / 0 / 0
Регистрация: 21.06.2018
Сообщений: 5
27.06.2018, 10:45  [ТС] 3
да. Вы оказались правы. Большое спасибо
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.06.2018, 10:45

Расстановка знаков операций
Не получается решить задачу,не могу понять в чем проблема.Вроде все правильно все выводит,но...

Определить количество вхождений строки из n знаков в строку из k знаков
Всем доброй ночи ребят. Вы последняя надежда:( помогите пожалуйста 2 задачи решить последняя ночь(...

Найти все варианты размещения знаков арифметических операций на месте вопросительных знаков в выражении
Составить программу, которая бы нашла все варианты размещения знаков арифметических операций +,-,*...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.