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

Список животных :) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Строки: является ли введенная с клавиатуры строка шестнадцатеричным числом http://www.cyberforum.ru/cpp-beginners/thread563376.html
Уважаемые друзья! Помогите пожалуйста Задание: Написать программу, которая проверяет, является ли введенная с клавиатуры строка шестнадцатеричным числом. Буду очень благодарна вам :)
C++ Составить программу для вычисления площади кольца... Составить программу для вычисления площади кольца по значениям внутреннего и внешнего радиусов, используя функцию вычисления площади круга. http://www.cyberforum.ru/cpp-beginners/thread563374.html
Массив: Найти минимальный среди минимальных элементов каждого столбца. C++
Дана матрица размера 5 x 10. Найти минимальный среди минимальных элементов каждой столбца.
C++ Массив: Найти сумму элементов строки, в которой расположен наибольший элемент.
Найти сумму элементов строки, в которой расположен наибольший элемент.
C++ Массив: Найти, сколько положительных элементов содержит данная матрица в каждом столбце. http://www.cyberforum.ru/cpp-beginners/thread563363.html
Найти, сколько положительных элементов содержит данная матрица в каждом столбце.
C++ Ввод из файла с разделителями Проблема следующая: как ввести из файла произвольное количество целых чисел, между которыми не пробел, а разделитель (например, ".")? Если бы был пробел, то я бы сделал так: vector<int> v; while (!in.eof()){ int a; in>>a; v.push_back(a); } подробнее

Показать сообщение отдельно
DebieCooper
 Аватар для DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 285
02.05.2012, 11:42     Список животных :)
Ребята помогите пожалуйста.
• для каждого животного (точнее вида животного) получить количество владельцев и количество кличек;
• для каждого животного получить список владельцев этого вида животного;
Исправьте код плиз0
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
#include <iostream>
#include <queue>
#include <fstream>
#include <string>
#include <list>
#include <algorithm>
#include <iterator>
#include <vector>
#include <map>
#include <set>
using namespace std;
 
struct ZHIV
{
  string name;
  string vid;
  string klichka;
 
 
  friend ostream& operator<< (ostream& os, ZHIV& opa)
{
    os << opa.name << ' ' << opa.vid << ' ' << opa.klichka << ' ';
    return os;
}
  
};
 
int main()
{
  setlocale (LC_ALL,"RUS");
  vector<ZHIV> vec;  
  ifstream in ( "infile.txt" ); 
  ofstream out ( "outfile.txt" );
  int  n;
  in >> n;
 
  for(int i=0; i<n; i++)
    {
     ZHIV p;
     in>>p.name>>p.vid>>p.klichka;
     vec.push_back(p);
    }
 
  vector<ZHIV>:: iterator q;
  //________________________
 
//______________________________
  map< string, ZHIV > m;
    
    for (q=vec.begin(); q!=vec.end(); q++)
        m.insert(pair < string, ZHIV> ( (*q).vid, (*q) ) );
 
     cout<<"Список всех владельцев дом.животных"<<endl;
    set< string > mn;
    set<string>::iterator r;
    for(q=vec.begin(); q!=vec.end(); ++q )
        mn.insert((*q).name);
    for(r=mn.begin(); r!=mn.end(); ++r)
        cout<<*r<<endl;
    //___________________________________
    multimap< string, ZHIV > m2;
    
    for (q=vec.begin(); q!=vec.end(); q++)
        m2.insert(pair < string, ZHIV> ( (*q).vid, (*q) ) );
 
 
 
    cout<<"Введите вид животного:"<<endl;
        string x;
        cin>>x;
        multimap < string, ZHIV >::iterator p;
        p= m2.find(x);
        if (p!=m2.end()){
        do{
            cout<<(*p).second.name<<endl;
            p++;
        } while (p!=m2.upper_bound(x) );
        }
        else
        cout<<"Таких нет "<<endl;
    //___________________________________
 
    multimap< string, ZHIV > m1;
    
    for (q=vec.begin(); q!=vec.end(); q++)
        m1.insert(pair < string, ZHIV> ( (*q).vid, (*q) ) );
 
 
 
    cout<<"Введите вид животного:"<<endl;
        string a;
        cin>>a;
        multimap < string, ZHIV >::iterator z;
        z= m1.find(a);
        if (z!=m1.end()){
        do{
            cout<<(*z).second.name<<endl;
            z++;
        } while (z!=m1.upper_bound(a) );
        }
        else
        cout<<"Таких нет "<<endl;
 
 
 
 
         int o;
      cin>>o;
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru