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

Последовательность фибоначи - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Округление числа http://www.cyberforum.ru/cpp-beginners/thread131419.html
Люди добрые подскажите как числа в си округлить?Подчеркиваю - НЕ целую часть. Добавлено через 9 минут Разобрался!!
C++ Работа с массивами Здравствуйте, помогите реализовать эту задачу, желательно на C++ Builder. Дано натуральные числа n,m и случайные действительные числа, образуют прямоугольную таблицу A, где i=1,2...n;... http://www.cyberforum.ru/cpp-beginners/thread131407.html
Составить блок-схему по коду C++
Помогите сотавить блок-схему, пожалуйста! #include <iostream> #include <fstream> using namespace std; void proverka( int a,int i,int j,int &n,int N) { n=0; if(a==1) n++; ...
C++ Определение букв
Дано предложение , надо определить количество слов начинающихся с маленькой буквы. Вот что я написал, но не работает, #include <dtdio.h> #include <stdlib.h> #include <ctype.h> #include...
C++ Динамический массив структур http://www.cyberforum.ru/cpp-beginners/thread131384.html
Ребят просто нужна помощь. Вот код. Но лучше в АСЬКУ. Объясню в аське поподробней что, да как. Но проблема в том что в массиве структур инициализируется только первый элемент.Инициализация через...
C++ Удаление узла сбалансированного дерева Помогите пожалуйста: нужно написать функцию удаления узла сбалансированного дерева на С++, желательно попроще и без использования классов. Заранее благодарен любой помощи. Не проходите мимо(: подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
3051 / 1696 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
19.05.2010, 20:54
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
//Дан фаил f компоненты u0,u1,....un которого являются последовательными 
//числами Фибоначчи, получить в фаиле f последовательные числа Фибоначчи U0,U1,....Un+1
//сама последовательность Фибоначчи - u0=0; u1=1; ui=u i-1 + ui-2 (i=2,3...)
#include <iostream>
#include <fstream>
#include <locale>
#include <string>
#include <iomanip>
 
void  read_fib_file
    (
        const std::string&  filename,
        double&             predp_fib_num,
        double&             posledn_fib_num
    )
{
    std::ifstream  file(filename.c_str());
    
    if (!file) 
    {        
        std::cerr << "Невозможно открыть файл \"" 
                  << filename 
                  << "\""
                  << std::endl;
        exit(EXIT_FAILURE);
    }
 
    //Вывод содержимого файла в cout.    
    std::cout << "В файле содержатся числа Фиббоначчи: "              
              << std::endl;
    double  cur_fib_num;
    while(file >> cur_fib_num)
    {
        std::cout << cur_fib_num
                  << std::endl;
        predp_fib_num    = posledn_fib_num;
        posledn_fib_num  = cur_fib_num;
    }   
}   
 
void add_fib_num_to_file(const std::string&  filename)
{
    double predp_fib_num    = -1;
    double posledn_fib_num  = -1;
    read_fib_file(filename, predp_fib_num, posledn_fib_num);
    double next_fib_num;
    if(posledn_fib_num < 0)        next_fib_num = 0;
    else if(posledn_fib_num == 0)  next_fib_num = 1; 
    else next_fib_num = predp_fib_num + posledn_fib_num;    
 
    std::ofstream file(filename.c_str(), std::ios::out|std::ios::app);
    
    if (!file) 
    {        
        std::cerr << "Невозможно открыть файл \"" 
                  << filename 
                  << "\""
                  << std::endl;
        exit(EXIT_FAILURE);
    }
 
    //Вывод в файл следующего числа Фиббоначчи.
    std::cout << std::endl
              << "Добавляем следующее число Фиббоначчи: "
              << next_fib_num
              << std::endl;
 
    file << next_fib_num
         << ' ';
}
 
int main()
{
    std::cout << std::fixed
              << std::setprecision(0);
    std::locale::global(std::locale("rus"));
    //Назначаем имя файлу.
    std::string  file_name = "D:\\files_for_cpp_pr\\chisla_fib.txt";
 
    //Добавляем в файл очередное число Фиббоначчи.
    add_fib_num_to_file(file_name);
    std::cout << std::endl
              << std::endl;
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru