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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Neotwalker
21 / 1 / 0
Регистрация: 22.12.2013
Сообщений: 140
#1

Формула, по которой можно вычислить время наступления Рагнарека - C++

22.07.2014, 18:56. Просмотров 1536. Ответов 27
Метки нет (Все метки)

Рагнарек должен наступить с минуты на минуту. Но Один не знает, когда именно он наступит.
Локи, как самый умный, сказал Одину формулу, по которой можно вычислить время наступления Рагнарека. К сожалению, Одину с одним глазом сложно уследить за всеми скобками в выражении, поэтому он решил заменить скобки первого уровня на фигурные, а второго уровня – на квадратные, остальные же оставить круглыми. То есть выражение x * (y + (z * (5 + 3))) изменится на x * {y + [z * (5 + 3)]}.
Но Один не умеет программировать, Один умеет драться, поэтому программу придется написать вам. Не гневите Одина.
В первой и единственной строке входного файла указана формула, состоящая из букв латинского алфавита, знаков арифметических действий, пробелов, цифр и скобок. Гарантируется, что скобки образуют правильную скобочную последовательность. Длина формулы не превышает 105.
Выведите эту строку в формате удобном для чтения Одину.

Пример ввода 1

x * (y + (z * (5 + 3)))

Пример вывода 1

x * {y + [z * (5 + 3)]}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.07.2014, 18:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Формула, по которой можно вычислить время наступления Рагнарека (C++):

Укажите формулу, по которой можно определить время встречи - Математика
Из пунктов А и В одновременно навстречу друг другу с постоянными и неравными скоростями выехали велосипедист и мотоциклист. Укажите...

Создание крутящейся стрелки, время вращения которой можно изменять в PHP файле - Flash
Здравствуйте. Необходимо реализовать плавное вращение стрелки в кольце, при этом время вращения должно находится в PHP файле, после того...

Как можно рассчитать вероятность наступления следующего события? - Теория вероятностей
Всем привет! 1. Мы знаем вероятности наступления событий, например: P(A) = 0,2 P(B) = 0,4 P(C) = 0,3 P(D) = 0,1 ...

вычислить скорость с которой бегун пробежал дистанцию если известно что время и расстояние - Pascal
тоже итоговая уже по практикуму. решать в delphi написать программу ,которая вычисляет скорость,с которой бегун пробежал дистанцию, если...

Создать пользовательскую форму, с помощью которой можно вычислить значение функции - VBA
10. Создайте пользовательскую форму, с помощью которой можно вычислить значение функции y=2cos(3Пх)Sin(Пх)+(sin(3Пx))/x

Можно ли вычислить приблизительное время работы программы? - Delphi
Вечер добрый. Можно ли вычислить приблизительное время работы программы, зная сколько операций совершается и какие цифры при этом...

27
gru74ik
Модератор
Эксперт CЭксперт С++
4189 / 1837 / 198
Регистрация: 20.02.2013
Сообщений: 4,976
Записей в блоге: 21
22.07.2014, 20:01 #2
Вообще-то, Один - Бог мудрости и тайного знания (магии). За эти знания он в своё время и пожертвовал глаз, если мне не изменяет память. И уж кому как не Одину уметь программировать! )))
А драться все асы были не дураки, но особенно в этом отличились Тор и Один, да.
0
Psilon
Master of Orion
Эксперт .NET
5902 / 4799 / 634
Регистрация: 10.07.2011
Сообщений: 14,407
Записей в блоге: 5
Завершенные тесты: 4
22.07.2014, 20:58 #3
std::string::find + std::string::find_last_of по 2 раза, std::string::replace 4 раза
1
Бендерродригез
22.07.2014, 21:04
  #4

Не по теме:

Цитата Сообщение от gru74ik Посмотреть сообщение
Вообще-то, Один - Бог мудрости и тайного знания (магии). За эти знания он в своё время и пожертвовал глаз, если мне не изменяет память. И уж кому как не Одину уметь программировать! )))
А драться все асы были не дураки, но особенно в этом отличились Тор и Один, да.
Таки кроме того, Локи скорее был хитрозадый, чем самый умный.

