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

Задача, нахождение наименьшего - C++

Восстановить пароль Регистрация
 
CuHxPo
4 / 0 / 0
Регистрация: 20.03.2014
Сообщений: 12
15.05.2014, 19:54     Задача, нахождение наименьшего #1
Помогите пожалуйста написать
Имеются данные о сотрудниках фирмы (фамилия, зарплата, пол). Найти фамилии мужчины и женщины, получающих наименьшую зарплату.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Андрей2002
4 / 4 / 2
Регистрация: 20.04.2014
Сообщений: 64
15.05.2014, 21:02     Задача, нахождение наименьшего #2
А данные где хранятся?
CuHxPo
4 / 0 / 0
Регистрация: 20.03.2014
Сообщений: 12
15.05.2014, 22:13  [ТС]     Задача, нахождение наименьшего #3
Андрей2002, данные необходимо ввести вручную и чтоб они хранились в памяти
CuHxPo
4 / 0 / 0
Регистрация: 20.03.2014
Сообщений: 12
01.06.2014, 17:17  [ТС]     Задача, нахождение наименьшего #4
S.O.S
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
01.06.2014, 19:29     Задача, нахождение наименьшего #5
Давно уже пузырька не реализовывал))
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
#include <iostream>
#include <string>
#include <algorithm>
using std::cout;
using std::string;
 
class Employe
{
    string lastname;
    int salary;
    char sex;
 
    static void employeSort(Employe *employees, int size)
    {
        for (int i = 0; i < size; ++i)
            for (int j = 0; j < size; ++j)
                if (employees[i].salary < employees[j].salary)
                    std::swap(employees[i], employees[j]);
    }
public:
    Employe() {}
    Employe(string newLname, int newSalary, char newSex): 
      lastname(newLname), salary(newSalary), sex(newSex) {}
 
    static string findMinSalary(Employe *employees, int size, char sex)
    {
        Employe *bufEmployees = new Employe[size];
        std::copy(employees, employees + size, bufEmployees);
            
        employeSort(bufEmployees, size);
 
        for (int i = 0; i < size; ++i)
        {
            if (bufEmployees[i].sex == sex) 
            {
                string result = bufEmployees[i].lastname;
                delete[] bufEmployees;
                return result;
            }
        }
 
        delete[] bufEmployees;
        return string("nothing");
    }
};
 
int main()
{
    Employe employees[] = { Employe("lname0", 10, 'M'),
        Employe("lname1", 3, 'M'),
        Employe("lname2", 20, 'F'),
        Employe("lname3", 11, 'M'),
        Employe("lname4", 5, 'F'),
        Employe("lname5", 5, 'M'),
        Employe("lname6", 10, 'M')
    };
    cout << Employe::findMinSalary(employees, sizeof(employees) / sizeof(*employees), 'M') << '\n';
    cout << Employe::findMinSalary(employees, sizeof(employees) / sizeof(*employees), 'F') << '\n';
 
    system("pause");  
}
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,064
01.06.2014, 19:31     Задача, нахождение наименьшего #6
BumerangSP, а зачем employeSort методом класса
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
01.06.2014, 19:33     Задача, нахождение наименьшего #7
ValeryS, статический закрытый. Есть часть алгоритма по поиску работников. Просто чтоб находились в одной области видимости.
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,064
01.06.2014, 19:42     Задача, нахождение наименьшего #8
Цитата Сообщение от BumerangSP Посмотреть сообщение
статический закрытый.
так я как бы заметил
я про то что сортировка в классе по моему лишняя
завтра изменятся условия поиска и что заново переписывать?
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
01.06.2014, 20:40     Задача, нахождение наименьшего #9
ValeryS, имеете в виду, что не стоило выносить сортировку из метода поиска? Да, возможно. Но так нагляднее, пусть останется.
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,064
01.06.2014, 21:03     Задача, нахождение наименьшего #10
BumerangSP, нет я бы поиск выкинул из класса, не стыкуется он здесь
разве что
Цитата Сообщение от BumerangSP Посмотреть сообщение
в одной области видимости.
напрашивается аналогия, массив целочисленных найти наименьшее, в int же нет метода поиска
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
01.06.2014, 21:16     Задача, нахождение наименьшего #11
Ну, дык... Я бы лучше все это обернул в еще один класс, типа "EmployeHandler" (или как лучше назвать), и там бы разместил эту функцию поиска. Но это уже выходит за рамки данной задачи. ТС нужен был поиск - он его получил. Дальше пусть сам крутит и обертывает
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,064
01.06.2014, 21:30     Задача, нахождение наименьшего #12
Цитата Сообщение от BumerangSP Посмотреть сообщение
Дальше пусть сам крутит и обертывает
А тож
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.06.2014, 22:00     Задача, нахождение наименьшего
Еще ссылки по теме:

Нахождение наибольшего и наименьшего элементов целочисленного массива C++
Задача на нахождение наименьшего времени C++
Нахождение наименьшего общего кратного C++

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

Или воспользуйтесь поиском по форуму:
BumerangSP
01.06.2014, 22:00     Задача, нахождение наименьшего
  #13

Не по теме:

Я тут кстати подозреваю, что будут вопросы насчет ввода данных. ТС ведь надо было вручную.)

Yandex
Объявления
01.06.2014, 22:00     Задача, нахождение наименьшего
Ответ Создать тему
Опции темы

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