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

Количество различных рациональных чисел которые можно получить роставляя скобки - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
Taras_Z
 Аватар для Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
27.10.2012, 15:42     Количество различных рациональных чисел которые можно получить роставляя скобки #1
Обозначим i-е простое число как Рi (Р1=2, Р2=3, Р3=5 и т.д.). Для данного числа n рассмотрим выражение: Р1 / Р2 / Р3 / ... / Рn. Напишите программу, подсчитывающую количество различных рациональных чисел, которые можно получить, расставляя в данном выражении скобки. Например, если n=4, то таких чисел будет тоже 4: (((2/3)/5)/7 = 2/105, 2/(3/(5/7)) = 10/21, (2/3)/(5/7) = 14/15 и 2/((3/5)/7) = 70/3.
Программа Second читает с клавиатуры целое число n (от 2 до 100) и выводит на экран количество различных возможных рациональных чисел.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2012, 15:42     Количество различных рациональных чисел которые можно получить роставляя скобки
Посмотрите здесь:

Дана последовательность чисел. Найти количество различных чисел в этой последовательности C++
Дана последовательность чисел. Найти количество различных чисел в этой последовательности C++
C++ Алгебра: Есть массив чисел и число f, надо определить, можно ли получить f, складывая любое количество чисел из массива
C++ Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран
C++ Найти количество различных чисел, которые можно получить из числа ровно за C команд
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CEBEP
105 / 105 / 9
Регистрация: 21.03.2010
Сообщений: 437
27.10.2012, 16:26     Количество различных рациональных чисел которые можно получить роставляя скобки #2
только количество или сами числа тоже?

Добавлено через 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
#include <iostream>
 
bool isSimplify(unsigned n)
{
    if (n < 2)
    {
        return !true && !false;
    }
    unsigned i = n;
    do
    {
        --i;
    }
    while (n % i);
    return i == 1;
}
 
void main()
{
    const unsigned N = 100;
    unsigned simplify[N];
    unsigned k = 0;
    for (unsigned i = 0; i != N; ++i)
    {
        while (!isSimplify(k))
        {
            ++k;
        }
        simplify[i] = k++;
    }
    std::cout << "Insert n: ";
    unsigned n;
    std::cin >> n;
 
}
дальше стало надо уходить... мб пригодится.
Taras_Z
 Аватар для Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
27.10.2012, 21:01  [ТС]     Количество различных рациональных чисел которые можно получить роставляя скобки #3
записать простие числа я и сам могу
как посмотреть все варианти положение скобок???
CEBEP
105 / 105 / 9
Регистрация: 21.03.2010
Сообщений: 437
27.10.2012, 22:18     Количество различных рациональных чисел которые можно получить роставляя скобки #4
Код
(1(1(1(11
(1(1((111
(1((1(111
((1(1(111
(1((11(11
((1(11(11
((11(1(11
(1(((1111
((1((1111
(((1(1111
((((11111
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
28.10.2012, 00:19     Количество различных рациональных чисел которые можно получить роставляя скобки #5
Цитата Сообщение от Taras_Z Посмотреть сообщение
Каждый настоящий программист подтвердит, что при помощи десяти пальцев на руках можно сосчитать не только до 10, но и до 1024!

Не по теме:

Значит "настоящие программисты" реально не считали на пальцах. Можно только до 1023

Garic_
71 / 71 / 7
Регистрация: 03.11.2009
Сообщений: 468
28.10.2012, 09:33     Количество различных рациональных чисел которые можно получить роставляя скобки #6
Taras_Z, Сначала записываешь в массив P свои примеры, а потом в цикле считываешь P[i] и сравниваешь if(P[i] == СкобкаЛевая){...}
Taras_Z
 Аватар для Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
28.10.2012, 11:07  [ТС]     Количество различных рациональных чисел которые можно получить роставляя скобки #7
не совсем понял
CEBEP
105 / 105 / 9
Регистрация: 21.03.2010
Сообщений: 437
28.10.2012, 11:08     Количество различных рациональных чисел которые можно получить роставляя скобки #8
http://neerc.ifmo.ru/wiki/index.php?...81%D1%82%D0%B8
Garic_
71 / 71 / 7
Регистрация: 03.11.2009
Сообщений: 468
28.10.2012, 13:12     Количество различных рациональных чисел которые можно получить роставляя скобки #9
String find[100][100];

C++
1
2
3
4
5
6
7
8
9
10
for (int i=0; i <= RichEdit1->Lines->Count-1; i++)//êîëè÷. ñòðîê (Г’ГҐГЄГ±ГІ ïåðåâîäГ*)
  {//1Г© öèêë ïðîáåã ГЇГ® ñòðîêГ*Г¬
       S = RichEdit1->Lines->Strings[i]; //В№ ñòðîêè
              DSR1 = S.Length(); //S.Length() - äëèГ*Г* ñòðîêè
DSR1=Trim(DSR1);
        for (int j=1; j<=DSR1; j++)
        {//2Г© öèêë ïðîáåã Гў ñòðîêå
           find[i][j] = RichEdit1->Lines->Strings[i][j];
           if (find[i][j] == ТутСавниваешь свои скобки)
      {здесь выводишь результат}
Что то воде того
Taras_Z
 Аватар для Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
28.10.2012, 14:04  [ТС]     Количество различных рациональных чисел которые можно получить роставляя скобки #10
Спасибо но я уже сделал по другому
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
28.10.2012, 16:37     Количество различных рациональных чисел которые можно получить роставляя скобки #11
Taras_Z, если результат нужен только такой:
Цитата Сообщение от Taras_Z Посмотреть сообщение
Напишите программу, подсчитывающую количество различных рациональных чисел, которые можно получить, расставляя в данном выражении скобки.
то это количество будет таким: 2^(n-2)
Андрей1992
0 / 0 / 1
Регистрация: 13.06.2012
Сообщений: 60
29.10.2012, 11:39     Количество различных рациональных чисел которые можно получить роставляя скобки #12
Цитата Сообщение от valeriikozlov Посмотреть сообщение
Taras_Z, если результат нужен только такой:
то это количество будет таким: 2^(n-2)
А как выводится если не секрет?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2012, 18:29     Количество различных рациональных чисел которые можно получить роставляя скобки
Еще ссылки по теме:

C++ Определить количество различных комбинаций монет, которые могут сложиться в определенную сумму
Задан массив K(m) попарно различных целых чисел. Получить все перестановки целых чисел C++
Найти сколько различных трехзначных чисел можно получить из заданного числа n путем вычеркивания цифр C++

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

Или воспользуйтесь поиском по форуму:
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
29.10.2012, 18:29     Количество различных рациональных чисел которые можно получить роставляя скобки #13
Цитата Сообщение от Андрей1992 Посмотреть сообщение
А как выводится если не секрет?
секрет, но не очень. Надеюсь что в само задание вникли.
Рассмотрим еще раз выражение:
Цитата Сообщение от Taras_Z Посмотреть сообщение
Р1 / Р2 / Р3 / ... / Рn.
Можно заметить, что как скобки не расставляй P1 всегда будет наверху (в числителе). И P2 всегда будет внизу (в знаменателе).
А вот все остальные Pi можно с помощью скобок расположить и сверху (в числителе) и внизу (в знаменателе), независимо от того как соседнее P расположено. Т.е. начиная от P3 и до Pn могут быть или сверху или снизу. Немного комбинаторики и получается: 2^(n-2)
К примеру:
Цитата Сообщение от Taras_Z Посмотреть сообщение
2/((3/5)/7) = 70/3
Можно было записать и так: 2/(3/5/7) = 70/3. Хотя вариант расположения скобок разный, но в задаче нужно посчитать не количество вариантов расположения скобок, а:
Цитата Сообщение от Taras_Z Посмотреть сообщение
Количество различных рациональных чисел которые можно получить роставляя скобки
рациональные числа в обоих случаях одинаковы.
Yandex
Объявления
29.10.2012, 18:29     Количество различных рациональных чисел которые можно получить роставляя скобки
Ответ Создать тему
Опции темы

Текущее время: 04:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru