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

Пожалуйста, объясните программу, по возможности построчно - C++

Восстановить пароль Регистрация
 
Poulichka
0 / 0 / 0
Регистрация: 05.12.2013
Сообщений: 20
19.12.2013, 11:22     Пожалуйста, объясните программу, по возможности построчно #1
Пожалуйста, объясните программу, по возможности построчно, очень нужно!

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
#include <fstream.h>
#include <conio.h>
#include <iomanip.h>
#include <string.h>
#include <iostream.h>
void zap (char *name);
void pok (char *name);
void vir (char *name);
struct baz {
    char name[30];
    char tip[10];
    int kb;
    float cena;
    };
int main () {
const int N=100;
char str[N];
int n=0;
cout<<"Vvedite put' "<<endl;
cin.getline(str,N);
while (n!=4){
    cout<<"=========================Railwaybase========================="<<endl;
    cout<<"1-dobavit zapis;   2-pokazat vse zapisi;"<<endl;
    cout<<"3-pokazat viruchku poezda; 4-vyhod;"<<endl;
    cout<<"Vash vibor: "<<endl;
    cin>>n;
    switch (n) {
        case 1: zap(str);break;
        case 2: pok(str);break;
        case 3: vir(str);break;
        case 4: return 0;
        default : cout<< "Promahnulis" << endl; break;}
    }
}
 
void zap (char *name)
  {
  int j;
  ofstream f1(name,ios::binary|ios::app);
  if (!f1) {cout << "ERROR" <<endl ;}
  else {baz *mnew=new baz[1];
    cout<<"Vvedite № \0";cin>>mnew[0].name;
    cout<<"Vvedite tpr-prib \0";cin>>mnew[0].tip;
    cout<<"Vvedite k-vo biletov \0";cin>>mnew[0].kb;
    cout<<"Vvedite cenu 1 bileta \0";cin>>mnew[0].cena;
  f1.write(reinterpret_cast<char*>(mnew),(30+10+sizeof(int)+sizeof(float)));
  }
  f1.close();}
void pok (char *name)
    {
    int j;
      ifstream f1(name,ios::binary);
      if (!f1) {cout << "ERROR" <<endl ;}
      else
        {
        f1.seekg(0,ios::end);
        int dfb=f1.tellg();f1.seekg(0,ios::beg);
        int KZ=dfb/(10+30+sizeof(int)+sizeof(float));
        baz *m=new baz[KZ];
        f1.read(reinterpret_cast<char*>(m),dfb);
        cout << "File sodergit:"<<endl;
        for(j=0;j < KZ ; j++)
         {
         cout<<setw(31)<<m[j].name<<setw(11)<<m[j].tip<<setw(6)<<m[j].kb<<
         setw(10)<<m[j].cena<<endl;}
        }
      f1.close();
    }
void vir (char *name)
    {
      float v=0;
      ifstream f1(name,ios::binary);
      if (!f1) {cout << "ERROR" <<endl ;}
      else
        {
        f1.seekg(0,ios::end);
        int dfb=f1.tellg();f1.seekg(0,ios::beg);
        int KZ=dfb/(10+30+sizeof(int)+sizeof(float));
        baz *m=new baz[KZ];
        f1.read(reinterpret_cast<char*>(m),dfb);
        for (int j=0;j<KZ;j++)
           {
           v=v+(m[j].cena * m[j].kb);
           }
        cout << "Viruchka ot prodag = " << v << endl;
        }
        f1.close();
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2013, 11:22     Пожалуйста, объясните программу, по возможности построчно
Посмотрите здесь:

Объясните пожалуйста программу !!! C++
C++ Объясните пожалуйста эту программу
C++ объясните пожалуйста эту программу
объясните пожалуйста эту программу C++
C++ объясните пожалуйста эту программу
C++ объясните пожалуйста эту программу
объясните пожалуйста эту программу C++
C++ Объясните программу, пожалуйста!

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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