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

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

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

list & map - C++

17.04.2012, 19:27. Просмотров 274. Ответов 0
Метки нет (Все метки)

Всем привет. Нужна помощь , я написал прогу с использованием вектора. теперь её нужно переделать под map и list. Но ни как не могу это сделать. Помогите кто может.
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
#include <iostream>
#include <vector>
#include <stdlib.h>
#include <stdio.h>
#include <algorithm>
#include <string>
#include <locale>
 
using namespace std;
 
struct structura{       
    string data;
    string time;
    int number;
    float size;
}str,str1;
template <class T>
class S                               
{
   public:
    vector<T>st;    
 
    S(int n)
        {
     for(int i=0; i<n; i++)
     {
      cout << "Введіть дату ["<<i<<"]=";
      getchar();
      getline (cin,str.data,'\n');
      cout << "Введіть час["<<i<<"] =";
      getline (cin,str.time,'\n');
      cout << "Введіть номер рахунку ["<<i<<"]=";
      cin>> str.number;
      cout << "Введіть розмір рахунку ["<<i<<"]=";
      cin>> str.size;
      st.push_back(str);
     }
    }
    
    void print()
    {
      for(int i=0; i<st.size(); i++)
      {
          cout <<"\nДата["<<i<<"]="<<st[i].data;
          cout <<"\nЧас["<<i<<"] ="<<st[i].time;
          cout <<"\nНомер рахунку["<<i<<"]="<<st[i].number;
          cout <<"\nРозмір рахунку["<<i<<"] ="<<st[i].size;
      }
    } 
    
    void insert()
    {
      int i=1;
      cout << "Введіть дату ["<<i<<"]=";
      getchar();
      getline (cin,str.data,'\n');
      cout << "Введіть час["<<i<<"] =";
      getline (cin,str.time,'\n');
      cout << "Введіть номер рахунку ["<<i<<"]=";
      cin>> str.number;
      cout << "Введіть розмір рахунку ["<<i<<"]=";
      cin>> str.size;
      st.push_back(str);
    }
    void sort()
    {
     
    for(int i=0;i<st.size()-1;i++)
        for(int j=i+1;j<st.size();j++)
        {
         if(st[i].number<st[j].number)
         {
          str1=st[i];
          st[i]=st[j];
          st[j]=str1;
         }
        }
    }
    
    float sum(void)
        {
    float s=0;
     for(int i=0; i<st.size(); i++)
      s=s+st[i].size;
      return s;
     }
    
    void erase(int n)
    {
        
    if (n>=0 && n<=st.size())
    {
        st.erase(st.begin()+n,st.begin()+n+1);
    }
    else cout << "\nНе правильна позиція\n";
        
    }
};
 
      int main()    
{
    locale::global(locale("")); 
    int N=0,k;
    cout << "\nВведіть кылькысть елемента =";
    cin >> N;
    S<structura> x(N);  
    x.print();      
    x.insert();     
    x.print();      
    cout<<"\nСортування\n";
    x.sort();           
    x.print();      
    cout<<"\nСумма="<<x.sum();
    cout<<"\n\nВведіть позицію видалення\n";
    cin>>k;
    x.erase(k);     
    x.print();      
    return 0;
    cin.get();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2012, 19:27     list & map
Посмотрите здесь:

C++ у меня созданы 2 фаила - один с классом (называется list.h), а другой с реализациями функций (list.cpp).
C++ Изменение формата данных && работа с файлом
В программе объявлена переменная int x=1; определить значение выражения х>0 && x<1 ? 10/x : 10*x C++
C++ Чем оператор || отличается от оператора && ?
C++ list<map> добавление элемента
Как проверить, принадлежит ли символ заданному диапазону m...n, кроме if (c <= n && c >= m) ? C++
Почему в выражении нельзя использовать запятую вместо && C++
Тип значения в контейнере map - контейнер list C++
C++ Преобразование списка list в *list
C++ Напишите цикл, эквивалентный приведенному выше циклу, не пользуясь операторами && и ||
C++ Strcpy_s выдает ошибку L Buffer is too small & & 0
C++ Вызвать функцию базового класса с ссылочным квалификатором &&

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

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

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