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

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

Войти
Регистрация
Восстановить пароль
 
 
ruTwit
6 / 6 / 1
Регистрация: 04.10.2013
Сообщений: 92
#1

Ввод из консоля и файла - C++

23.01.2014, 21:52. Просмотров 369. Ответов 16
Метки нет (Все метки)

Почему если вывести в консоле
C++
1
2
3
4
cout<<int(0&(0|0));
cout<<int(1&(1|0));
cout<<int(0&(0|1));
cout<<int(1&(1|1));
то выводится 0101, а если прочесть из файла и вывести на экран, то выводится 0000
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2014, 21:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввод из консоля и файла (C++):

как с помощью консоля создавать txt файлы? - C++
Здравствуйте!Я новичек...я только только начинаю создовать проги... помогите пожалуйста с вопросом, я не могу написать код...

ввод из файла - C++
подскажите как делать ввод из файла

Ввод из файла - C++
Помогите написать код программы которая проверяет правильно ли указано имя файла и производится ввод из файла.

Ввод из файла. - C++
дана программа. в ней нужно ввести данные из файла. при выводе их на экран выводит не той кодировкой. помогите поменять. вот код программы:...

Ввод из файла - C++
Написал такой метод, но отказывается работать. void file_in(){ freopen(&quot;in.txt&quot;,&quot;r&quot;,stdin); cin&gt;&gt;size; ...

Ввод из файла - C++
Есть ввод из файла, но при запуске программы ничего не происходит - черный экран с мигающим курсором ifstream in(&quot;D:\file.txt&quot;); ...

16
Croessmah
Ушел
Эксперт CЭксперт С++
13563 / 7714 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
23.01.2014, 21:55 #2
а мы откуда знаем что Вы там понаписали?
0
ruTwit
6 / 6 / 1
Регистрация: 04.10.2013
Сообщений: 92
23.01.2014, 21:58  [ТС] #3
Croessmah, из файла

C++
1
2
3
4
5
6
7
int a;
ifstream fin("D:\\intput.txt");
    for(i=0;i<m;i++)
    {
        fin>>a;
        cout<<int(a)<<endl;
    }
0
Croessmah
Ушел
Эксперт CЭксперт С++
13563 / 7714 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
23.01.2014, 21:59 #4
и что отсюда следует? Че за m? Что в int пытаетесь считать? Как файл пишите?
0
ruTwit
6 / 6 / 1
Регистрация: 04.10.2013
Сообщений: 92
23.01.2014, 22:01  [ТС] #5
Croessmah, выводит 48 38 40 48
0
Croessmah
Ушел
Эксперт CЭксперт С++
13563 / 7714 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
23.01.2014, 22:05 #6
Цитата Сообщение от ruTwit Посмотреть сообщение
выводит 48 38 40 48
повторюсь:
Цитата Сообщение от Croessmah Посмотреть сообщение
а мы откуда знаем что Вы там понаписали?
0
ruTwit
6 / 6 / 1
Регистрация: 04.10.2013
Сообщений: 92
23.01.2014, 22:56  [ТС] #7
Croessmah, ссори не увидел
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
#include "stdafx.h"
#include <iostream>
#include<fstream>
using namespace std;
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL,"Rus");
    
    char xit;
    int i, m=4;
    ifstream fin("D:\\input.txt");
    for(i=0;i<m;i++)
    {
        fin>>xit;
        cout<<int(xit)<<endl;
    }
    cout<<endl;
 
    
    cout<<int(0&(0|0));
    cout<<int(1&(1|0));
    cout<<int(0&(0|1));
    cout<<int(1&(1|1));
    
    
    
    return 0;
}
Добавлено через 49 минут
Croessmah, может тип где-то объявил не правильно?
0
alsav22
5429 / 4824 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
23.01.2014, 23:05 #8
В файле что? И что нужно сделать?
0
ruTwit
6 / 6 / 1
Регистрация: 04.10.2013
Сообщений: 92
23.01.2014, 23:11  [ТС] #9
alsav22, в файле
0&(0|0)
1&(1|0)
0&(0|1)
1&(1|1)
нужно их прочесть из файла и посчитать
0
Arkaniy
106 / 106 / 6
Регистрация: 29.08.2012
Сообщений: 453
23.01.2014, 23:14 #10
Нужно писать парсер для такого случая.
0
ruTwit
6 / 6 / 1
Регистрация: 04.10.2013
Сообщений: 92
23.01.2014, 23:20  [ТС] #11
Arkaniy, не могли бы помочь?
0
alsav22
5429 / 4824 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
24.01.2014, 00:13 #12
Тупо:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
char ch;
int i, n1, n2, n3;
ifstream fin("input.txt");
if (fin)
{
    for(i = 0; i < 4; i++)
    {
        fin >> n1 >> ch >> ch >> n2 >> ch >> n3 >> ch;
        cout << int(n1&(n2|n3));
    }
    cout << endl;
        
}
Добавлено через 31 минуту
Более сложная конструкция. В файле уже могут и другие операции быть записаны (в разном сочетании):
0&(0|0)
1&(1&0)
0|(0|1)
1^(1|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
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
char ch1, ch2, ch3, ch4;
    int i, n1, n2, n3;
    ifstream fin("input.txt");
    if (fin)
    {
        for(i = 0; i < 4; i++)
        {
            fin >> n1 >> ch1 >> ch2 >> n2 >> ch3 >> n3 >> ch4;
            switch (ch1)
            {
                case '&':
                    switch(ch3)
                    {
                        case '|':
                            cout << int(n1&(n2|n3));
                            break;
                        case '&':
                            cout << int(n1&(n2&n3));
                            break;
                        case '^':
                            cout << int(n1&(n2^n3));
                            break;
                    }
                break;
                
                case '|':
                   switch(ch3)
                    {
                        case '|':
                            cout << int(n1|(n2|n3));
                            break;
                        case '&':
                            cout << int(n1|(n2&n3));
                            break;
                        case '^':
                            cout << int(n1|(n2^n3));
                            break;
                    }
                   break;
                
                case '^':
                    switch(ch3)
                    {
                        case '|':
                            cout << int(n1^(n2|n3));
                            break;
                        case '&':
                            cout << int(n1^(n2&n3));
                            break;
                        case '^':
                            cout << int(n1^(n2^n3));
                            break;
                    }
                    break;
            }
            
        }
        cout << endl;
        
    }
0
ruTwit
6 / 6 / 1
Регистрация: 04.10.2013
Сообщений: 92
24.01.2014, 00:38  [ТС] #13
alsav22, фишка в том, что у меня логическая функция может быть любой
0
Arkaniy
106 / 106 / 6
Регистрация: 29.08.2012
Сообщений: 453
24.01.2014, 00:41 #14
alsav22, а если скобки в произвольном порядке?

Добавлено через 1 минуту
Если честно, то приведенный код на костылях несусветных.
Тут нужно писать парсер, которой не будет подогнан под конкретные ситуации.
Теперь сам думаю написать, но сейчас сессия и когда сделаю не знаю.
Вобщем как напишу, так и выложу сюда.
0
alsav22
5429 / 4824 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
24.01.2014, 00:47 #15
Цитата Сообщение от Arkaniy Посмотреть сообщение
alsav22, а если скобки в произвольном порядке?
Это всё понятно. Было показано конкретное содержание файла. По этому содеражанию и код. С этим содержимым нормально работает?
Цитата Сообщение от Arkaniy Посмотреть сообщение
Тут нужно писать парсер, которой не будет подогнан под конкретные ситуации.
Пишите, если интересно.
Цитата Сообщение от ruTwit Посмотреть сообщение
фишка в том, что у меня логическая функция может быть любой
А где это в теме обозначено? Вот ответ на вопрос, что в файле:
Цитата Сообщение от ruTwit Посмотреть сообщение
alsav22, в файле
0&(0|0)
1&(1|0)
0&(0|1)
1&(1|1)
нужно их прочесть из файла и посчитать
Их мой код правильно читает и считает? Вопросы?
0
24.01.2014, 00:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2014, 00:47
Привет! Вот еще темы с ответами:

Ввод данных с файла - C++
struct mec { string name; double sum; }; cout &lt;&lt; &quot;Число меценатов с файла: &quot;; int n; ifstream ReadOn; ...

Ввод-вывод из файла - C++
Товарищи форумчане, помогите разобраться с выводом из файла на экран. Забить в файл у меня получилось,авот вывести никак. Вот часть кода:...

Ввод и вывод из файла - C++
Есть программа. Нужно сделать так, чтобы размерность матрицы можно было считать из файла и чтобы готовую или исходную матрицу можно было...

Ввод из файла в вектор - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;ostream&gt; #include &lt;vector&gt; const int size=7; using...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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