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

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

Войти
Регистрация
Восстановить пароль
 
BestIn
0 / 0 / 0
Регистрация: 16.05.2013
Сообщений: 10
#1

Вводы-выводы из файла - C++

16.06.2013, 01:59. Просмотров 411. Ответов 5
Метки нет (Все метки)

Приветствую.Изучаю программирование,в общем мне нужно сдать курсовую.В курсовой задачи.Я написал сами коды программ,но к ним по заданию нужны тесты(такие тесты,чтобы заваливали программу).Но проблема заключается в том,что я не могу никак понять,как сделать так чтобы значения брались из файла(например инпут_0.тхт)и выводились в (оутпут_0.тхт).
Вот код одной из самых простых моих задач,прошу сделать для него ввод-вывод из файлов,а по его примеру я постараюсь сделать остальные.Да,еще,файлов должно быть 10(инпут_0 по инпут_9).Если кто-то сможет мне помочь буду очень благодарен.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <algorithm>
using namespace std;
 
int a[100000], n;
 
int main() {
        a[0] = 0;
        a[1] = 1;
        for(int i = 2; i < 100000; i ++)
                if(i % 2) {
                        a[i] = a[i/2] + a[i/2+1];
                } else {
                        a[i] = a[i/2];
                }
        for(int i = 1; i < 100000; i ++) {
                a[i] = max(a[i-1], a[i]);
        }
        while(cin >> n, n) {
                cout << a[n] << endl;
        }
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2013, 01:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вводы-выводы из файла (C++):

Потоки вводы и вывода - C++
Не обрезает пробелы string str; cin.setf(ios::skipws); cin &gt;&gt; str; cout &lt;&lt; str; И можно как-нибудь с...

Проблемы с перегрузкой операторов файлового вводы/вывода - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;string&gt; using namespace std; class Array{ int...

Программа пропускает второй и третий вводы данных - C++
Добрый день. При выполнении программки после ввода первых данных пропускает ввод остальных и сразу выдает результат. Подскажите...

Разные выводы - C++
void combSort(float** matrix, int M, int N, int type) { int gap = M; bool swapped = true; while (gap &gt; 1 || swapped) { ...

Лишние строки после выводы - C++
Доброе время суток! У меня следующий вопрос: когда я скомпилировал программу и компьютер начинает ее выполнять, то после последних...

Как сделать рандомные выводы слов и стихов - C++
m:cout &lt;&lt; &quot;Любимая,выбери то что хочешь увидеть:&quot; &lt;&lt; endl&lt;&lt;endl &lt;&lt; &quot;1.Стих&quot;&lt;&lt;endl&lt;&lt;endl &lt;&lt; &quot;2.Комплимент&quot;&lt;&lt;endl&lt;&lt;endl &lt;&lt;...

5
Vourhey
Почетный модератор
6482 / 2256 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
16.06.2013, 02:04 #2
http://www.microsoft.com/resources/d....mspx?mfr=true
0
azbest
41 / 41 / 8
Регистрация: 12.03.2013
Сообщений: 148
16.06.2013, 02:07 #3
Попробуй чтоб менше мороки добавить в начало кода (после директив)
C
1
2
freopen ("input_0.txt","r",stdin);
freopen ("output_0.txt","w",stdout);
и обычные команды cin/cout будут читать и выводить в файл
0
BestIn
0 / 0 / 0
Регистрация: 16.05.2013
Сообщений: 10
17.06.2013, 00:36  [ТС] #4
Цитата Сообщение от Vourhey Посмотреть сообщение
http://www.microsoft.com/resources/d....mspx?mfr=true
непонятно,если бы я использовать прочитанное,я бы сюда не писал.Нужен наглядный пример.

Добавлено через 1 минуту
Цитата Сообщение от azbest Посмотреть сообщение
Попробуй чтоб менше мороки добавить в начало кода (после директив)
C
1
2
freopen ("input_0.txt","r",stdin);
freopen ("output_0.txt","w",stdout);
и обычные команды cin/cout будут читать и выводить в файл
попробывал,впринципе работает(но почему то ответ выводит не просто "4" к примеру,а много 4рок в ряд по вертикали)
и такое прокатывает только для одного файла.Но всеравно спасибо.

Добавлено через 7 часов 30 минут
Все еще ищу кто может показать наглядный пример
0
Vourhey
Почетный модератор
6482 / 2256 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
17.06.2013, 00:42 #5
Цитата Сообщение от BestIn Посмотреть сообщение
непонятно,если бы я использовать прочитанное,я бы сюда не писал
Что конкретно? Ввод из файла - "программа < файл"
Что здесь не понятно?

Добавлено через 1 минуту
Цитата Сообщение от BestIn Посмотреть сообщение
Нужен наглядный пример
На странице по ссылке приведены примеры:
sort<file.txt
Мог бы почитать. Если бы хотел.
0
BestIn
0 / 0 / 0
Регистрация: 16.05.2013
Сообщений: 10
18.06.2013, 12:46  [ТС] #6
Цитата Сообщение от Vourhey Посмотреть сообщение
Что конкретно? Ввод из файла - "программа < файл"
Что здесь не понятно?

Добавлено через 1 минуту

На странице по ссылке приведены примеры:

Мог бы почитать. Если бы хотел.
Да ничего не понятно,написан оператор,а куда его вставлять,как,зачем,я не вижу.И пример-это одна строчка?sort < list.txt > alphlist.txt
мне лично это ничего не дает.Я просто прошу,мне целый код,какой-нибудь простенькой задачи(можно не моей)где ввод и вывод идет в файл.Именно полный код.К примеру я попробывал через создания массива сделать,но почему то не получается,открывается только один файл(и то не так как нужно),может его хотя бы исправит кто-то.
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
    #include "stdafx.h"
#include <iostream>
#include <algorithm>
#include <fstream>
using namespace std;
 
string ifs[]={"input_0.txt","input_1.txt","input_2.txt","input_3.txt","input_4.txt","input_5.txt","input_6.txt","input_7.txt","input_8.txt","input_9.txt"}; 
string ofs[]={"output_0.txt","output_1.txt","output_2.txt","output_3.txt","output_4.txt","output_5.txt","output_6.txt","output_7.txt","output_8.txt","output_9.txt"};
 
int a[100000], n;
 
int main() {
setlocale (0, "RUS");
int count=0; while (count<10) 
{ 
ifstream f (ifs[count].c_str());
ofstream f_0 (ofs[count].c_str());
cout<<"Исходные данные i:"<<count<<endl;
if (!f.is_open()) // если файл не открыт
cout << "Файл не может быть открыт!\n"; // сообщить об этом
else {
a[0] = 0;
a[1] = 1;
for(int i = 2; i < 100000; i ++)
if(i % 2) {
a[i] = a[i/2];
} else {
a[i] = a[i/2] + a[i/2+1];
}
 
for(int i = 1; i < 100000; i ++){
a[i] = max(a[i-1], a[i]);
}
}
 f.close();
while(cin >> n, n) {
cout << a[n] << endl;
f_0.close(); }
count++;
return 0;
}
}
Добавлено через 18 часов 45 минут
Ну хелпаните кто-нибудь,завтра сдавать,а я не могу с этим разобраться
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.06.2013, 12:46
Привет! Вот еще темы с ответами:

C++ Аналитик: постоянно анализировать данные и отображать выводы на экране - C++
Всем привет! Столкнулся с необходимостью написания программы, которая будет постоянно анализировать данные и отображать свои выводы на...

C++. Исчезает при выводы буква "t" - C++
Вот само задание.Заменить в заданном тексте слово тире на знак – (тире).Я решил реализовать его так: #include &lt;iostream&gt; #include...

Обработка списков: вводы, разность, получение длины и сортировка [Arity] - Prolog
помогите с прогой на Arity prolog?! организовать ввод и формирование двух символьных списков.Найти разность списков.Определить длину...

разные выводы - C Linux
запустил код на сайте ideone.com #include &lt;sys/types.h&gt; #include &lt;unistd.h&gt; #include &lt;stdio.h&gt; int main() { int fd,...


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
18.06.2013, 12:46
Ответ Создать тему
Опции темы

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