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

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

Войти
Регистрация
Восстановить пароль
 
 
MeGreL
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
#1

Вывести в новый файл список студентов, удалив из него студентов окончивших школу в текущем году. - C++

07.08.2014, 11:53. Просмотров 689. Ответов 19
Метки нет (Все метки)

На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО, год рождения, домашний адрес, какую школу окончил. Вывести в новый файл список студентов, удалив из него студентов окончивших школу в текущем году.

Прошу помогите, понятным языком, желательно весь код, потому что я только учусь и могу не правильно понять отрывки. Заранее спасибо. выполнить с помощью текстовых файлов input.txt и output.txt
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.08.2014, 11:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести в новый файл список студентов, удалив из него студентов окончивших школу в текущем году. (C++):

Вывести в новый файл список студентов, удалив из него студентов окончивших школу в текущем году - C++
На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО, год рождения, домашний адрес, какую...

Программа выводит неверный ответ (дан массив структур, содержащий сведения об успеваемости студентов - вывести список неуспевающих студентов) - C++
Задача: Дан массив структур, содержащий сведения об успеваемости по информатике группы из 25 студентов. Структура содержит следующие...

Упорядочить список студентов по году рождению - C++
Язык Си Дан файл, содержащий сведение о студентах, включающие в себя его фамилию имя, год рождение, номер группы и оценки, по каким либо...

Распечатать список студентов упорядоченный по году рождения - C++
подскажите что нужно исправить #include <iostream> #include <cstring> #include <stdio.h> using namespace std; const int n = 3; ...

Упорядочить список студентов по году рождения и распечатать его - C++
Здравствуйте помогите написать программу. На диске имеется файл данных STUDENT.DAT.упорядочить список студентов по году рождения и...

Студентов поступивших в нечетном году занести в список, отличный от общего - C++
Дан двусвязный список. Узел списка- информация о студенте: фамилия, год рождения, год поступления, оценки по предметам. Студентов...

19
dimabubyakin
159 / 120 / 44
Регистрация: 16.10.2013
Сообщений: 1,738
Завершенные тесты: 5
07.08.2014, 11:59 #2
MeGreL,
Цитата Сообщение от MeGreL Посмотреть сообщение
потому что я только учусь
С такими темпами вы ничему не научитесь, попробуйте сами начать, скинуть то что получилось, а уж я подправлю
0
frostyfull
33 / 33 / 8
Регистрация: 13.06.2014
Сообщений: 509
07.08.2014, 12:08 #3
dimabubyakin, создаешь структуры, записываешь в них весь файл, при перезаписи отсеиваешь студентов, тут ничего сложного нет, сам должен разобраться
Цитата Сообщение от dimabubyakin Посмотреть сообщение
С такими темпами вы ничему не научитесь, попробуйте сами начать, скинуть то что получилось, а уж я подправлю
плюсую, если что код подправим)
0
MeGreL
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 12:27  [ТС] #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
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
#include "stdafx.h"
#include<iostream>
#include<fstream>
#include<iomanip>
using namespace std;
ifstream in("input.txt");
ofstream out("output.txt");
struct list
{
    int age,number,year;
   char FIO[50],adress[50];
    void show();
    void print();
};
void list :: show()
{
    cout<<setw(8)<<number<<setw(10)<<FIO<<setw(8)<<adress<<setw(8)<<age<<setw(8)<<year<<endl;
}
void list:: print()
{
    out<<setw(8)<<number<<setw(10)<<FIO<<setw(8)<<adress<<setw(8)<<age<<endl;
}
int main()
{
    list stud[10];
    int num;
    int i,j,n=0;
    if(!in)cout<<"ошибка при открытии файла input.txt\n";
    else
    {
        while(in.peek()!=EOF)
        {
            in>>stud[n].number;
            in>>stud[n].age;
            in>>stud[n].FIO;
            in>>stud[n].adress;
            in>>stud[n].year;
            stud[n].show();
            n++;
        }
        for( int i=0; i<n; ++i ) 
{
   if( stud[i].year != 2014 ) 
   {
      stud[i].print(); 
   }
}
in.close();out.close();
system("pause");
return 0;
}
Добавлено через 1 минуту
я говорю, что я не понимаю этого, я пытался сделать но не получалось и я перешел на следующие задачки, но эта мне нужна для отчета.
0
dimabubyakin
159 / 120 / 44
Регистрация: 16.10.2013
Сообщений: 1,738
Завершенные тесты: 5
07.08.2014, 13:02 #5
MeGreL, ну так твоя программа работает)
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
#include "stdafx.h"
#include<iostream>
#include<fstream>
#include<iomanip>
using namespace std;
ifstream in("input.txt");
ofstream out("output.txt");
struct list
{
    int age,number,year;
    char FIO[50],adress[50];
    void show();
    void print();
};
void list::show()
{
    cout<<setw(8)<<number<<setw(10)<<FIO<<setw(8)<<adress<<setw(8)<<age<<setw(8)<<year<<endl;
}
void list::print()
{
    out<<setw(8)<<number<<setw(10)<<FIO<<setw(8)<<adress<<setw(8)<<age<<endl;
}
int main()
{
    list stud[10];
    int num;
    int n=0;
    if(!in)cout<<"ошибка при открытии файла input.txt\n";
    else
    while(in.peek()!=EOF)
    {
        in>>stud[n].number;
        in>>stud[n].age;
        in>>stud[n].FIO;
        in>>stud[n].adress;
        in>>stud[n].year;
        stud[n].show();
        n++;
    }
    for( int i=0; i<n; ++i ) 
    if( stud[i].year != 2014 ) 
        stud[i].print(); 
    in.close();
    out.close();
    system("pause");
    return 0;
}
Содержимое файла input.txt
Код
1
18
Bubyakin_Dima
Kramatorsk
2013
2
17
Bubyakin_Dima1
Kramatorsk1
2014
output.txt
Код
       1Bubyakin_DimaKramatorsk      18
0
MeGreL
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 13:28  [ТС] #6
у меня в VS 2008 не работает.
0
Тамика
Котовчанин
917 / 461 / 145
Регистрация: 16.02.2010
Сообщений: 3,229
Записей в блоге: 27
07.08.2014, 14:13 #7
Цитата Сообщение от MeGreL Посмотреть сообщение
у меня в VS 2008 не работает.
Что-то ни в одной из Ваших тем ни один приведённый код не компилируется у Вас. Может стоит задуматься о смене компилятора?
0
MeGreL
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 14:36  [ТС] #8
Мне этот диск(лицензия) дала Препод. Вы можете исправить эту задачку так что бы она работала. У меня вот такую ошибку выдает, ему первая строка не нравится.
1>------ Build started: Project: p13str66, Configuration: Debug Win32 ------
1>Compiling...
1>p13str66.cpp
1>c:\users\home pc\documents\visual studio 2008\projects\p13str66\p13str66\p13str66.cpp(1) : fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory
1>Build log was saved at "file://c:\Users\HOME PC\Documents\Visual Studio 2008\Projects\p13str66\p13str66\Debug\BuildLog.htm"
1>p13str66 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Где можно взять хороший современный компилятор ? подскажи те плиз. Мне просто отчет сдавать и только эта задачка осталась.
0
SatanaXIII
Супер-модератор
Эксперт С++
5641 / 2676 / 252
Регистрация: 01.11.2011
Сообщений: 6,574
Завершенные тесты: 1
07.08.2014, 14:43 #9
MeGreL, уберите вообще строку
C++
1
#include "stdafx.h"
Цитата Сообщение от MeGreL Посмотреть сообщение
Где можно взять хороший современный компилятор ?
Бесплатные среды (IDE) для программирования на С/С++
0
MeGreL
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 14:55  [ТС] #10
1>------ Build started: Project: p13str66, Configuration: Debug Win32 ------
1>Compiling...
1>p13str66.cpp
1>c:\users\home pc\documents\visual studio 2008\projects\p13str66\p13str66\p13str66.cpp(51) : fatal error C1075: end of file found before the left brace '{' at 'c:\users\home pc\documents\visual studio 2008\projects\p13str66\p13str66\p13str66.cpp(23)' was matched
1>Build log was saved at "file://c:\Users\HOME PC\Documents\Visual Studio 2008\Projects\p13str66\p13str66\Debug\BuildLog.htm"
1>p13str66 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
убрал 1 строку, говрит что на 51 что то не так, а там всего 50.