0
gru74ik
Модератор
Эксперт CЭксперт С++
4189 / 1837 / 198
Регистрация: 20.02.2013
Сообщений: 4,976
Записей в блоге: 21
22.07.2014, 22:04 #5
Чё-то у меня скобки как-то в конце не так расставляются:
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
/// [url]http://www.cyberforum.ru/cpp-beginners/thread1232196.html[/url]
/*
Рагнарек должен наступить с минуты на минуту. Но Один не знает,
когда именно он наступит. Локи, как самый умный, сказал Одину
формулу, по которой можно вычислить время наступления Рагнарека.
К сожалению, Одину с одним глазом сложно уследить за всеми
скобками в выражении, поэтому он решил заменить скобки первого
уровня на фигурные, а второго уровня – на квадратные, остальные
же оставить круглыми. То есть выражение x * (y + (z * (5 + 3)))
изменится на x * {y + [z * (5 + 3)]}. Но Один не умеет
программировать, Один умеет драться, поэтому программу придется
написать вам. Не гневите Одина.
В первой и единственной строке входного файла указана формула,
состоящая из букв латинского алфавита, знаков арифметических
действий, пробелов, цифр и скобок. Гарантируется, что скобки
образуют правильную скобочную последовательность. Длина формулы
не превышает 105. Выведите эту строку в формате удобном для
чтения Одину.
 
Пример ввода 1:
x * (y + (z * (5 + 3)))
 
Пример вывода 1:
x * {y + [z * (5 + 3)]}
 
*/
 
#include <iostream>     // для ввода-вывода
#include <windows.h>    // для отображения русского языка
#include <string>       // для строк класса string
#include <fstream>      // для чтения из файла
#include <ostream>      // для вывода в файл
 
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    string formula;
    cout << "\nВведите формулу. Введённые Вами данные будут "
            "сохранены в файл ragnarok.txt.\n";
    getline(cin, formula);
    ofstream fout;
    fout.open("ragnarok.txt");
    fout << formula << endl;
    fout.close ();
    cout << "\nФормула сохранена в файл ragnarok.txt.\n" << endl;
    cout << "\nИдёт преобразование формулы.\n" << endl;
    for (int i=0; i<20; i++)
    {
        Sleep(300);
        cout << "*";
    }
    cout << endl;
 
    ifstream fin;
    fin.open("ragnarok.txt");
    getline(fin, formula);
 
    int i=0;
    int size = formula.length();
    while (i<size)
    {
        if(formula[i]=='(')
        {
            formula[i]='{';
            break;
        }
        ++i;
 
    }
    while (i<size)
    {
        if(formula[i]=='(')
        {
            formula[i]='[';
            break;
        }
        ++i;
 
    }
    while (i<size)
    {
        if(formula[i]==')')
        {
            formula[i]=')';
            break;
        }
        ++i;
 
    }
    while (i<size)
    {
        if(formula[i]==')')
        {
            formula[i]=']';
            break;
        }
        ++i;
 
    }
    while (i<size)
    {
        if(formula[i]==')')
        {
            formula[i]='}';
            break;
        }
        ++i;
    }
    cout << "Теперь Один может прочитать формулу:" << endl;
    for (int i=0; i<size; i++)
    {
        cout << formula[i];
    }
    return 0;
}
1
Psilon
Master of Orion
Эксперт .NET
5902 / 4799 / 634
Регистрация: 10.07.2011
Сообщений: 14,407
Записей в блоге: 5
Завершенные тесты: 4
22.07.2014, 23:27 #6
Имхо так проще
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
 
 
using namespace std;
 
void replace(string &s, char first, char last)
{
    size_t firstIndex = s.find_first_of('(');
    size_t lastIndex = s.find_last_of(')');
    s[firstIndex] = first;
    s[lastIndex] = last;
}
 
int main()
{
    string s = "x * (y + (z * (5 + 3)))";
    replace(s, '{', '}');
    replace(s, '[', ']');
    cout << s;
}
2
Sergio Leone
2455 / 1100 / 402
Регистрация: 07.06.2014
Сообщений: 3,259
22.07.2014, 23:55 #7
Psilon, а Вы не путаете уровень скобок (читай "вложенность" ) и нумерацию (порядковый) скобок в выражени?

попробуйте на таком контрпримере:
A + (B * ((C + D) + (N+K))) * (A + B) * (D * (B - (C + (E+K))))
1
Mr.X
Эксперт С++
3050 / 1695 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
23.07.2014, 08:14 #8
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
/////////////////////////////////////////////////////////////////////////////////////////
//Рагнарек должен наступить с минуты на минуту. Но Один не знает, когда именно он наступит.
//Локи, как самый умный, сказал Одину формулу, по которой можно вычислить время наступления 
//Рагнарека. К сожалению, Одину с одним глазом сложно уследить за всеми скобками в выражении, 
//поэтому он решил заменить скобки первого уровня на фигурные, а второго уровня – на квадратные, 
//остальные же оставить круглыми. То есть выражение x * (y + (z * (5 + 3))) изменится 
//на x * {y + [z * (5 + 3)]}.
//Но Один не умеет программировать, Один умеет драться, поэтому программу придется написать вам. 
//Не гневите Одина.
//В первой и единственной строке входного файла указана формула, состоящая из букв латинского 
//алфавита, знаков арифметических действий, пробелов, цифр и скобок. Гарантируется, что скобки 
//образуют правильную скобочную последовательность. Длина формулы не превышает 105.
//Выведите эту строку в формате удобном для чтения Одину.
//
//Пример ввода 1
//
//x * (y + (z * (5 + 3)))
//
//Пример вывода 1
//
//x * {y + [z * (5 + 3)]}
/////////////////////////////////////////////////////////////////////////////////////////
#include <algorithm>
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <stack>
#include <string>
/////////////////////////////////////////////////////////////////////////////////////////
char    const   LEFT_ROUND_BRACKET      =   '(';
char    const   RIGHT_ROUND_BRACKET     =   ')';
/////////////////////////////////////////////////////////////////////////////////////////
typedef std::string     T_str;
/////////////////////////////////////////////////////////////////////////////////////////
T_str   get_rand_str_with_round_brackets()
{
    static  unsigned    const   LINE_LEN_MIN_MIN    =   3;
    static  unsigned    const   LINE_LEN_MIN        =   30;
    static  unsigned    const   LINE_LEN_MAX        =   80;
 
    T_str   res_str;
    int     level       =   0;
    char    cur_symb    =   0;
 
    do
    {
        res_str.clear();
        for(;;)
        {
            if  (
                    level == 0
                )
            {
                if  (
                        res_str.size()  >   (
                                                rand() % 2
                                                    ?   LINE_LEN_MIN_MIN
                                                    :   LINE_LEN_MIN
                                            )
                    )
                {
                    break;
                }
 
                ++level;
                cur_symb    =   LEFT_ROUND_BRACKET;
            }
            else
            {
                if  (
                        rand() % 2
                    )
                {
                    ++level;
                    cur_symb = LEFT_ROUND_BRACKET;
                }
                else
                {
                    --level;
                    cur_symb = RIGHT_ROUND_BRACKET;
                }
            }//else
 
            res_str.push_back( cur_symb );
        }//for
    }
    while   (
                res_str.size() > LINE_LEN_MAX
            );
 
    return  res_str;
}
/////////////////////////////////////////////////////////////////////////////////////////
struct  T_replace_bracket
{
    //-----------------------------------------------------------------------------------
    static  int     const   LEVEL_MAX   =   3;
    //-----------------------------------------------------------------------------------
    int     level_;
    //-----------------------------------------------------------------------------------
    T_replace_bracket()
        :
        level_()
    {}
    //-----------------------------------------------------------------------------------
    char    operator()  ( char  &   symb )
    {
        static  T_str   const   BRACKETS    =   "**{}[]()";
        char                    res_symb    =   0;
 
        switch( symb )
        {
        case    LEFT_ROUND_BRACKET:
            ++level_;
 
            res_symb    =   BRACKETS
                                [
                                    ind_of_level( level_ ) * 2
                                ];
            break;
 
        case    RIGHT_ROUND_BRACKET:
 
            res_symb    =   BRACKETS
                                [
                                    ind_of_level( level_ ) * 2 + 1
                                ];
 
            --level_;
            break;
 
        default:
            res_symb    =   symb;
        }//switch
 
        return  res_symb;
    }
    //-----------------------------------------------------------------------------------
    int     ind_of_level( int   level )
    {
        return  level > LEVEL_MAX
                    ?   LEVEL_MAX
                    :   level;
    }
    //-----------------------------------------------------------------------------------
};
/////////////////////////////////////////////////////////////////////////////////////////
void    transform_brackets( T_str   &   formula )
{
    std::transform
        (
            formula.begin       (),
            formula.end         (),
            formula.begin       (),
            T_replace_bracket   ()
        );
}
/////////////////////////////////////////////////////////////////////////////////////////
int     main()
{
    srand(unsigned(time(0)));
    T_str   const   formula_const       =   "A + (B * ((C + D) + (N+K))) * (A + B) * (D * (B - (C + (E+K))))";
    T_str   const   formula_const_1     =   "x * (y + (z * (5 + 3)))";
 
    for(;;)
    {
        T_str   formula     =   rand() % 2
                                    ?   get_rand_str_with_round_brackets()
                                    :   rand() % 2
                                            ?   formula_const
                                            :   formula_const_1;
 
        std::cout   <<  std::endl
                    <<  formula
                    <<  std::endl;
 
        transform_brackets( formula );
        std::cout   <<  formula
                    <<  std::endl;
 
        system("pause");
    }//for
}
0
Vtulhu
371 / 377 / 96
Регистрация: 12.08.2011
Сообщений: 1,610
23.07.2014, 08:54 #9
Один я не понимаю, что и зачем вы там навертели в такой простой задаче? Видимо, изучение С++ необратимо захламляет мозг ООПом и прочими высокими абстракциями...
Задачка-то чисто алгоритмическая, хоть на С++, хоть на C#, хоть на Паскале решается по одному принципу. Главное - продумать принцип. Для этого достаточно блокнота (бумажного).

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
75
76
77
78
79
80
81
82
83
84
#include "greatest.h"
 
void brackets(char* str)
{
    const char left[] = { '{', '[', '(' };
    const char right[] = { '}', ']', ')' };
    int i = -1;
    while( *str ) {
        if( *str == '(' ) {
            if( ++i == 3 ) { i = 0; }
            *str = left[i];
        } else if( *str == ')' ) {
            *str = right[i];
            if( --i == -1 ) { i = 2; }
        }
        ++str;
    }
}
 
TEST brackets_1()
{
    char s[] = "()";
    brackets(s);
    ASSERT_STR_EQ(s, "{}");
    PASS();
}
 
TEST brackets_2()
{
    char s[] = "(())";
    brackets(s);
    ASSERT_STR_EQ(s, "{[]}");
    PASS();
}
 
TEST brackets_3()
{
    char s[] = "((()))";
    brackets(s);
    ASSERT_STR_EQ(s, "{[()]}");
    PASS();
}
 
TEST brackets_4()
{
    char s[] = "(((())))";
    brackets(s);
    ASSERT_STR_EQ(s, "{[({})]}");
    PASS();
}
 
TEST brackets_5()
{
    char s[] = "x * (y + (z * (5 + 3)))";
    brackets(s);
    ASSERT_STR_EQ(s, "x * {y + [z * (5 + 3)]}");
    PASS();
}
 
TEST brackets_6()
{
    char s[] = "A + (B * ((C + D) + (N+K))) * (A + B) * (D * (B - (C + (E+K))))";
    brackets(s);
    ASSERT_STR_EQ(s, "A + {B * [(C + D) + (N+K)]} * {A + B} * {D * [B - (C + {E+K})]}");
    PASS();
}
 
SUITE(the_suite)
{
    RUN_TEST(brackets_1);
    RUN_TEST(brackets_2);
    RUN_TEST(brackets_3);
    RUN_TEST(brackets_4);
    RUN_TEST(brackets_5);
    RUN_TEST(brackets_6);
}
 
GREATEST_MAIN_DEFS();
 
int main(int argc, char **argv) {
    GREATEST_MAIN_BEGIN();      /* command-line arguments, initialization. */
    RUN_SUITE(the_suite);
    GREATEST_MAIN_END();        /* display results */
}
Код
C:\UTIL\tcc>tcc.exe -Wall -run brackets.c

* Suite the_suite:
......
6 tests - 6 pass, 0 fail, 0 skipped (1 ticks, 0.001 sec)

Total: 6 tests (15 ticks, 0.015 sec)
Pass: 6, fail: 0, skip: 0.
1
Psilon
Master of Orion
Эксперт .NET
5902 / 4799 / 634
Регистрация: 10.07.2011
Сообщений: 14,407
Записей в блоге: 5
Завершенные тесты: 4
23.07.2014, 09:14 #10
Sergio Leone, okay, уговорили
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
#include <iostream>
#include <string>
 
 
using namespace std;
 
 
int main()
{
    string s = "A + (B * ((C + D) + (N+K))) * (A + B) * (D * (B - (C + (E+K))))";
    int level = 0;
    size_t i = 0;
    for (char c : s)
    {
        if (c == '(')
        {
            if (level < 2)
                s[i] = level ? '[' : '{';
            level++;
        }
        if (c == ')')
        {
            if (level <= 2)
                s[i] = level > 1 ? ']' : '}';
            level--;
        }       
        i++;
    }
    cout << s;
    return 0;
}
Добавлено через 2 минуты
Vtulhu, один я не понимаю, зачем вы пишете конструкции в таком стиле:
if( ++i == 3 ) { i = 0; }
вам не говорили, что одна строчка - один оператор? Тут их вообще 3, и если ++i == 3 это еще понятно, то вот i = 0 вообще не в кассу

Добавлено через 4 минуты
Vtulhu, и у вас ятп неправильно работать будет, например, на такой строке
C++
1
"A + (B * ((C + D) + (N+(K+(M+(N+T)))))) * (A + B) * (D * (B - (C + (E+K))))"
Судя по алгоритму вы просто сбрасываете счетчик, а это неправильно

Добавлено через 1 минуту
Mr.X, господи, 200 строк на элементарную задачу. У вас болезнь овер-инжинеринга
2
Vtulhu
371 / 377 / 96
Регистрация: 12.08.2011
Сообщений: 1,610
23.07.2014, 09:33 #11
Зачем regex? Зачем s.length? Зачем проверять символ на закрывающую скобку, даже если она открывающая?

И самое главное - неужели эта программа выдает правильный ответ? Еще раз напоминаю про блокнот (бумажный).
Правильный ответ должен быть такой: A + {B * [(C + D) + (N+K)]} * {A + B} * {D * [B - (C + {E+K})]}

Вот, прочтите статью, очень поучительно - http://habrahabr.ru/post/153225/

Добавлено через 9 минут
Цитата Сообщение от Psilon Посмотреть сообщение
вам не говорили, что одна строчка - один оператор?
Из любого правила есть исключения. Это, кстати, во многих коуд-гайдах прописано. Здесь вся строчка имеет один простой смысл, размазывать ее по строчкам - значит УХУДШАТЬ понимание. Впрочем, Вы и так, и эдак не поняли алгоритм (не только мой алгоритм, но и общий принцип, а может быть даже и ТЗ), судя по этому комментарию:

Цитата Сообщение от Psilon Посмотреть сообщение
Судя по алгоритму вы просто сбрасываете счетчик, а это неправильно
Сколько стоит блокнот? Выделите из бюджета семьи 50р. Зато Вы (и работодатель) себя через неделю не узнаете.
0
Psilon
Master of Orion
Эксперт .NET
5902 / 4799 / 634
Регистрация: 10.07.2011
Сообщений: 14,407
Записей в блоге: 5
Завершенные тесты: 4
23.07.2014, 09:56 #12
Зачем regex? Зачем s.length?
думал сначала регэкспами пройтись, потом передумал. Они плохо иерархические структуры обрабатывают
Зачем проверять символ на закрывающую скобку, даже если она открывающая?
допишите перед вторым if else если вам проще. Конечно, косяк, но компиль за мной в любом случае подберет, так что не критично.
Цитата Сообщение от Vtulhu Посмотреть сообщение
И самое главное - неужели эта программа выдает правильный ответ? Еще раз напоминаю про блокнот (бумажный).
Правильный ответ должен быть такой: A + {B * [(C + D) + (N+K)]} * {A + B} * {D * [B - (C + {E+K})]}
это неправильный ответ как бы. Читаем ТЗ
первого уровня на фигурные, а второго уровня – на квадратные, остальные же оставить круглыми
и понимаем, что E+K должны быть круглыми, у вас - фигурные.

Цитата Сообщение от Vtulhu Посмотреть сообщение
Вот, прочтите статью, очень поучительно - http://habrahabr.ru/post/153225/
во-первых при чем тут это? Во-вторых я в любом случае не согласен с автором, что
паттерны опять провалились и ООП вместе с ним. А вот супер-функция на 100500 строк - это, оказывается, быстрая разработка.
далее
Из любого правила есть исключения. Это, кстати, во многих коуд-гайдах прописано.
разве что преподавателем младших курсов универа, который окромя паскаля и фортрана на Эльбрусах ничего и не знает.
Цитата Сообщение от Vtulhu Посмотреть сообщение
Сколько стоит блокнот? Выделите из бюджета семьи 50р. Зато Вы (и работодатель) себя через неделю не узнаете.
я бы понял иронию, если бы вы сами могли читать задание нормально. А так - жаль, жаль, мимо.
0
Martein
Оператор ЭВМ 6 разряда
674 / 85 / 13
Регистрация: 22.06.2014
Сообщений: 177
23.07.2014, 10:32 #13
Для поиска разного рода вложенностей должна применяться рекурсия, имхо.
0
Psilon
Master of Orion
Эксперт .NET
5902 / 4799 / 634
Регистрация: 10.07.2011
Сообщений: 14,407
Записей в блоге: 5
Завершенные тесты: 4
23.07.2014, 10:51 #14
Martein, тезис тьюринга-черча, в студию
0
Martein
Оператор ЭВМ 6 разряда
674 / 85 / 13
Регистрация: 22.06.2014
Сообщений: 177
23.07.2014, 11:06 #15
Цитата Сообщение от Psilon Посмотреть сообщение
Martein, тезис тьюринга-черча, в студию
А я совсем новичок, не понимаю про что вы говорите. Там про то, что всё вычислимое может быть вычислено рекурсией?
0
23.07.2014, 11:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.07.2014, 11:06
Привет! Вот еще темы с ответами:

Создайте пользовательскую форму, с помощью которой можно вычислить значение функции пользователя - VBA
Если у кого-то появится желание помочь, пишите на почту... ..... Вышлю образец и пограммы с функцией пользователя (задание 2) и массивом...

Составьте программу, с помощью которой можно вычислить, на какой клетке суммарное количество зерен превысит N штук - Visual Basic
В старинной легенде шах решил наградить мудреца. Мудрец попросил выдать ему в качестве награды зерно, причем количество зерен он определил...

Вероятность наступления события А равна 0.7. Вычислить вероятность следующих событий - Теория вероятностей
Здравствуйте! Вероятность наступления события А равна 0.7. Вычислить вероятность следующих событий: а) Событие А наступит 3 раза в...

Вместо решения выводится формула, по которой нужно считать - C (СИ)
При компиляции никаких ошибок нет но при выполнении вместо решения выдает формулу по которой должно считать. Объясните пожалуйста что не...


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

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

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