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

счётчик - C++

Восстановить пароль Регистрация
 
sopranis
0 / 0 / 0
Регистрация: 08.04.2012
Сообщений: 15
10.04.2012, 02:18     счётчик #1
собственна проблема такая!!!!программму я написал кое-как с помошью гугла! мне осталось доделать код так чтобы в консоле появился счётчик,т.е чтоб в окне отображалось сколько раз я вводил данные структур в файл! Например: число товаров занесённых в базу= 3!!! помогите плиз!!!

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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include <iostream>
#include <fstream>
#include <conio.h>
#include <string.h>
#include <windows.h>
using namespace std;
 
struct tovar
         {  char name[20];                   // код товара
             int code;                       // название товара 
            float price;};                   //  цена товара
            int count_item = 0 ;  // счётчик товаров
         
 
 
void add_info()
 
{    
     
        
          
        tovar buf;
        ofstream f("tovar.dat",ios::app);
        char s[100];
        cout << "Введите информацию:"<<endl;
        cout << "\tНазвание товара : ";
        cin.getline(s, sizeof(s));
        cin.getline(s, sizeof(s));
        strcpy(buf.name, s);
        cout << "\tКод товара: ";
        cin >> buf.code;
        cout<<"\tЦена товара: ";
        cin>>buf.price;
        f.write((char *)&buf, sizeof(tovar));
        count_item ++;
        f.close();
        
        
        
}
          
void show_totalprice()
    {
        tovar buf;
        char name[20];
        float totalprice = 0, count = 0;
        ifstream f("tovar.dat");
        cout << "Введите название товара: ";
        cin.getline(name, sizeof(name));
        cin.getline(name, sizeof(name));
        system("cls");
        while(!f.eof())
        {
            memset(&buf, 0, sizeof(tovar));
            f.read((char *)&buf, sizeof(tovar));
            if(*buf.name == *name)
            {
                count++;
                totalprice += buf.price;
            }
        }
        cout << "Средняя цена товара " << buf.name << ": " << totalprice / count << endl;
        f.close();
        getch();
    }
 
void show_data()
{
        tovar buf;
        SYSTEMTIME systime;
        GetLocalTime(&systime);
        ifstream f("tovar.dat");
        if(!f)
            cout<< "Ошибка при открытии файла, обратитесь к пункту 3 ";
        else
        {
        while(!f.eof())
        {
            memset(&buf, 0, sizeof(tovar));
            f.read((char *)&buf, sizeof(tovar));
            
           cout << "Название товара: " << buf.name << endl
                <<  "Код товара: " << buf.code << endl
                <<  "Цена товара: " << buf.price << endl<<endl;
                
            
        }
        }
        f.close();
        getch();
    }
 
 
 
void main(void)
{
   setlocale(LC_ALL, "Russian");
   #define kol 4
       int choice;
       char menu[kol][100]={
           "1. список товара", 
           "2.показать среднюю цену товара",
           "3.Добавить товар", 
           "4. Выход из программы"};
 
       do
       {
           system("cls");
           for(int i =0 ; i < kol; i++)
               cout << menu[i] << endl;
               cout << "Ваш выбор";
                cin >> choice;
                system("cls");
                switch (choice)
                {
                  case 1:
                    show_data();
                    break;
                case 2:
                    show_totalprice();
                    break;
                case 3:
                    add_info ();
 
                break;
                default: ;}
 
}   while(choice!= 4);
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2012, 02:18     счётчик
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
10.04.2012, 03:12     счётчик #2
В чем проблема то? Заводите целочисленную беззнаковую переменную, допустим с именем count, и инициализируете ее 0. Далее в блоке оператора case 3 оператора switch добавляете строчку
C++
1
2
3
4
case 3:
   add_info();
   count++;
   break;
Далее выводите значение этой переменной где хотите.
Yandex
Объявления
10.04.2012, 03:12     счётчик
Ответ Создать тему
Опции темы

Текущее время: 16:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru