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

Класс Human. Выбрать всех людей, старше 30 лет и с определенным индексом массы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определить какие буквы совпадают чаще в тексте http://www.cyberforum.ru/cpp-beginners/thread1217211.html
Задача: Дан текст, состоящий из слов, разделенных пробелом. Определить, какие буквы совпадают чаще: первые, последние или средние.
C++ Что использовать вместо таймера для множества точек, жизнь которых - 5 секунд Привет, народ, подскажите пожалуйста, как принято поступать в следующем случае: Имеется много разных объектов, они умеют делать много вещей - двигаться, появляться и исчезать с определенной частотой и др. вещи, зависящие от таймера. Как такое реализовать? Пример: каждый раз при нажатии кнопки на клавиатуре - в форме появляется точка. Каждая точка живет, допустим, 5 секунд, а затем исчезает. Не... http://www.cyberforum.ru/cpp-beginners/thread1217202.html
Как можно записать код в более компактном виде? C++
Вывести столбиком след. числа 3,2, 3,2, 3,3, 3,3,........3,9 у меня вышло довольно размазан: #include "iostream" #include "conio.h" using namespace std; int main() { int a; a=2;
Как выделить память для двумерного массива указателей в куче? C++
Есть массив вида: unsigned char *ddtКак выделить память для такого массива в куче? Должен получиться двумерный массив указателей. Сами указатели инициализируются в отдельной функции. При этом все функции в которых использовался данный массив, должны работать без изменений с динамическим массивом.
C++ Создайте АТД class, в области данных которого содержится динамический массив http://www.cyberforum.ru/cpp-beginners/thread1217154.html
Задание: Создайте АТД class в области данных которого содержится динамический массив типа float и целое число (номер максимального элемента в массиве). Среди методов класса создайте конструкторы и деструктор (если это необходимо) Вообще я не знаю как найти номер макс элемента в массиве и не знаю куда это впилить . ПОМОГИТЕ ПОЖАЛУЙСТА!! Мои нароботки: class ATD{ float *mas; int k;
C++ Из файла считывается массив чисел. Размер массива неизвестен Помогите, пожалуйста, додумать задачу! Определите максимум (М1) и минимум (М2) в массиве. Выведите в файл среднее геометрическое положительных четных чисел, расположенных в массиве между М1 и М2. Так вот, нужно изменить программу так, чтоб выводило "среднее геометрическое положительных четных чисел" в массиве между М1 и М2,а не просто всех чисел от М1 к М2(как сейчас). Вот сама программа:... подробнее

Показать сообщение отдельно
BatonPro
30 / 30 / 24
Регистрация: 21.06.2014
Сообщений: 81
01.07.2014, 17:15     Класс Human. Выбрать всех людей, старше 30 лет и с определенным индексом массы
Удаление можно сделать так:

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
131
132
133
134
135
136
137
#include <iostream>
#include <list>
#include <string>
using namespace std;
 
class Human
{
private:
    string name;
    int age;
    int weight;
    double height;
public:
    Human(){name="";age=0;weight=0;height=0;}
    Human(Human& hmn)
    {
        this->name=hmn.name;
        this->age=hmn.age;
        this->weight=hmn.weight;
        this->height=hmn.height;
    }
    Human(string& name,int age,int weight,double height)
    {
        this->name=name;
        this->age=age;
        this->weight=weight;
        this->height=height;
    }
    double getBMI()
    {
        return weight/(height*height);
    }
    int getAge()
    {
        return age;
    }
    bool operator > (Human& hmn)
    {
        if (this->weight>hmn.weight)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
    bool operator < (Human& hmn)
    {
        if (this->weight<hmn.weight)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
    bool operator == (Human& hmn)
    {
        if (this->weight==hmn.weight)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
    Human& operator = (Human& hmn)
    {
        
        this->name=hmn.name;
        this->age=hmn.age;
        this->weight=hmn.weight;
        this->height=hmn.height;
    }
 
    friend ostream& operator <<(ostream& out,Human& hmn)
    {
        out<<"Имя:"<<hmn.name<<endl;
        out<<"Возраст:"<<hmn.age<<endl;
        out<<"Вес:"<<hmn.weight<<endl;
        out<<"Рост:"<<hmn.height<<endl;
        out<<"BMI="<<hmn.getBMI()<<endl;
        return out;
    }
 
 
};
 
class OlderThan
{
    int age;
public:
    OlderThan(int _age): age(_age){}
    bool operator()( Human& hmn)
    {
        if(hmn.getAge() > age)
            return true;
        else
            return false;
    }
};
 
 
int main()
{
    setlocale(LC_ALL,"Russian");
    list<Human> List1;
    list<Human>::iterator i;
    double BMI;
    List1.push_back(Human((string)"Алексей",23,70,1.76));
    List1.push_back(Human((string)"Виталий",28,82,1.8));
    List1.push_back(Human((string)"Валерий",42,85,1.76));
    List1.push_back(Human((string)"Игорь",18,65,1.7));
 
    List1.remove_if(OlderThan(30));
    
    for(i= List1.begin();i!=List1.end();i++)
    {
        cout<<*i;   
    }
    cout<<endl<<"----------------------"<<endl;
    List1.sort();
    List1.reverse();
    for(i= List1.begin();i!=List1.end();i++)
    {
         BMI=(*i).getBMI();
         if(BMI>22 && BMI<23)
         {
             cout<<*i;
             break;
         }
    }
    return 0;
}
sort() - сортирует объекты с помощью операторов сравнения, в данном случае они перегружены так, что сортировка идет по весу.
 
Текущее время: 23:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru