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

Составить код с применением методов для каждой подзадачи

29.11.2021, 19:16. Показов 254. Ответов 0

Author24 — интернет-сервис помощи студентам
Здравствуйте, помогите пожалуйста переработать обычный код в код с применением методов для каждой подзадачи. Вот непосредственно сам код:
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
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
#include <iostream>
#include <string>
 
using namespace std;
 
class Strana
{
    public:
    string name; // название страны
    double square; // площадь страны
};
 
void Print(Strana* country, int n)
{
    for(int i = 0; i < n; i++)
    {
        cout <<country[i].name <<"\t"<<country[i].square<<" million sq km"<<endl; //млн.кв км
    }
}
 
void Sort_Square(Strana* country, int n)
{
    for(int i = 0; i < n-1; i++)
    {
        for(int j = i+1; j < n; j++)
        {
            if(country[i].square < country[j].square)
            {
                swap(country[i].square, country[j].square);
            }
        }
    }
}
 
double Average_area(Strana* country, int n)
{
    double s = 0;
    for(int i = 0; i < n; i++)
    {
        s += country[i].square;
    }
    return s/n;
}
 
void Max_average(Strana* country, int n)
{
    int nommax = 0;
    double max = country[nommax].square;
    for(int i = 0; i < n; i++)
    {
        if(max < country[i].square)
        {
            max = country[i].square;
            nommax = i;
        }
    }
    cout <<"Maximum area: "<<country[nommax].square<<" million sq km"<<endl; //Максимальная площадь: ... млн.кв км
}
 
double More_average(Strana* country, int n)
{
    double s = Average_area(country, n);
    int kol = 0; 
    for (int i = 0; i < n; i++)
    {
        if (country[i].square > s+1.e-9) kol++;
    }
    return kol;
}
 
void Search(Strana* country, int n)
{
    string str;
    int nom = -1;
    cout <<"Enter the name of the country you are looking for: "; //Введите названия страны, которую ищите:
    cin.get();
    getline(cin, str);
    for(int i = 0; i < n ; i++)
    {
        if(str == country[i].name)
        nom = i;
    }
    if(nom != -1)
    {
        cout <<"Such a country is on the list. This "<<country[nom].name<<" "<<country[nom].square<<" million sq km"<<endl; //Такая страна есть в списке. Это ... млн.кв км
    }
    else
    cout <<"This country is not on the list"<<endl; //Такой страны нет в списке
}
 
void menu(Strana* country, int n)
{
    while(true)
    {
        int k;
        cout <<"\nSelect an item: "<<endl; //Выберите пункт:
        cout <<"1 - display countries on the screen."<<endl; //1 - вывести страны на екран.
        cout <<"2 - sort countries by area."<<endl; //2 - отсортировать страны по площади.
        cout <<"3 - find out the average area of ​​countries."<<endl; //3 - узнать среднюю площадь стран.
        cout <<"4 - find out the maximum area of ​​countries."<<endl; //4 - узнать максимальную площадь стран.
        cout <<"5 - find out the number of countries with a larger than average area."<<endl; //5 - узнать количество стран с плошадью больше средней.
        cout <<"6 - search by name."<<endl; ///6 - поиск по названию.
        
        cout <<"\n";
        cin >> k;
        cout <<"\n";
        switch(k)
        {
            case 1:
            {
                Print(country, n);
                break;
            }
            case 2:
            {
                Sort_Square(country, n);
                cout <<"Sorting by area:"<<endl;
                for(int i = 0; i < n; i++)
                {
                    cout <<country[i].square<<" million sq km"<<endl;
                }
                break;
            }
            case 3:
            {
                cout << "Average area: "<< Average_area(country, n) << "  million sq km" << "\n";
                break;
            }
            case 4:
            {
                Max_average(country, n);
                break;
            }
            case 5:
            {
                cout << "The number of countries with an area larger than the average: "<< More_average(country, n) << "\n";
                break;
            }
            case 6:
            {
                Search(country, n);
                break;
            }
        }
    }
}
 
int main()
{
    cout <<"Enter the number of countries: "; //Введите количество стран:
    int n, nommax = 0;
    cin >> n;
    Strana* country = new Strana[n];
    for(int i = 0; i < n; i++)
    {
        cout <<"\nEnter the names of "<<i+1<<" country: "; //Введите названия ... страны:
        cin.get();
        getline(cin, country[i].name);
        cout <<"Place "<<i+1<<" country: "; //Площадь ... страны:
        cin >> country[i].square;
    }
    menu(country, n);
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.11.2021, 19:16
Ответы с готовыми решениями:

Составить программу для решения поставленной задачи оформив подзадачи ввиде функций
Составить программу для решения поставленной задачи оформив подзадачи ввиде функций for while if ...

Решение задач с применением булевых функций. Для каждой из функций заданных формулой составить: сднф и скнф
https://www.cyberforum.ru/attachment.php?attachmentid=345772&amp;stc=1&amp;d=1387707019 Помогите...

Применением методов параллельного вычисления для решения математического выражения
Доброго времени суток! Делаю себе курсовую по системному программному обеспечению есть задание ...

необходимо составить комментарии для каждой строки (абсолютно для каждой)
Задание: Дана строка введённая с клавиатуры. Вывести эту строку на экран, при этом изменив порядок...

Составить программу для решения задачи с применением функции пользователя
Задание 1. Составить программу для решения задачи с применением функции пользователя. Даны...

0
29.11.2021, 19:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.11.2021, 19:16
Помогаю со студенческими работами здесь

Составить программу для решения задачи с применением функции пользователя
Найти положение свободно падающего в глубокий колодец камня через 0,1; 0,2; 0,3; 0,4; 0,5; 0,6;...

Составить программу для решения задачи с применением функции пользователя
Задача во вложении Вложение удалено модератором.

Задание 1. Составить программу для решения задачи с применением функции пользователя
Задание 1. Составить программу для решения задачи с применением функции пользователя. Для...

C++ билде Требуется сделать подзадачи для моего проэкта
#include &lt;vcl.h&gt; #pragma hdrstop #include &lt;windows.h&gt; #include &quot;uParall.h&quot; #include...

Составить программу для решения поставленных задач с применением операторов итерационного цикла
По данному числу n найти последнее число Фибоначчи, не превышающее n. Указание: числа Фибоначчи...


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

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

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