Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
adam1105
0 / 0 / 0
Регистрация: 01.12.2016
Сообщений: 71
1

Записывает в файл не по условию

22.12.2016, 22:20. Просмотров 218. Ответов 2
Метки нет (Все метки)

Вот код одной из функций основной программы,я не понимаю,почему в файл записывает не по условию,а записывает все
Должно записывать только тех студентов,кто закончил сессию на 4 и5
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
void chetireipyat()
{
    int k;
    int x1, y1;
    char x[100];
    cout<<"\n\nВведите имя файла для записи списка студентов,сдавших экзамены на четыре и пять ";
    cin>>x;
    ofstream file2(x);
    int mas[LENGTH];
    int z=0;
    for (i = 0; i < n; i++)
    {
        if(((students[i].ball[0]==4)||(students[i].ball[0]==5))&&((students[i].ball[1]==4)||(students[i].ball[1]==5))&&((students[i].ball[2]==4)||(students[i].ball[2]==5))&&((students[i].ball[3]==4)||(students[i].ball[3]==5)))
        {
        mas[z]=i;
        z++;
        }
    }
    system("CLS");
    head();
        k = 1;
    for (i = 0; i < z; i++) 
        {
            
            
        x1 = 0;
        y1 = 2 + k;
        gotoxy(x1,y1);
    cout<<students[mas[i]].name;
 
     
     
        x1 = 15;
        y1 = 2 + k;
        gotoxy(x1,y1);
    cout<<students[mas[i]].group;
 
        
        x1 = 30;
        y1 = 2+k;
        gotoxy(x1,y1);  
    cout<< students[mas[i]].ball[ 0 ]; 
 
    
    
        x1 = 45;
        y1 = 2+k;
        gotoxy(x1,y1);
    cout<< students[mas[i]].ball[ 1 ]; 
        
        
        
        x1 = 60;
        y1 = 2+k;
        gotoxy(x1,y1);  
    cout<< students[mas[i]].ball[ 2 ]; 
 
    
        x1 = 75;
        y1 = 2+k;
        gotoxy(x1,y1);              
    cout<< students[mas[i]].ball[ 3 ]; 
            
        }
    file2<<z;
    for (i = 0; i < z; i++) 
    {
        if(((students[i].ball[0]==4)||(students[i].ball[0]==5))&&((students[i].ball[1]==4)||(students[i].ball[1]==5))&&((students[i].ball[2]==4)||(students[i].ball[2]==5))&&((students[i].ball[3]==4)||(students[i].ball[3]==5)))
        {
        
        file2.write((char*)&students[i], sizeof(students[i]));
        }
    }
    file2.close();
 
}
Добавлено через 34 минуты
с условием вроде все нормально,но в чем тогда дело
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2016, 22:20
Ответы с готовыми решениями:

Не записывает в файл
писал на visual studio, надо переделать на dev. товарищи, помогите. какая-то фигня с fаpp #include...

Не записывает в файл
#include &quot;stdafx.h&quot; #include &lt;list&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;algorithm&gt;...

Не записывает в файл
Доброго времени суток. Написал код, который должен открывать файл, находить в нем определенный...

Не записывает в файл
посмотрите и исправьте ошибку в коде #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include...

не записывает в файл
суть - записать из 3-х файлов в 1 и обратно #define _CRT_SECURE_NO_WARNINGS #include &quot;stdafx.h&quot;...

2
Hikari
Хитрая блондиночка $)
1458 / 972 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
22.12.2016, 22:38 2
Я бы упростила:
C
1
2
3
4
5
6
7
for (i = 0; i < z; i++) 
    {
 int GoodBalsCount=0,j;
 for(j=0;j<3;j++) GoodBalsCount+=(students[i].ball[j]>3);
 if(GoodBalsCount==3)
      file2.write((char*)&students[i], sizeof(students[i]));
    }
Это с коленки.
0
adam1105
0 / 0 / 0
Регистрация: 01.12.2016
Сообщений: 71
22.12.2016, 22:51  [ТС] 3
Hikari, спасибо,но это примерно идентично тому,что у меня,а в файл записывает все равно всех студентов(ну почти все,записывает такое количество студентов,сколько хорошистов,начиная с начала списка)
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2016, 22:51

Не записывает в файл?
Не записывает результат преобразования в файл, пожалуйста помогите! #include...

Не записывает в файл
Здравствуйте! Сделал сортировку,но почему то не записывается в файл. Сам код: ...

записывает в файл каракули
почему когда я ввожу данные мне в файл записывает каракули, и такое же когда ввивоже из файла на...


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

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

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