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

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

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

Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...) - C++

04.12.2012, 18:49. Просмотров 350. Ответов 5
Метки нет (Все метки)

Здравствуйте, я очень-очень большой нуб в C++, но так случилось, что сейчас его азы, мне очень бы помогли. И так, есть файл "input.txt":
Код
2
petya petrov 12 23 31
vanya ivanov 10 10 10
Первая строка, сколько будет строк в файле, остальные: фамилия, имя, балы за 3 теста. Нужно узнать максимальный балл за три теста и вывести фамилию и имя, у того, у кого он максимален, если таких несколько, вывести всех. Собственно задача элементарная, но у меня трабла именно с считыванием из файла, программа не хочет запускаться и все, в смысле компилируется, да, но когда запускается .exe файл, просто вырубает программу и все. Что делать не знаю...
Код программы:
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
#include <fstream>
#include <string>
using namespace std;
 
int main() {
        ifstream in("input.txt");
        int n, maxx, lsh;
        in >> n;
        int c1[n], c2[n], c3[n], max[n];
        string fa[n][2];
        for(int i = 1; i <= n; i++) {
                in >> fa[i][1];
                in >> fa[i][2];
                in >> c1[i];
                in >> c2[i];
                in >> c3[i];
              max[i] = c1[i] + c2[i] + c3[i];
              if (max[i] > maxx) maxx = max[i];
              }
        ofstream out("output.txt");
        for(int i = 1; i <= n; i++) {
                if(max[i] == maxx) {out << fa[i][1] + " " + fa[i][2] << endl;}
                }
              system("PAUSE");
}
И еще вопрос, есть ли функция, преобразующая string переменную содержащую только символы цифр, в int или float? И наоборот? Я находил страшные самописные функции, но такое не для меня пока, есть ли именно встроенная функция, в какую-нибудь стандартную библиотеку?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2012, 18:49     Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...)
Посмотрите здесь:

Создайте класс с именем Employee, включающий в качестве элементов данных три информационных пункта: имя, фамилию и месячную зарплату - C++
Дело обстоит так: Прочитав и, как я думал, поняв 3ю главу книги &quot;Как программировать на с++&quot; Дейтелов пришло время задачек. Немного...

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

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

Строка S содержит фамилию, имя, отчество. Необходимо преобразовать ее в строку, содержащую фамилию и инициалы - C++
Строка S содержит фамилию, имя, отчество. Необходимо преобразовать ее в строку, содержащую фамилию и инициалы. _______ Как это задание...

Рассчитать средний рост группы и вывести имя, фамилию студентов выше среднего роста - C++
a)Имеется группа студентов из 10 человек. Составить программу для ввода имени, фамилии, года рождения, роста, пола каждого студента....

Считывание данных из файла, имя которого вводится с клавиатуры - C++
Бодрого времени суток. Есть программа, которая считывает данные из файла. Но нужно , чтобы этот файл я ввёл с клавиатуры. Как правильно...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
04.12.2012, 18:57     Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...) #2
Считывать лучше в структуру. Так к сведению массив, начинается с 0 элемента, а нес первого.
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
04.12.2012, 19:00     Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...) #3
Нумерация массивов начинается с 0.

Значит в циклах нужно
C++
1
for(int i = 0,...
fa[i][2]; - выход за пределы массива по той же причине
greenkirillv
0 / 0 / 0
Регистрация: 04.12.2012
Сообщений: 12
04.12.2012, 19:01  [ТС]     Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...) #4
Цитата Сообщение от David Sylva Посмотреть сообщение
Считывать лучше в структуру. Так к сведению массив, начинается с 0 элемента, а нес первого.
В смысле в структуру?
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
04.12.2012, 19:03     Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...) #5
Почитай
http://ru.wikipedia.org/wiki/%D0%A1%...BD%D0%B8%D0%B5)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2012, 19:06     Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...)
Еще ссылки по теме:

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

Как узнать имя файла? - C++
Имеется что-то вроде такого кода pHttpCon = session.GetHttpConnection(szServerName); fr=pHttpCon-&gt;OpenRequest('GET',szPath); ...

Можно ли узнать имя файла по int дескриптору? - C++
Открываю файл так: errno_t err01; int fHandle; err01 = _sopen_s(&amp;fHandle, fileName, _O_RDWR, _SH_DENYRW, 0); Далее для в...

Визуальное программирование. Считывание теста - C++
Создать программу, которая могла бы считывать введённую функцию и потом рассчитать по ней. Как сие реализовать?

Вывести средний балл каждого студента и общий средний балл группы - C++
Здравствуйте. Помогите понять, в чем ошибка. Программа не выводит нормально средний бал каждого студента по трем предметам и общий средний...

Дано имя файла целых чисел. Найти количество элементов, содержащихся в данном файле. Если файла с таким именем не существует, то вывести –1 - C++
Дано имя файла целых чисел. Найти количество элементов, содержащихся в данном файле. Если файла с таким именем не существует, то вывести...


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

Или воспользуйтесь поиском по форуму:
greenkirillv
0 / 0 / 0
Регистрация: 04.12.2012
Сообщений: 12
04.12.2012, 19:06  [ТС]     Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...) #6
Спасибо большое за ответы, премного благодарен, все работает!
Yandex
Объявления
04.12.2012, 19:06     Считывание из файла (узнать максимальный балл за три теста и вывести фамилию и имя...)
Ответ Создать тему
Опции темы

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