1 / 1 / 0
Регистрация: 09.02.2013
Сообщений: 51
1

Опишите функцию Lower(G), определяющую имя самой невысокой женщины из группы

13.01.2014, 05:07. Показов 1092. Ответов 1
Метки нет (Все метки)

Для 7 человек, среди которых есть мужчины и женщины, хранятся следующие данные: имя, пол (true - мужской, false - женский), рост. Использовать для хранения данных об одном человеке запись (Pascal) или структуру ( С++). Для хранения сведений о группе людей использовать массив структур (записей) – G.
Опишите функцию Lower(G), определяющую имя самой невысокой женщины из группы.
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
#include <iostream>
#include <Windows.h>
using namespace std;
 
struct G //Структура 
{
    char name[35]; //Имя студента
    int rost; // рост
    char pol; // пол
    
};
 
int main()
{
    G mas[100];  // массив структуры
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int N;
    cout << "кол-во людей: ";
    cin >> N;
    for(int i=0; i<N; i++)
    {
        cout << endl;
        cout << "Имя: ";
        cin >> mas[i].name;
        cout << "Пол (m/w): "; 
        cin >> mas[i].pol;
        cout << "Рост: ";
        cin >> mas[i].rost;
    }
    cout << endl;
    system("cls");
    for(int i=0; i<N; i++)
        cout << mas[i].name << "  " << mas[i].pol 
        << "   " << mas[i].rost << " см" << endl;
    int answer = 'w'; // w - woman 
    int minIndex = 0;
    cout << endl << "Самая низкая женщина: " << endl;
    for(int i=0; i<N; i++)
    {
        if(answer == mas[i].pol)
        {
                cout << mas[i].name << " " << mas[i].rost << " см" << endl;
        }   
    }
    
    return 0;
}
как сделать полностью задание правильно?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.01.2014, 05:07
Ответы с готовыми решениями:

Опишите функцию Lower(G), определяющую фамилию и имя самого высокого мужчины из списка
Имеется список людей (n - человек), среди которых есть мужчины и женщины, хранятся следующие...

Написать функцию, определяющую индекс в массиве самой высокой женщины
Для комбинированного типа: const n=30; type data=record name: string; pol: char; rost:...

Для 7 человек, среди которых есть мужчины и женщины, хранятся следующие данные: имя, пол (true - мужской, false - женский), рост.Опишите логическую ф
условие: Для 7 человек, среди которых есть мужчины и женщины, хранятся следующие данные: имя, пол...

Описать функцию Max(G) определяющий наибольший рост женщины из группы
type name = (Mary, Jane, Kim, Bob, Jan, Pit, Tom, Sara); data = record male :...

1
21 / 21 / 8
Регистрация: 16.11.2012
Сообщений: 349
13.01.2014, 09:36 2
Lev93,
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
/**/
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <Windows.h>
 
using namespace std;
//////////Ãëîáàëüíûå ïåðåìåííûå, ñòðóêòóðû, êëàññû////////
struct G //Ñòðóêòóðà 
{
    char name[35]; //Èìÿ ñòóäåíòà
    int rost; // ðîñò
    char pol; // ïîë
    
};
G mas[100];  // ìàññèâ ñòðóêòóðû 
//////////Ïðîòîòèïû ôóíêöèé///////////////////////////////
int Lower(G [], int N);
//////////////////////////////////////////////////////////
int main()
{
    
    int N;
    int minIndex = -1;
    
    setlocale(LC_ALL, "Russian");
    
    cout << "êîë-âî ëþäåé: ";
    cin >> N;
    for(int i=0; i<N; i++)
    {
        cout << endl;
        cout << "Èìÿ: ";
        cin >> mas[i].name;
        cout << "Ïîë (m/w): "; 
        cin >> mas[i].pol;
        cout << "Ðîñò: ";
        cin >> mas[i].rost;
    }
    cout << endl;
    
    system("cls");
    
    for(int i=0; i<N; i++)
        cout << mas[i].name << "  " << mas[i].pol 
        << "   " << mas[i].rost << " ñì" << endl;
        
    minIndex=Lower(mas, N);   
    cout << endl << "Ñàìàÿ íèçêàÿ æåíùèíà: " << endl;
    cout << mas[minIndex].name;
    
    return 0;
}
//////////////////////////////////////////////////////////
int Lower(G x[], int N) {
    int minRost = 100000;
    int min=-1;
    
    for (int i=0; i<N; i++) {
        if((x[i].pol == 'w') && (x[i].rost < minRost))
        {
            minRost = x[i].rost;
            min = i;
        }   
    }
    
    return min;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.01.2014, 09:36
Помогаю со студенческими работами здесь

Опишите функцию MHeight(G), определяющую средний рост самых высоких
type name = (Mary, Jane, Kim, Bob, Jan, Pit, Tom, Sara, Bill, Pol); data = record male :...

как создать функцию определяющую имя файла
Допустим у меня 3 файла: page1.php, page2.php и page3.php. В другом файле, формирующем html код,...

Опишите тип записи - сведения о студенте группы. Сформируйте файл студентов своей группы.
Опишите тип записи - сведения о студенте группы, необходимые декану факультета. Сформируйте файл...

Вывести имя файла с самой последней или самой ранней датой последнего использования
Здравствуйте. Помогите с написанием bat файла. Разработать командный файл, который бы выводил в...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru