С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 06.11.2015
Сообщений: 63
1

Посчитать количество квартир на заданной улице

02.03.2016, 23:16. Показов 1427. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет всем,

написать консольную программу на языке C++ с использованием структур. Программа должна позволять пользователю добавлять данные в массив структур, просматривать этот массив, а также выполнять дополнительную операцию в соответствии с индивидуальным заданием.

Поля структуры:

название улицы;
номер дома;
количество квартир.

Операция: посчитать количество квартир на заданной улице.

Не удается написать Код чтобы посчитались квартири на заданной улице



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
#include <iostream>
#include <string>
 
using namespace std;
 
    struct apartment
    {
        string street_name;
        int house_number;
        int number_of_apartments;
    };
 
    int main()
    {
        int n;
        cout << "Enter street count: ";
        cin >> n;
 
        apartment *apartments = new apartment[n];
 
        for (int i = 0; i < n; i++)
        {
            cin.get();
            cout << "Enter: " << i + 1 << " street name: " << endl;
            getline(cin, apartments[i].street_name);
            cout << "Enter house number: " << endl;
            cin >> apartments[i].house_number;
            cout << "Enter number of apartments: ";
            cin >> apartments[i].number_of_apartments;
        }
 
        for (int i = 0; i < n; i++){
            cout << " Street_name\t" << apartments[i].street_name << " House_number\t" 
                << apartments[i].house_number<< " Number_of_apartments\t" 
                << apartments[i].number_of_apartments<< endl;
        cout << "==================================================================" << endl;
    }
        return 0;
    }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.03.2016, 23:16
Ответы с готовыми решениями:

Посчитать количество квартир на заданной улице
Привет всем, признаюсь честно не*рена непонимаю в массивах. а через 2 дня Экзамен, и надо успеть...

Посчитать количество минимумов заданной матрицы
Элемент матрицы называется локальным минимумом, если он строго меньше своих соседей. Посчитать...

Посчитать количество слов в заданной строке
Вычислить значение f= {q}^{sin(x)} функции где q – количество символов, которые надо найти в...

Посчитать количество файлов в директории по заданной дате
Приветствую. Подскажите пожалуйста, как посчтитать количество файлов в директории созданных...

5
88 / 88 / 80
Регистрация: 25.08.2013
Сообщений: 337
03.03.2016, 11:00 2
Лучший ответ Сообщение было отмечено tezaurismosis как решение

Решение

C++
1
2
3
4
5
6
7
8
9
int apart_equal(apartment *&apar, int n) { // apar ссылка на указатель, n кол-во улиц
    string st_nam;
    int count_ap(0); // пер. для кол-ва квартир, инициализируем нулем
    cin >> st_nam;      
    for (int i = 0; i < n; ++i) 
        if (apar[i].street_name == st_nam) 
            count_ap += apar[i].number_of_apartments * apar[i].house_number;
    return count_ap;
}
Отдельная функция, если правильно вас понял.
0
Любитель чаепитий
3744 / 1800 / 566
Регистрация: 24.08.2014
Сообщений: 6,016
Записей в блоге: 1
04.03.2016, 12:33 3
Лучший ответ Сообщение было отмечено tezaurismosis как решение

Решение

JoeSidorov,
C++
1
2
3
4
5
6
7
8
cin >> search_street;
int sum = 0;
for(int i = 0; i < n; ++i)
{
    if(apartaments[i].street_name == search_street)
        sum += apartaments[i].number_of_apartaments;
}
std::cout << sum << std::endl;
0
0 / 0 / 0
Регистрация: 06.11.2015
Сообщений: 63
04.03.2016, 18:21  [ТС] 4
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 <string>
 
 
using namespace std;
 
struct apartment
{
    string street_name;
    int house_number;
    int number_of_apartments;
};
 
int main()
{
    int n;
    cout << "Enter house count: ";
    cin >> n;
 
    apartment *apartments = new apartment[n];
 
    for (int i = 0; i < n; i++)
    {
        cin.get();
        cout << "Enter street name: " << endl;
        getline(cin, apartments[i].street_name);
        cout << "Enter house number: " << endl;
        cin >> apartments[i].house_number;
        cout << "Enter number of apartments: ";
        cin >> apartments[i].number_of_apartments;
    }
        int search_house;
        cin >> search_house;
        int sum = 0;
        for (int i = 0; i < n; ++i)
        {
            if (apartments[i].street_name == search_house)
                sum += apartments[i].number_of_apartments;
        }
    std::cout << sum << std::endl;
    for (int i = 0; i < n; i++)
        cout << " Street_name\t" << apartments[i].street_name << " House_number\t"
            << apartments[i].house_number << " Number_of_apartments\t"
            << apartments[i].number_of_apartments << endl;
        cout << "==================================================================" << endl;
    delete[] apartments;
return 0;
}
Миниатюры
Посчитать количество квартир на заданной улице  
0
BrainOverflow
126 / 130 / 64
Регистрация: 31.03.2013
Сообщений: 556
04.03.2016, 18:28 5
JoeSidorov, каким образом вы хотите сравнить целочисленный тип сo строковым?
C++
1
2
3
4
5
6
7
8
9
10
11
12
struct apartment
{
    string street_name;
    //.....
};
    int search_house;
    //......
    for (int i = 0; i < n; ++i)
    {
        if (apartments[i].street_name == search_house)
        //......
    }
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
25.04.2016, 23:52 6
JoeSidorov,
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
#include <iostream>
#include <string>
 
 
using namespace std;
 
struct apartment
{
string street_name;
int house_number;
int number_of_apartments;
};
 
int main()
{
int n;
cout << "Enter house count: ";
cin >> n;
 
apartment *apartments = new apartment[n];
 
for (int i = 0; i < n; i++)
{
cin.get();
cout << "Enter street name: " << endl;
getline(cin, apartments[i].street_name);
cout << "Enter house number: " << endl;
cin >> apartments[i].house_number;
cout << "Enter number of apartments: ";
cin >> apartments[i].number_of_apartments;
}
string search_house;
cout<<"vvedite nazvanie ulici: ";
cin >> search_street;
int sum = 0;
for (int i = 0; i < n; ++i)
{
if (apartments[i].street_name == search_street)
sum += apartments[i].number_of_apartments;
}
std::cout << sum << std::endl;
for (int i = 0; i < n; i++)
cout << " Street_name\t" << apartments[i].street_name << " House_number\t"
<< apartments[i].house_number << " Number_of_apartments\t"
<< apartments[i].number_of_apartments << endl;
cout << "==================================================================" << endl;
delete[] apartments;
return 0;
}
0
25.04.2016, 23:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.04.2016, 23:52
Помогаю со студенческими работами здесь

Посчитать количество локальных минимумов заданной матрицы
Элемент матрицы называется локальным минимумом, если он строго меньше, всех имеющихся у него...

Посчитать количество локалных минимумов заданной матрицы
Элемент матрицы называется локальным минимумом, если от срого меньше всех имеющихся у него соседей....

Вывести студентов с заданной фамилией и посчитать их количество.
Domains list=symbol* fam,im=symbol Predicates student(fam,im) count_st(list,integer) go...

В заданной строке посчитать количество точек и запятых
Как написать программу, которая в заданной строке посчитала бы количество точек и запятых?


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru