Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29

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

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

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

Прошу помогите, понятным языком, желательно весь код, потому что я только учусь и могу не правильно понять отрывки. Заранее спасибо. выполнить с помощью текстовых файлов input.txt и output.txt
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.08.2014, 11:53
Ответы с готовыми решениями:

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

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

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

19
 Аватар для dimabubyakin
161 / 122 / 85
Регистрация: 16.10.2013
Сообщений: 1,738
07.08.2014, 11:59
MeGreL,
Цитата Сообщение от MeGreL Посмотреть сообщение
потому что я только учусь
С такими темпами вы ничему не научитесь, попробуйте сами начать, скинуть то что получилось, а уж я подправлю
0
34 / 34 / 8
Регистрация: 13.06.2014
Сообщений: 509
07.08.2014, 12:08
dimabubyakin, создаешь структуры, записываешь в них весь файл, при перезаписи отсеиваешь студентов, тут ничего сложного нет, сам должен разобраться
Цитата Сообщение от dimabubyakin Посмотреть сообщение
С такими темпами вы ничему не научитесь, попробуйте сами начать, скинуть то что получилось, а уж я подправлю
плюсую, если что код подправим)
0
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 12:27  [ТС]
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
161 / 122 / 85
Регистрация: 16.10.2013
Сообщений: 1,738
07.08.2014, 13:02
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
Code
1
2
3
4
5
6
7
8
9
10
1
18
Bubyakin_Dima
Kramatorsk
2013
2
17
Bubyakin_Dima1
Kramatorsk1
2014
output.txt
Code
1
       1Bubyakin_DimaKramatorsk      18
0
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 13:28  [ТС]
у меня в VS 2008 не работает.
0
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
07.08.2014, 14:13
Цитата Сообщение от MeGreL Посмотреть сообщение
у меня в VS 2008 не работает.
Что-то ни в одной из Ваших тем ни один приведённый код не компилируется у Вас. Может стоит задуматься о смене компилятора?
0
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 14:36  [ТС]
Мне этот диск(лицензия) дала Препод. Вы можете исправить эту задачку так что бы она работала. У меня вот такую ошибку выдает, ему первая строка не нравится.
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\Bu ildLog.htm"
1>p13str66 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Где можно взять хороший современный компилятор ? подскажи те плиз. Мне просто отчет сдавать и только эта задачка осталась.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
07.08.2014, 14:43
MeGreL, уберите вообще строку
C++
1
#include "stdafx.h"
Цитата Сообщение от MeGreL Посмотреть сообщение
Где можно взять хороший современный компилятор ?
Бесплатные среды (IDE) для программирования на С/С++
0
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 14:55  [ТС]
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\Bu ildLog.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
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
07.08.2014, 14:55
Цитата Сообщение от 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\Bu ildLog.htm"
1>p13str66 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
убрал 1 строку, говрит что на 51 что то не так, а там всего 50.
Скобку за собой закрывать нужно!
В самом конце кода поставьте закрывающуюся скобку }.
1
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 15:08  [ТС]
Блин у меня больше нет сил, я второй день голову ломаю. Пришли кто нибудь адекватный код который будет работать исправно! СПАСИБО ОГРОМНОЕ ЗАРАНЕЕ!
0
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
07.08.2014, 15:11
Лучший ответ Сообщение было отмечено MeGreL как решение

Решение

Цитата Сообщение от 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
0 / 0 / 0
Регистрация: 16.05.2014
Сообщений: 29
07.08.2014, 15:29  [ТС]
А вы проверяли ? что вы в input вводили ? Надо ФИО, год рождения, адрес, и какую ШКОЛУ ОКОНЧИЛ! ( а не когда окончил)
0
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
07.08.2014, 15:32
Цитата Сообщение от MeGreL Посмотреть сообщение
А вы проверяли ? что вы в input вводили ? Надо ФИО, год рождения, адрес, и какую ШКОЛУ ОКОНЧИЛ! ( а не когда окончил)
dimabubyakin Вам предоставил доказательство того, что код работает корректно. Зачем мне лишний раз проделывать эту же работу?
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
07.08.2014, 15:41
Тамика, бисер, бисер береги.
0
07.08.2014, 16:04

Не по теме:

Цитата Сообщение от SatanaXIII Посмотреть сообщение
Тамика, бисер, бисер береги.
Это что значит?

0
07.08.2014, 16:06

Не по теме:

Тамика, полагаю, это отсылка к расхожей фразе "метать бисер перед свиньями":).

0
07.08.2014, 16:09

Не по теме:

Цитата Сообщение от HighPredator Посмотреть сообщение
Тамика, полагаю, это отсылка к расхожей фразе "метать бисер перед свиньями".
А, возможно. Спасибо за разъяснение.:)))

0
 Аватар для Splitty
6 / 6 / 4
Регистрация: 15.12.2013
Сообщений: 34
08.08.2014, 00:53
else не закрыт скобкой
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.08.2014, 00:53
Помогаю со студенческими работами здесь

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

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

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

Вывести в список информацию о студентах, окончивших заданную школу...
Выполнить задания, используя для хранения экземпляров разработанных классов стандартные параметризованные коллекции. Во всех классах...

Вывести в СheckListBox1 список всех студентов, родившихся в этом году
В ListBox1 создайте список студентов вашей группы (фамилия, имя). В ListBox2 создайте синхронный список дат рождения (только год)...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period . Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru