1 / 1 / 0
Регистрация: 30.05.2011
Сообщений: 7
1

Вставить между цифрами 1, 2,..., 8, 9 в данном порядке, знак одной из 4-х арифметических операций так, чтобы результат восьми послед-х операций =100

30.05.2011, 15:59. Показов 4634. Ответов 4
Метки нет (Все метки)

Вычисления проводятся слева-направо, ни одна операция не имеет приоритета.

Добавлено через 2 минуты
задача вынесла моск, прошу помочь
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.05.2011, 15:59
Ответы с готовыми решениями:

Расставить знаки арифметических операций между цифрами числа A, чтобы получить число B
Заданы два целых положительных числа A и B. Расставьте знаки арифметических операций (+, -, *, /)...

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

В выражении вместо каждого знака вопрос записать знак одной из арифметических операций
Ребят, помогите решить.. У самого идей вообще нет.. Подозреваю, что рекурсией, но хз как) Буду рад...

Расставить среди цифр знаки арифметических операций и скобки, чтобы получить необходимый результат
Собственно, вот задача: Вводится строка не более чем из 6 цифр и некоторое целое число R....

4
1 / 1 / 0
Регистрация: 30.05.2011
Сообщений: 14
30.05.2011, 16:20 2
Числа участвуют все?
как само задание звучит, полностью?
0
1 / 1 / 0
Регистрация: 30.05.2011
Сообщений: 7
30.05.2011, 18:34  [ТС] 3
Вставить между цифрами 1, 2, 3, 4, 5, 6, 7, 8 и 9, записанными именно в таком порядке, знак одной из четырех арифметических операций так, чтобы результат восьми последовательных операций равнялся 100. Вычисления проводятся шаг за шагом слева на право, причем ни одна операция не имеет приоритета.

Добавлено через 15 секунд
это полный текст
0
Эксперт С++
2375 / 1659 / 279
Регистрация: 29.05.2011
Сообщений: 3,387
30.05.2011, 19:27 4
Ну, если тебя за мой код не побьют, то вот
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
#include <iostream>
 
using namespace std;
 
enum { op_plus=0, op_minus, op_mul, op_div };
char op_sym[4] = { '+', '-', '*', '/' };
 
float func(int opcode, int a, int b)
{
    float result = a;
    switch(opcode)
    {
        case op_minus:
            result -= b;
            break;
        case op_mul:
            result *= b;
            break;
        case op_div:
            result /= b;
            break;
        case op_plus:
        default:
            result += b;
    }
    return result;
}
 
float get_result(int nums[9], int opcodes[8])
{
    float result = nums[0];
    for (int i = 0; i < 8; ++i)
        result = func(opcodes[i], result, nums[i+1]);
    return result;
}
 
void print_formula(int nums[9], int opcodes[8])
{
    for (int i = 0; i < 8; ++i)
        cout << nums[i] << " " <<op_sym[opcodes[i]] << " ";
    cout << nums[8] << " = " << get_result(nums, opcodes) << endl;
}
 
bool next_combination(int opcodes[8])
{
    int i = 0;
    while (i < 8 && opcodes[i] == op_div)
    {
        opcodes[i++] = op_plus;
    }
    if (8 == i)
        return false;
    ++opcodes[i];
    return true;
}
 
int main()
{
    int opcodes[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
    int nums[9] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    do {
        if ( get_result(nums, opcodes) == 100 )
            print_formula(nums, opcodes);
    } while (next_combination(opcodes));
    return 0;
}
2
1 / 1 / 0
Регистрация: 30.05.2011
Сообщений: 7
30.05.2011, 23:52  [ТС] 5
благодарю, сейчас гляну

Добавлено через 7 минут
Фунциклирует. Еще раз спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.05.2011, 23:52
Помогаю со студенческими работами здесь

Вставить между цифрами 1, 2, 3, 4, 9 знак одной из операций +-*/, так, чтобы результат 8-операций равнялся 100
Вставить между цифрами 1,2,3,4...9 знак одной из операций +-*/, так, чтобы результат 8-опреаций...

Вместо каждого знака ? Вставить знак одной из 4 арифметических операций
Задание: В написанном выражении ((((1?2)?3)?4)?5)?6 вместо каждого знака ? вставить знак одной из 4...

Расставить между цифрами знаки арифметических операций и скобки
Даны пять пятерок (5 5 5 5 5), нужно расставить между цифрами знаки арифметических операций ('+',...

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru