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

Истинность конца файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Detours, собранная либа http://www.cyberforum.ru/cpp-beginners/thread1215368.html
Ребят, скиньте собранный detours(.h,.lib,.dll) пытался собрать в vs 2010, не получилось, а ставить другую пока желания нет. Если раскидаю по папкам файлы(если знаете, напишите где что должно лежать), работать будет ? Его же не обязательно самолично собирать ?
C++ Применить изменения к файлу, который был спроецирован в память, и там изменен Вот я отобразил файл в память, произвел с файлом в памяти нужные манипуляции и теперь мне нужно сохранить эти самые манипуляции в файле . Как, собственно, это лучше осуществить? http://www.cyberforum.ru/cpp-beginners/thread1215363.html
C++ Циклический двусвязный список
Помогите написать функцию удаления всех элементов списка с заданным значением. Не могу додуматься как сделать. struct Node { int number; Node* next; Node* prev; };
C++ Неправильный вывод. Преобразовать массив: сначала расположить элементы, модуль которых не больше 1
Основное условие: В одномерном массиве, состоящем из n-вещественных элементов. вычислить: 1) номер минимального элемента массива; 2) Сумму элементов массива, расположенных между первым и вторым отрицательными элементами. Преобразовать массив так, чтобы сначала располагались элементы. которые по модулю не превышающие 1, а потом все остальные. Все сделал, но есть проблема - уже преобразованый...
C++ Подсчитать количество различных разбиений числа N на натуральные слагаемые http://www.cyberforum.ru/cpp-beginners/thread1215324.html
Условие: требуется подсчитать количество различных разбиений числа N на натуральные слагаемые. Два разложения считаются различными, если одно нельзя получить из другого путем перестановки слагаемых. Имеется вот такой код, но нужно найти в нём ошибку. #include "stdio.h" #include "stdafx.h" #include <iostream> #include <cstring> using namespace std;
C++ Работа с последовательностью Доброго времени суток. Помогите пожалуйста ребят в задачке. Не могу понять как делать В зависимости от того, образуют элементы заданного массива целых чисел из n элементов строго бывающую, не возрастающую, строго возрастающую, неубывающую последовательность, выдать соответствующее сообщение. подробнее

Показать сообщение отдельно
SMYH
 Аватар для SMYH
2 / 2 / 0
Регистрация: 23.10.2013
Сообщений: 38
23.06.2014, 22:36  [ТС]     Истинность конца файла
visual studio 2012.
Вот код.
Кликните здесь для просмотра всего текста

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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
void McElicce::decodeFileWithLog(char* pathToFile){
    ofstream dlog("decode_log.txt", ios::out);
    
    ifstream input(pathToFile, ios::in||ios::binary);
    ofstream output("fromBob.txt", ios::out);
    queue<bool> waitingBitsIn;
    queue<bool> waitingBitsOut;//sd
    vector<bool> inputLog;
    vector<bool> outputLog;
    
    Matrix trans_check = standard_check.transpose();
    while(!input.eof()){
 
        if(waitingBitsIn.size()>=length){
            Matrix from_stream_word(length, 1);
            for(int i = 0; i<length; i++){
                from_stream_word.matrix[0][i] = waitingBitsIn.front();
                inputLog.push_back(from_stream_word.matrix[0][i]);
                
                waitingBitsIn.pop();
            }
            dlog<<"\nFrom stream: "<<from_stream_word<<endl;
            Matrix v_word = from_stream_word*rand_P.invertible();
            dlog<<"V word: "<<v_word<<endl;
            
            Matrix cur_syndrome = v_word*standard_check.transpose();
            dlog<<"Syndrome: "<<cur_syndrome<<endl;
 
            Matrix mistake(length,1);
 
            for(int i = 0; i<syndroms.size(); i++){
                if(cur_syndrome==syndroms[i]){
                    mistake = mistake_words[i];
                    break;
                }
            }
            dlog<<"Mistake: "<<mistake<<endl;
 
            v_word = v_word+mistake;
            dlog<<"Corr. word: "<<v_word<<endl;
            Matrix word(dimension,1);
            bool is_word_exist = false;
            
            int number_of_words = pow(2,dimension);
            for(int i = 0; i<number_of_words; i++){
                if(code_words[i]==v_word){
                    word = info_words[i];
                    is_word_exist = true;
                    break;
                }
            }
            dlog<<"Word: "<<word<<endl;
            char currentOutChar = 0;
            if(is_word_exist){
                dlog<<"Word exist: ";
                Matrix real_word = word*rand_S.invertible();
                dlog<<"Real word: "<<real_word<<endl;
                for(int i = 0; i<word.width; i++){
                    waitingBitsOut.push(real_word.matrix[0][i]);
                    outputLog.push_back(real_word.matrix[0][i]);
                }
                while(waitingBitsOut.size() >= 8){
                    currentOutChar = 0;
                    for(int i = 7; i >= 0; i--){
                        if(waitingBitsOut.front()){
                            currentOutChar+= pow(2,i);
                        }
                        waitingBitsOut.pop();
                    }
                    output.put(currentOutChar);
                    dlog<<"PUT CHAR: "<<currentOutChar<<endl;
                }
            }
            else{
                dlog<<"Word doesn't exist.\n";
                word = Matrix(dimension,1);
                for(int i = 0; i<dimension; i++){
                    waitingBitsOut.push(word.matrix[0][i]);
                    outputLog.push_back(word.matrix[0][i]);
                }
                while(waitingBitsOut.size() >= 8){
                    currentOutChar = 0;
                    for(int i = 7; i >= 0; i--){
                        if(waitingBitsOut.front()){
                            currentOutChar+= pow(2,i);
                        }
                        waitingBitsOut.pop();
                    }
                    output.put(currentOutChar);
                    dlog<<currentOutChar<<endl;
                }
            }
        }
        else{
            char currentInChar = 0;
            input.get(currentInChar);
            dlog<<"Get char: "<<currentInChar<<endl;
            //Make it rain. Joke. Make it binary
            dlog<<"ASCII: ";
            for(int i = 7; i >= 0; i--){
                char copy = currentInChar;
                copy>>=i;
                copy<<=7;
                if(copy){
                    dlog<<1;
                    waitingBitsIn.push(1);
                }
                else{
                    dlog<<0;
                    waitingBitsIn.push(0);
                }
            }
            dlog<<endl;
        }
    }
    for(int i = 0; i<inputLog.size(); i++){
        if((i!=0)&&(i%8==0)) dlog<<" ";
        dlog<<inputLog[i];
    }
    dlog<<endl;
    for(int i = 0; i<outputLog.size(); i++){
        if((i!=0)&&(i%8==0)) dlog<<" ";
        dlog<<outputLog[i];
    }
    dlog<<endl;
    input.close();
    output.close();
    dlog.close();
 
}
 
Текущее время: 17:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru