Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/47: Рейтинг темы: голосов - 47, средняя оценка - 4.94
 Аватар для nxmatrix
1 / 1 / 0
Регистрация: 06.10.2012
Сообщений: 6

Вычисление цепных дробей

06.10.2012, 10:10. Показов 9371. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте !

я начинающий по программирований с++
найдите формулу плииз
если N=3;
1+(1/(2+(1/3)))

очень нужно!!! заранее спасибо
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.10.2012, 10:10
Ответы с готовыми решениями:

Вычисление непрерывных дробей и выражений. Вычисление полиномов и их производных.
1. Чему равна знакочередующаяся сумма цифр числа n. 2. Даны натуральное число n и вещественное число х. Составить программу для...

вычисление дробей
знаменатель высчитывается правильно, а вот числитель нет Кто-то подскажет почему? #include<iostream> #include<conio.h> ...

Задача на масив.Ввод дробей и вычисление среднего значения дроби!
#include <iostream> using namespace std; const int MAX=15; const int MAXI=13; int main() { int j,s,h,i,r; char...

16
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
07.10.2012, 19:10
Глубоко вздохните, очистите сознание от тревожных мыслей и попытайтесь сформулировать свой вопрос по-человечески.
1
Заблокирован
07.10.2012, 19:36
-_- далеко пойдешь, а если серьезно, то напиши,пожалуйста, по конкретней условие.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
07.10.2012, 21:15
И название темы предложите понятное, да и правила не мешало бы почитать.
0
 Аватар для nxmatrix
1 / 1 / 0
Регистрация: 06.10.2012
Сообщений: 6
09.10.2012, 15:54  [ТС]
цель: составить формулу !

Тема: Цикл "for" ;

На черное окошко выводишь "2"

компютер вычисляет так: 1+(1/2);

если писать "3" на черное окно то :1+(1/(2+(1/3))):

1+1
2+ 1
3

Добавлено через 4 минуты
Можете как дробь сделать чтоб по понятнее было ;
если писать "2" на окно;

один плюс одна вторая
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
09.10.2012, 16:05
Ты меня так порадовал, что я тебе даже отвечу кодом!

C++
1
2
3
4
5
6
7
int N = 0;
cin >> N;
double result = 1;
for( int n = 2; n <= N; ++n )
    result += 1./(double)n;
 
cout << result;
Добавлено через 4 минуты
А! Тебе же формулу, а не решение?
Я ашипся.(

Добавлено через 3 минуты
В такой постановке задачу нужно решать при помощи рекурсии. Или два цикла использовать, но это не красиво и я не буду.
1
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
09.10.2012, 16:58
Цитата Сообщение от Deviaphan Посмотреть сообщение
В такой постановке задачу нужно решать при помощи рекурсии. Или два цикла использовать
Зачем? О_о
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
#include <iostream>
#include <sstream>
#include <string>
 
double solve(int n)
{
    if (n <= 0)
        return 0.0;
    
    double result = n;
    
    for (int i = n - 1; i >= 1; --i)
        result = i + 1.0 / result;
    
    return result;
}
 
std::string int_to_str(int value)
{
    std::ostringstream ostr;
    
    ostr << value;
    
    return ostr.str();
}
 
std::string build_formula(int n)
{
    if (n == 1)
        return "1";
    
    std::string formula = int_to_str(n);
    
    for (int i = n - 1; i > 1; --i)
        formula = "(" + int_to_str(i) + " + 1 / " + formula + ")";
    
    return "1 + 1 / " + formula;
}
 
int main()
{
    std::cout << build_formula(1) << " = " << solve(1) << std::endl;
    std::cout << build_formula(2) << " = " << solve(2) << std::endl;
    std::cout << build_formula(3) << " = " << solve(3) << std::endl;
    std::cout << build_formula(4) << " = " << solve(4) << std::endl;
    
    return 0;
}
1
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
09.10.2012, 17:14
Имеется теорема, которая утверждает, что любое рациональное число представимо, и притом единственным образом, в виде конечной цепной дроби. Поэтому в задании нужно найти это рациональное число, а для этого можно, например, воспользоваться так называемыми подходящими дробями. Так что задача не в лоб решается.
0
Делаю внезапно и красиво
Эксперт С++
 Аватар для Deviaphan
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
09.10.2012, 17:28
Цитата Сообщение от silent_1991 Посмотреть сообщение
Зачем? О_о
Затем, что не подумав сказал.
2
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
09.10.2012, 17:37
Thinker, вы не поняли, в задаче всего лишь надо посчитать значение конечной цепной дроби до введённого n, что и было проделано.
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
09.10.2012, 18:14
Цитата Сообщение от silent_1991 Посмотреть сообщение
в задаче всего лишь надо посчитать значение конечной цепной дроби
правильно, а значение конечной цепной дроби это рациональное число вида a/b, а выполняя деление вы это рациональное число можете не получить. но я не спорю, если хотите, то делите на здоровье).
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
09.10.2012, 19:22
Цитата Сообщение от Thinker Посмотреть сообщение
а выполняя деление вы это рациональное число можете не получить
Ой, вот ладно.

Добавлено через 1 минуту
Thinker, я в любом случае получу рациональное число. Потому что иррациональное число компьютер (в частности, формат IEEE 754) представить не в состоянии.
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
09.10.2012, 19:26
Цитата Сообщение от silent_1991 Посмотреть сообщение
[я в любом случае получу рациональное число.
согласен, но не всегда это рациональное число будет равно искомому числу.
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
09.10.2012, 19:28
Thinker, оно, опять же, в принципе ему равно не будет. Ибо формат IEEE 754
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
09.10.2012, 19:31
Смейтесь, не смейтесь, а чтобы вычислить значение конечной цепной дроби нужны другие методы, которые позволяют получить ответ вида a/b
0
 Аватар для nxmatrix
1 / 1 / 0
Регистрация: 06.10.2012
Сообщений: 6
12.10.2012, 20:08  [ТС]
Благадарю всех
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
12.10.2012, 20:55
Если уж вновь подняли эту тему, вот вам вычисление рациональной дроби
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
#include<iostream>
 
void F(int *a, int n, int &p, int &q)
{
   int i, p0, p1, q0, q1;
   p0 = 1; p = p1 = a[0];
   q0 = 0; q = q1 = 1;
   for(i = 1; i < n; i++)
   {
       p = p0 + p1*a[i];
       p0 = p1; p1 = p;
       q = q0 + q1*a[i];
       q0 = q1; q1 = q;
   }
}
 
int main()
{
   int p, q, n, a[] = {1, 2, 3};
   n = sizeof(a) / sizeof(*a);
   F(a, n, p, q);
   std::cout << p << "/" << q << "\n";
   return 0;
}
Ответ: 10/7
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.10.2012, 20:55
Помогаю со студенческими работами здесь

Вычисление цепных дробей
Доброго времени суток. Delphi :) Помогите пожалуйста написать программу для вычисления двух цепных дробей. ...

Найти сравнение методом цепных дробей
67x\equiv 64 (mod183) 183=67\cdot2+49 67=11\cdot6+1 11=9\cdot1+2 9=2\cdot4+1 2=1\cdot2 ...

Построение цепных дробей целых гауссовых чисел
Ребята, всем привет! Передо мной поставили такую задачу: написать программу, которая построит цепную дробь при делении целых гауссовых...

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

Вычисление дробей с высокой точностью
не могу понять что не так...показывает синт. ошибку pascal строка 42!!! посмотри пожалуйста может кто найдет ответ что же не так тут: ...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru