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

Разработать С + +-программу с использованием файлов (Фибоначчи) - C++

Восстановить пароль Регистрация
 
balaneckij
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 17
13.12.2012, 17:17     Разработать С + +-программу с использованием файлов (Фибоначчи) #1
!!!!Помогите срочно!!!!

Создать С + +-программу отображения на экране последовательности первых К чисел Фибоначчи, которые вычисляются по следующему правилу: F_1 = 1; F_2 = 1; F_n = F_ (n-1) + F_ (n-2).
Полученные элементы последовательности отражать на экране монитора в строку через пробел и записывать в файл «LR_4_1.txt». После завершения записи в файл, закрыть его. Восстановить файл и отобразить его содержимое по образцу:
F (1) = 1
F (2) = 1
F (3) = 2
......
Значение К вводить с клавиатуры.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2012, 17:17     Разработать С + +-программу с использованием файлов (Фибоначчи)
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,410
13.12.2012, 17:36     Разработать С + +-программу с использованием файлов (Фибоначчи) #2
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
#include <iostream>
#include <fstream>
 
int main()
{
    int k, x;
    std::cin >> k;
    std::ofstream o("fib.txt");
    long long *arr = new long long[k];
    arr[0] = 1;
    if (k != 1) arr[1] = 1;
    for (int i=2; i < k; i++)
        arr[i] = arr[i-1] + arr[i-2];
 
    for (int i=0; i < k; i++)
    {
        std::cout << arr[i] << " ";
        o << arr[i] << " ";
    }
    o.close();
    std::ifstream ifs("fib.txt");
    std::cout << std::endl;
    for (int i=1; i <= k && ifs >> x; i++)
        std::cout << "F (" << i << ") = " << x << std::endl;
    delete []arr;
}
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
13.12.2012, 19:32     Разработать С + +-программу с использованием файлов (Фибоначчи) #3
На правах бреда (всё равно нормальное решение уже написали):
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
#include <cstddef>
#include <type_traits>
#include <iostream>
#include <fstream>
#include <utility>
 
#include <boost/iterator/counting_iterator.hpp>
 
 
template<typename Integral = std::size_t>
struct fibonacci {
   
   constexpr operator Integral() noexcept {
      return current;
   }
   
   fibonacci & operator ++() noexcept {
      Integral old = current;
      current += previous;
      previous = old;
      return *this;
   }
   
   fibonacci operator ++(int) noexcept {
      fibonacci copy(*this);
      ++(*this);
      return copy;
   }
      
   constexpr fibonacci() noexcept
         : current(1), previous(0) {}
         
   template<
         typename OtherIntegral
       , typename = typename std::enable_if<
               std::is_convertible<OtherIntegral, Integral>::value
         >::type
   >
   constexpr fibonacci(fibonacci<OtherIntegral> const& rhs) noexcept
         : current(rhs.current), previous(rhs.previous) {}
         
   template<
         typename OtherIntegral
       , typename = typename std::enable_if<
               std::is_convertible<OtherIntegral, Integral>::value
         >::type
   >
   fibonacci & operator =(fibonacci<OtherIntegral> const& other) noexcept {
      current  = other.current;
      previous = other.previous;
      return *this;
   }
   
   
private:
   Integral current;
   Integral previous;
};
 
 
template<typename Integral = std::size_t>
using fibonacci_iterator = boost::counting_iterator<
      fibonacci<Integral>
    , boost::forward_traversal_tag
    , std::ptrdiff_t
>;
 
 
std::ostream & write_fibonacci(std::ostream & ostream, std::size_t k) {
   for (fibonacci_iterator<> it; k != 0; --k, ++it) {
      ostream << *it << ' ';
   }
   ostream << std::endl;
   return ostream;
}
 
template<typename Char, typename CharTraits>
std::basic_ostream<Char, CharTraits> &&
write_fibonacci(std::basic_ostream<Char, CharTraits> && ostream, std::size_t k) {
   write_fibonacci(ostream, k);
   return std::move(ostream);
}
 
 
int main() {   
   auto constexpr filename = "LR_4_1.txt";
   
   std::size_t k;
   std::cout << "k? ";
   std::cin >> k;
   
   write_fibonacci(std::cout, k);
   write_fibonacci(std::ofstream(filename), k);
   
   std::ifstream ifs(filename);
   for (std::size_t number, i = 1; ifs >> number; ++i) {
      std::cout << "F(" << i << ") = " << number << std::endl;
   }
}
http://liveworkspace.org/code/wswkX
Yandex
Объявления
13.12.2012, 19:32     Разработать С + +-программу с использованием файлов (Фибоначчи)
Ответ Создать тему
Опции темы

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