Добавлено через 6 минут
где то не хватает скобки, только не пойму где ?
0
Тамика
Котовчанин
917 / 461 / 145
Регистрация: 16.02.2010
Сообщений: 3,229
Записей в блоге: 27
07.08.2014, 14:55 #11
Цитата Сообщение от MeGreL Посмотреть сообщение
1>------ Build started: Project: p13str66, Configuration: Debug Win32 ------
1>Compiling...
1>p13str66.cpp
1>c:\users\home pc\documents\visual studio 2008\projects\p13str66\p13str66\p13str66.cpp(51) : fatal error C1075: end of file found before the left brace '{' at 'c:\users\home pc\documents\visual studio 2008\projects\p13str66\p13str66\p13str66.cpp(23)' was matched
1>Build log was saved at "file://c:\Users\HOME PC\Documents\Visual Studio 2008\Projects\p13str66\p13str66\Debug\BuildLog.htm"
1>p13str66 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
убрал 1 строку, говрит что на 51 что то не так, а там всего 50.
Скобку за собой закрывать нужно!
В самом конце кода поставьте закрывающуюся скобку }.
1
MeGreL
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 15:08  [ТС] #12
Блин у меня больше нет сил, я второй день голову ломаю. Пришли кто нибудь адекватный код который будет работать исправно! СПАСИБО ОГРОМНОЕ ЗАРАНЕЕ!
0
Тамика
Котовчанин
917 / 461 / 145
Регистрация: 16.02.2010
Сообщений: 3,229
Записей в блоге: 27
07.08.2014, 15:11 #13
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от MeGreL Посмотреть сообщение
Блин у меня больше нет сил, я второй день голову ломаю.
Над тем, чтобы скобочку в конце поставить?

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
#include<iostream>
#include<fstream>
#include<iomanip>
 
using namespace std;
ifstream in("input.txt");
ofstream out("output.txt");
 
struct list
{
    int age,number,year;
    char FIO[50],adress[50];
    void show();
    void print();
};
 
void list :: show()
{
    cout<<setw(8)<<number<<setw(10)<<FIO<<setw(8)<<adress<<setw(8)<<age<<setw(8)<<year<<endl;
}
 
void list:: print()
{
    out<<setw(8)<<number<<setw(10)<<FIO<<setw(8)<<adress<<setw(8)<<age<<endl;
}
 
int main()
{
    list stud[10];
    int num;
    int i,j,n=0;
    if(!in)
        cout<<"ошибка при открытии файла input.txt\n";
    else
    {
        while(in.peek()!=EOF)
        {
            in>>stud[n].number;
            in>>stud[n].age;
            in>>stud[n].FIO;
            in>>stud[n].adress;
            in>>stud[n].year;
            stud[n].show();
            n++;
        }
        for( int i=0; i<n; ++i ) 
        {
           if( stud[i].year != 2014 ) 
              stud[i].print(); 
        }   
in.close();
out.close();
system("pause");
return 0;
 
    }
}
1
MeGreL
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 15:29  [ТС] #14
А вы проверяли ? что вы в input вводили ? Надо ФИО, год рождения, адрес, и какую ШКОЛУ ОКОНЧИЛ! ( а не когда окончил)
0
Тамика
Котовчанин
917 / 461 / 145
Регистрация: 16.02.2010
Сообщений: 3,229
Записей в блоге: 27
07.08.2014, 15:32 #15
Цитата Сообщение от MeGreL Посмотреть сообщение
А вы проверяли ? что вы в input вводили ? Надо ФИО, год рождения, адрес, и какую ШКОЛУ ОКОНЧИЛ! ( а не когда окончил)
dimabubyakin Вам предоставил доказательство того, что код работает корректно. Зачем мне лишний раз проделывать эту же работу?
0
07.08.2014, 15:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.08.2014, 15:32
Привет! Вот еще темы с ответами:

Упорядочить список студентов по среднему баллу и вывести весь список - C++
форумчане,выдает ошибку :( столько маюсь с задачей уже #include &lt;vcl.h&gt; #include &lt;stdio.h&gt; #pragma hdrstop /*Упорядочить список...

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

Создать файл, содержащий список студентов группы - C++
Здравствуйте, необходимо создать файл, содержащий список студентов группы со следующими характеристиками: адрес, место работы родителей,...

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


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

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

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