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

Отобрать из текстового файла в бинарный информацию - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Преобразовать каждое слово в строке, удалив из него все вхождения первой буквы этого слова http://www.cyberforum.ru/cpp-beginners/thread1147567.html
Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Преобразовать каждое слово в строке, удалив из него все вхождения первой буквы этого слова (количество пробелов между словами не изменять).
C++ Почему char * ? Попахивает извращением Речь идёт о функции-элементе write класса ostream. Почему там указатель на char в качестве первого параметра? В результате приходится приводить к этому типу адреса любых объектов, которые записываются в файл. Это же извращение. Есть способы обойти это - например, сделать параметр шаблона и заменить им char. Но почему-то реализован вот этот странноватый вариант. Почему ? http://www.cyberforum.ru/cpp-beginners/thread1147548.html
C++ Символ строки преобразовать в цифру
Нужно преобразовать именно в цифру, а получается, что переменная (int) накапливает цифры и получается числом. о_О! В чем ошибка? Как сделать правильно? #include "iostream" #include "stdio.h" #include <string> #include <clocale> using namespace::std; void main() {
C++ Что такое "for each"
Что за функция "for each" может кто-то объяснить!
C++ Программа в windows выполняется нормально, а в UNIX возникает бесконечный цикл http://www.cyberforum.ru/cpp-beginners/thread1147517.html
Суть программы - меню из 5 пунктов. #include <cstdlib> #include <iostream> #include <string> #include <algorithm> #ifdef _WIN32 #define CLEAR_SCREEN "cls" #else
C++ Функция должна вычислять рандомное значение от a до b Создать 2 функции, первая должна вычислять рандомное значение от a до b( a и b мы должны ввести сами),это значение должно выводится в массив,состоящий из 20 символов( то есть нужно срандомить 20 раз) который находится во второй функции и вывести этот массив на экран. Помогите пожалуйста.Спасибо кто отозвался подробнее

Показать сообщение отдельно
_Лето_
1 / 1 / 0
Регистрация: 03.11.2013
Сообщений: 68
14.04.2014, 01:00  [ТС]     Отобрать из текстового файла в бинарный информацию
О, я не совсем точно сформулировал задание.
У мне нужно получить двоичный файл из текстового. В текстовом у меня Имена, зарплата, сколько детей и есть или нет права у человека.

Пример:
Иванов м 15000 2 +
Семенова ж 13000 6 +
Катрянова ж 16000 2 -
Петров м 12000 5 -
Сидоров м 6000 3 +
Козлов м 8000 4 -
Краснов м 10000

У меня не совсем получается сделать преобразование.
Я скидываю код, который начали делать на курсах.

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
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#include <iostream.h>
#pragma hdrstop
#include <tchar.h>
 
//В текстовом файле находится информация о этих людях:
//фамилия, пол, оклад, дети, права.
//Вывести в первый бинарный файл:
//женщин которые имеют более 1 ребенка и мужчин имеющих более 2 детей
//Во-второй:
//найти лиц с наибольшим и наименьшим окладом и сосчитать сколько 
//человек имеют права. Напечатать результат.
 
#pragma argsused
 
struct people1 {
    char name[15];
    int year;
    int oc[3];
};
 
int _tmain(int argc, _TCHAR* argv[])
{
    FILE *in, *out;
 
    //Преобразование текстового файла file1.txt в двоичный file1.dat
    people1 a;
    int s=sizeof(a);
    out=fopen("file1.dat", "w+b");
    if ((in=fopen("file1.txt", "r")) != NULL)
    {
        while (fgets(a.surname,15,in) != NULL)
        {
            fgets(a.name, 15, in);
            fscanf(in, "%f %f %f %f\n", a.year, a.oc[0], a.oc[1], a.oc[2]);
            fwrite(&a,s,1,out);
        }
    }
 
    fclose(in);
    fclose(out);
 
    return 0;
}
Я так и не смог понять, что нужно делать дальше и как вообще работает этот код.
 
Текущее время: 20:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru