С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

Структуры: рост учеников - C++

21.11.2014, 10:39. Просмотров 333. Ответов 1
Метки нет (Все метки)

Задача по структурам

Известен рост каждого из 25 учеников класса. Ни одна
пара учеников не имеет одинакового роста.
а) Определить фамилии самого высокого и самого низкого
учеников класса.
б) Определить фамилии двух учеников, являющихся самыми
высокими, без учета действительно самого высокого
ученика класса.
в) Определить фамилии двух учеников, являющихся самыми
высокими в классе, не используя при этом два оператора
цикла (два прохода по массиву).
г) Вывести фамилии учеников в порядке возрастания их
роста.


Напишите код на С++, пожалуйста!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2014, 10:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Структуры: рост учеников (C++):

Рост учеников класса задан в виде массива. Определить средний рост мальчиков и девочек - C++
Рост учеников класса представлен в виде массива. Определить средний рост мальчиков и девочек. Вывести сообщение кто выше девочки и ...

Двумерный массив, вывести учеников, рост которых равен среднему арифметическому роста всех учеников - C++
Помогите пожалуйста, нужно задать двумерный массив A: Номер уч-ка и его рост B: Вес уч-ка а) вывести уч-ков, рост которых ср....

Найти средний рост учеников, рост самого высокого и самого низкого ученика - C++
Нужна программа с использованием структуры, вот ее условие: Ввести данные об учениках: ФИО и рост, найти средний рост учеников, рост...

Средний рост учеников - C++
Задачка с ростом учеников. Нужно написать программу, в которой пользователь вводит несколько трехзначных числовых значений, после...

Средний рост учеников - C++
Дано целое цисло. Если оно положительное, то вычислить средний рост девочек (см. задание 7), в противном случае вычислить средний рост...

Определить рост учеников - C++
Рост 25 учеников класса представлен в виде массива. Определить количество учеников, рост которых больше среднего роста по классу

1
TyLinka
32 / 32 / 11
Регистрация: 02.02.2012
Сообщений: 177
21.11.2014, 14:52 #2
Код был бы гораздо проще и лучше, если бы остальные пунктики выполнялись после сортировки по возрастанию
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>
 
using namespace std;
 
struct pupil
{
    char name[20];
    int height;
};
 
int main()
{
    const int n=5;
    pupil a[n], x, min, max, max1, max2;
    int k=0;
    for (int i=0; i<n; i++)
        cin >> a[i].name >> a[i].height;
// a
    min = max = a[0];
    for (int i=0; i<n; i++)
        if (a[i].height > max.height)
            max = a[i];
        else if (a[i].height < min.height)
            min = a[i];
    cout << "\nmin height - " << min.name << "\nmax height - " << max.name << "\n\n";
    
// б
    max1.height = 0;
    max2.height = 0;
    for (int i=0; i<n; i++)
        if (a[i].height > max1.height && a[i].height != max.height)
        {
            max1 = a[i];
            k = i;
        }
    for (int i=0 ; i<n; i++)
        if (a[i].height >max2.height && i != k && a[i].height != max.height)
            max2 = a[i];
    cout << "1) " << max1.name << " and " << max2.name << " are the tallest pupils\n";
    
// в
    max1.height = 0;
    max2.height = 0;
    k=0;
    for (int i=0; i<n; i++)
    {
        if (a[i].height != max.height && a[i].height > max1.height)
        {
            max1 = a[i];
            k=i;
        }
        if (a[i].height != max.height && a[i].height > max2.height && k != i)
            max2 = a[i];
    }
    cout << "2) " << max1.name << " and " << max2.name << " are the tallest pupils\n\n";
 
// г
    for (int i=1; i<n; i++)
        for (int j=0; j<n-i; j++)
            if (a[j].height > a[j+1].height)
            {
                x = a[j];
                a[j] = a[j+1];
                a[j+1] = x;
            }
    for (int i=0; i<n; i++)
        cout << a[i].name << " " << a[i].height << endl;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2014, 14:52
Привет! Вот еще темы с ответами:

Вычислить средний рост учеников - C++
Помогите пожалуста В таблице хранятся следующие данные об учениках: фамилия, имя, отчество, рост, масса. Вычислить средний рост учеников,...

Известен рост каждого из 20 учеников класса - C++
Известен рост каждого из 20 учеников класса. Рост мальчиков условно за-дан отрицательными числами. Выяснить, верно ли, что средний рост...

Определить количество учеников в классе, чей рост превышает средний - C++
Написать программу, которая определяет количество уче* ников в классе, чей рост превышает средний. Рекомендуемый вид экрана во время...

Определить количество учеников класса, рост которых не превышает значение L - C++
2.Рост каждого из 25 учеников класса представлен в виде массива. Определить количество учеников, рост которых не превышает значение L.


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.