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

Бинарные файлы в С++ - C++

Восстановить пароль Регистрация
 
kalenikov
0 / 0 / 1
Регистрация: 25.01.2013
Сообщений: 22
06.12.2013, 15:58     Бинарные файлы в С++ #1
У меня есть програмка которая находит наименьший общий делитель числа
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>
using namespace std;
int main()
{
    int n;
    int m;
    int k;
    int i=0;
    cin>>n;
    cin>>m;
    cin>>k;
    k=k-1;
    while(true)
    {  k++;
        float n1=n%k;
        float m1=m%k;
        
        float sum1=m1+n1;
        if(n1==0 & m1==0)
            {cout<<k;
        continue;}
    }
    
    system("pause");
    return 0;
}
Но мне нужно что бы все значения читались из фала(*.dat) и записывались в файл(*.ans). Завтра олимпиада, а я не в ладах с файлами!!! HELP!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2013, 15:58     Бинарные файлы в С++
Посмотрите здесь:

Бинарные файлы.. C++
C++ С++ бинарные файлы
Бинарные файлы C++
бинарные файлы, C++ C++
Бинарные файлы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gooseim
Эксперт C++
500 / 404 / 35
Регистрация: 23.09.2010
Сообщений: 1,139
06.12.2013, 16:07     Бинарные файлы в С++ #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
27
28
29
30
31
32
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
    std::ifstream in("my.dat", std::ios::binary);
    std::ofstream out("my.ans", std::ios::binary);
    cin.rdbuf(in.rdbuf());
    cout.rdbuf(out.rdbuf());
    int n;
    int m;
    int k;
    int i=0;
    cin>>n;
    cin>>m;
    cin>>k;
    k=k-1;
    while(true)
    {  k++;
        float n1=n%k;
        float m1=m%k;
        
        float sum1=m1+n1;
        if(n1==0 & m1==0)
            {cout<<k;
        continue;}
    }
    in.close();
    out.close();
    system("pause");
    return 0;
}
Добавлено через 49 секунд
Не, не будет работать. У вас же бинарный файл.

Добавлено через 2 минуты
Используйте ifstream::read и ofstream::write
kalenikov
0 / 0 / 1
Регистрация: 25.01.2013
Сообщений: 22
06.12.2013, 21:39  [ТС]     Бинарные файлы в С++ #3
Цитата Сообщение от gooseim Посмотреть сообщение
Если минимум исправления вашего кода, то как-то так можно:
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
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
    std::ifstream in("my.dat", std::ios::binary);
    std::ofstream out("my.ans", std::ios::binary);
    cin.rdbuf(in.rdbuf());
    cout.rdbuf(out.rdbuf());
    int n;
    int m;
    int k;
    int i=0;
    cin>>n;
    cin>>m;
    cin>>k;
    k=k-1;
    while(true)
    {  k++;
        float n1=n%k;
        float m1=m%k;
        
        float sum1=m1+n1;
        if(n1==0 & m1==0)
            {cout<<k;
        continue;}
    }
    in.close();
    out.close();
    system("pause");
    return 0;
}
Добавлено через 49 секунд
Не, не будет работать. У вас же бинарный файл.

Добавлено через 2 минуты
Используйте ifstream::read и ofstream::write
Я не много неправильно выразил условие. Мне нужно что бы эта программа считовала значение с файла и записывала в него(без cin и cout).
kalenikov
0 / 0 / 1
Регистрация: 25.01.2013
Сообщений: 22
06.12.2013, 22:48  [ТС]     Бинарные файлы в С++ #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
#include<iostream>
using namespace std;
int main()
{
    int n;
    int m;
    int k;
    int i=0;
    cin>>n;
    cin>>m;
    cin>>k;
    k=k-1;
    while(true)
    {  k++;
        float n1=n%k;
        float m1=m%k;
        
        float sum1=m1+n1;
        if(n1==0 & m1==0)
            {cout<<k;
        continue;}
    }
    
    system("pause");
    return 0;
}
Но мне нужно что бы все значения читались из фала(*.dat) и записывались в файл(*.ans).Все данные нужно считать тупо с файла(без cin) и записать тупо в файл(без cout). Завтра олимпиада, а я не в ладах с файлами!!! HELP!!!
P.S. Эта тема уже была, но я ничего не понял((((
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
06.12.2013, 23:01     Бинарные файлы в С++ #5
8 и 9 строчку убираете, вместо
Цитата Сообщение от gooseim Посмотреть сообщение
cin>>n;
* * cin>>m;
* * cin>>k;
пишете
C++
1
2
3
in >> n; 
in >> m;
in >> k;
вместо
Цитата Сообщение от gooseim Посмотреть сообщение
cout<<k;
C++
1
out << k;
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
06.12.2013, 23:03     Бинарные файлы в С++ #6
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
#include <iostream>
#include <fstream>
using namespace std;
 
int main()
{
    int n;
    int m;
    int k;
    int i = 0;
    ifstream fin("in.dat");
    if (fin)
    {
        ofstream fout("out.ans");
        
        fin >> n >> m >> k;
        fin.close();
        k=k-1;
        while(true)
        {  
            k++;
            float n1=n%k;
            float m1=m%k;
        
            float sum1=m1+n1;
            if(n1==0 & m1==0)
            {
                fout << k << endl;
                continue;
            }
        }
        fout.close();
    }
    else cout << "Error!" << endl;
    
    system("pause");
    return 0;
}
Добавлено через 2 минуты
Цитата Сообщение от alsav22 Посмотреть сообщение
while(true)
Выход из цикла?

Добавлено через 1 минуту
Цитата Сообщение от kalenikov Посмотреть сообщение
Бинарные файлы в С++
Или чтение/запись в бинарном режиме нужны?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2013, 23:24     Бинарные файлы в С++
Еще ссылки по теме:

C++ Бинарные файлы
Бинарные файлы C++
C++ Бинарные файлы

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

Или воспользуйтесь поиском по форуму:
kalenikov
0 / 0 / 1
Регистрация: 25.01.2013
Сообщений: 22
06.12.2013, 23:24  [ТС]     Бинарные файлы в С++ #7
Буквально минутой назад понял всё сам, но все равно всем спасибо!!! Тема закрыта!!!
Yandex
Объявления
06.12.2013, 23:24     Бинарные файлы в С++
Ответ Создать тему
Опции темы

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