1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программирован. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление
  2. Чат codeby в telegram перезагрузка. Обсуждаем вопросы информационной безопасности и методы защиты информации, программирование. Задавайте свои вопросы и комментируйте чужие. Подробнее ...

    Скрыть объявление

ПОМОГИТЕ! (С++)

Тема в разделе "С и С++", создана пользователем Serafim, 4 июн 2005.

Статус темы:
Закрыта.
  1. Serafim

    Serafim Гость

    Репутация:
    0
    Народ, срочно нужна ваша помощь! Задание для вас, я думаю будет минут на 5-10... так что не откажите...

    Вот сама прога (таблица типа имя, пол, доход, доход в долларах):

    Код:
    #include <conio.h>
     #include <iostream.h> 
     #include <stdlib.h> 
    
     struct rab {char name [45], pol; 
       int doxod;}; 
    
    
     rab  tabl [5];    //
     double  kursUE = 1; //
    
     
    
    
     void enter (rab & x) { 
     int j; cout << "Name:"; 
     cin >> x.name; 
     cout << "Pol:"; 
     cin >> x.pol; 
     {cout << "Doxod" << ":"; 
     cin >> x.doxod;} 
     } 
    
       void enterUEkurs (double & x)
     { 
      cout << "KursDollara:"; //
      cin >> x; 
     } 
    
    
    
     #include <iomanip.h> 
    
     void print (rab x) 
    
     { 
      cout << setw (20) << x.name << setw (10) << x.pol 
      << setw (3)<<' '<< x.doxod << ' ' << (x.doxod / kursUE);
        } 
    
     void enter (rab y [], int & n) 
    
     { 
    
     cout << "size:"; cin >> n; int i; 
     for (i = 0; i < n; i ++) enter (y [i]);} 
    
     void print (rab y [], int n) 
    
     { 
    
     int i; for (i = 0; i < n; i++) 
    
     { 
    
     print (y [i]); cout << endl; 
    
     } 
       } 
    
     void main () 
    
     { 
    
    
    
     rab tabl [5]; int n; 
     do {textcolor (4);
     clrscr (); 
     cout << "1 - Enter, 2 - Vivod, Esc - Quit\n"; 
     switch (getch ()) 
    
     { 
    
     case '1': enter (tabl, n); break; 
     case '2':  enterUEkurs(kursUE);
     case '3': print (tabl, n); break;
     case 27 : exit (0); 
    
     } 
     getch (); 
     } 
     while (1); 
     } 

    А теперь собственно задание - нужно в эту таблицу встваить вот этот вид базы данных - "Файловая система" (то что дал мне препод):


    Код:
    #include <fstream.h>
    char *frame () {char *S = new char [40]
    cout <<"Enter File name:"; cin >> S; return S;} 
    
     void save (fstream & x, rab y) 
     { 
     f << y.name << ' ' << y.pol << ' ' << y.doxod; 
     } 
     void save (char fn [], rab x [], int n) 
     { 
     int i; 
     fstream f; f.open (fn, ios::out); 
     f << n << ' '; for (i = 0; i < n; i++) 
     save (f, x [i]); 
     f.close ();} 
    
     void load (fstream & x, rab y) { 
     f >> y.name >> y.pol >> y.doxod} 
    
     void load (char fn [], rab x [], int & n) 
     {int i; 
     fstream f; f.open (fn, ios::in); 
     f >> n; for (i = 0; i < n; i ++) 
     load (x [i]) 
     } 
    case '5': save (fname (), my, k); cout << "SaveOk"; break;
    case '6': load (fname (), my, k); print (my, k); break;
    Я просто серьёзно не понимаю куда вставлять всё это... и уж тем более не понимаю как оно всё работает (нам не объясняли), так что если ещё и поясните, как всё это работает, то буду ОЧЕНЬ признателен!

    Люди, срочно помощь нужна! Просто горю... :(

    P.S.: и ещё вопрос (по первой части - таблице) - как можно изменить условия (по курсу долларов) так, чтобы они были применены для частного и передавались потом каждому последующему частному по цепочке??? :blink:
     
  2. ????

    ???? Гость

    Репутация:
    0
    Для: Serafim
    Что-то типа
    Код:
    #include <conio.h>
    #include <iostream.h>
    #include <stdlib.h>
    #include <iomanip.h>
    #include <fstream.h>
    
    struct rab
    {
    char name [45], pol;
    int doxod;
    };
    
    rab  tabl [5];
    double  kursUE = 1;
    
    void enter (rab & x)
    {
    cout << "Name:";
    cin >> x.name;
    cout << "Pol:";
    cin >> x.pol;
    cout << "Doxod" << ":";
    cin >> x.doxod;
    }
    
    void enterUEkurs (double & x)
    {
    cout << "KursDollara:";
    cin >> x;
    }
    
    void print (rab x)
    {
    cout << setw (20) << x.name << setw (10) << x.pol
     << setw (3)<<' '<< x.doxod << ' ' << (x.doxod / kursUE);
    }
    
    void enter (rab y [], int & n)
    {
    cout << "size:"; cin >> n;
    for (int i = 0; i < n; i ++) enter (y [i]);
    }
    
    void print (rab y [], int n)
    {
     for (int i = 0; i < n; i++)
     {
     print (y [i]); cout << endl;
    }
    }
    
    char *fname ()
    {
    char *S = new char [40];
    cout << "Enter File name:"; 
    cin >> S; 
    
    return S;
    }
    
    void save (fstream & f, rab y)
    {
    f << y.name << ' ' << y.pol << ' ' << y.doxod;
    }
    
    void save (char fn [], rab x [], int n)
    {
    fstream f;
    
    f.open (fn, ios::out);
    f << n << ' ';
    
    for (int i = 0; i < n; i++)
    save (f, x [i]);
    
    f.close ();
    }
    
    void load (fstream & f, rab y)
    {
    f >> y.name >> y.pol >> y.doxod;
    }
    
    void load (char fn [], rab x [], int & n)
    {
    fstream f;
    
    f.open (fn, ios::in);
    f >> n;
    
    for (int i = 0; i < n; i ++)
    load (f, x [i]);
    }
    
    void main ()
    {
    rab tabl [5]; int n;
    do
    {
    textcolor (4);
    clrscr ();
    cout << "1 - Enter, 2 - Kurs, 3 - Vivod, 5 - Save, 6 - Load, Esc - Quit" << endl;
    
    switch (getch ())
    {
    case '1': enter (tabl, n); break;
    case '2': enterUEkurs(kursUE); break;
    case '3': print (tabl, n); break;
    case '5': save (fname (), tabl, n); cout << "SaveOk"; break;
    case '6': load (fname (), tabl, n); print (tabl, n); break;
    case 27 : exit (0);
    }
    
    getch ();
     }
    
     while (1);
    }
     
  3. Guest

    Guest Гость

    Репутация:
    0
    Для: ????


    Спасибо тебе огромное! :blink:
     
  4. Serafim

    Serafim Гость

    Репутация:
    0
    :blink: А можно как-то изменить прогу, чтобы условия (курс доллара), данные для общего, принадлежали одному частному и по цепочке передавались каждому последующему частному!

    Т.е. если на яблоках объяснять, то - у нас есть 3 (ну любое число) яблока с одинаковыми свойствами. Их свойства описаны для всех трёх. Нужно сделать так, чтобы условия были даны первому яблоку, а для остальных яблок эти условия передавались по цепочке. :(
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей