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

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

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

Суммирование в структуре - C++

04.06.2013, 14:10. Просмотров 334. Ответов 5
Метки нет (Все метки)

Всех приветствую,начинаю изучать С++ и вот встала такая задачка,думаю второй день над ней,решил спросить у знатоков!
Надо найти все произведения автора и общее кол-во напечатанных экземпляров.Со второй частью проблема.
Данные в файле записываются вот так:

Ivanov Fizika 1995 Eksmo 2
Sidorov Matematika 2011 Rosnano 25


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <cstdlib>
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std;
 
struct book
{ 
       char avtor[15];
       char name[20];
       int god;
       char izdat[10];
       int kol;
       };
       struct book x;
Далее идет функция поиска названия книги по автору с выводом на экран (Автор,название книги,кол-во книг)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int proizv_kol()
{
    
    char av[15];
    FILE *f;
    f=fopen("book.txt","r");
    cout<<"\n Vvedite avtora - "; cin>>av;
    while (!feof(f))
    {
     fscanf(f,"%15s %20s %4d %10s %6d\n",x.avtor, x.name, &x.god, x.izdat, &x.kol); 
     if (strcmp(av,x.avtor)==0)
      printf("%15s %20s %6d\n",x.avtor, x.name,x.kol);
    }
Подскажите,каким способом можно просуммировать кол-во экземпляров?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2013, 14:10     Суммирование в структуре
Посмотрите здесь:

Сортировка в структуре - C++
Нужно создать структуру, вбить туда инфу: имя, факультет, группа, пропусков. вывести список у кого больше пропусков (отсортировать пожалуй,...

Функции в структуре - C++
В частности, в программе нужно рассчитать y, но он всегда одинаков. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &quot;Z.h&quot; ...

Структура в структуре - C++
Есть структура типа struct my{ struct size { float x: float y; }; float z; }

Сортировка в структуре - C++
Надо отсоритровать структуру по параметру &quot;Телефон&quot; Листал форум, вроде все написано правильно, сортировку делаю &quot;пузырьком&quot;, но выводит...

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

Указатель в структуре - C++
Как можно работать дальше с Abool как с массивом, обращаясь к нему как к члену структуры, т. е. D.Abool? Когда программа доходит до этого...

Ошибки в структуре - C++
Помогите работаться с ошибками :( Я создаю односвязный список, элементами которого являются структура, чье описание представлено ниже. ...

Сортировка в структуре - C++
По заданию нужно ввести данные в структуре, отсортировать по цене (от наименьшей к наибольшей) и вывести. На сортировке засыпался, прошу...

Изображение в структуре - C++
Пишу Лабу, необходимо в структуре добавить фотографию, как это осуществить, приложение консольное.

Объявление в структуре - C++
ругается на объявление батона struct StructurClientData { Button^ button; unsigned int data_ip4; DWORD...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Miwa123
37 / 37 / 1
Регистрация: 16.04.2013
Сообщений: 317
Записей в блоге: 1
04.06.2013, 15:23     Суммирование в структуре #2
тут нужен массив из объектов структуры

Добавлено через 12 минут
считаешь кол-во строк в файле. выделаешь память под объекты посредством оператора new(колво объектов = кол-во строк). и потом в проверяешь каждого автора при совпадении имен суммируешь!
Kojt
73 / 69 / 2
Регистрация: 19.05.2010
Сообщений: 167
04.06.2013, 15:39     Суммирование в структуре #3
А просто создать переменную и внутри самого последнего условия суммировать нельзя?
Adzurro
0 / 0 / 0
Регистрация: 27.05.2013
Сообщений: 4
04.06.2013, 15:42  [ТС]     Суммирование в структуре #4
У меня такая идея была,но как бы так записать сие действие?
Kojt
73 / 69 / 2
Регистрация: 19.05.2010
Сообщений: 167
04.06.2013, 16:28     Суммирование в структуре #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int proizv_kol()
{
    
    char av[15];
    FILE *f;
    f=fopen("book.txt","r");
    int count = 0;
    cout<<"\n Vvedite avtora - "; cin>>av;
    while (!feof(f))
    {
     fscanf(f,"%15s %20s %4d %10s %6d\n",x.avtor, x.name, &x.god, x.izdat, &x.kol); 
     if (strcmp(av,x.avtor)==0)
     {
      printf("%15s %20s %6d\n",x.avtor, x.name,x.kol);
      count += x.kol;
     }
    }
    printf("count = %d\n", count);
Adzurro
0 / 0 / 0
Регистрация: 27.05.2013
Сообщений: 4
04.06.2013, 16:37  [ТС]     Суммирование в структуре #6
Огромное спасибо!Все получилось!
Yandex
Объявления
04.06.2013, 16:37     Суммирование в структуре
Ответ Создать тему
Опции темы

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