Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 16

классы

01.04.2011, 19:23. Показов 654. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1.Описать класс с именем NOTE, содержащий следующие поля: фамилия, имя; номер телефона; день рождения (массив из трех чисел). 2.Написать программу, выполняющую следующие действия: ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по трем первым цифрам номера телефона; вывод на экран информации о человеке, чья фамилия введена с клавиатуры; если такого нет, выдать на дисплей соответствующее сообщение.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.04.2011, 19:23
Ответы с готовыми решениями:

Непонятна тема (Классы содержащие другие классы, как данные члены )
Изучаю книгу Джесс Либерти(в частности эту главу в данный момент) #include <iostream> class Point { public: void...

Программа по классам, которая использует классы точек и прямых на плоскости, а, возможно, и другие классы
Нужно написать программу, которая использует классы точек и прямых на плоскости, а, возможно, и другие классы. Реализовать её нужно в трех...

Как struct Queue и его операции превратить в классы, то есть нужно сделать тоже самое, но через классы
Как struct Queue и его операции превратить в классы, то есть нужно сделать тоже самое, но используя соотвественно классы И как...

5
377 / 228 / 79
Регистрация: 24.11.2009
Сообщений: 695
02.04.2011, 11:15
Общий принцип:
костяк
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
#include<assert.h>
#include<iostream>
#include<string>
static const int N = 3;             //количество "карточек" в массиве
static const int char_size = 256;   
 
class note{
    public:
        char family_name[char_size];
        int phone;
        // и остальное.
    private:
        //nothing.
};
 
void add(note* const a, const int i);   //заполняет i-тую "карточку"
void search(const char* const person, 
            const note* const a);       //Поиск карточки по фамилии
void gsort(note* const a);              //очевидно сортировка.            
 
int main(void){
    note a[N];
    //заполняем:
    for(int i = 0; i<N; i++) add(a,i);
    
    //сортируем:
    std::cout<<"==================================="<<std::endl;
    for(int i = 0;i<N; i++)
        std::cout<<a[i].family_name<<'\t'<<a[i].phone<<std::endl;
    
    gsort(a);
    
    std::cout<<"==================================="<<std::endl;
    for(int i = 0;i<N; i++)
        std::cout<<a[i].family_name<<'\t'<<a[i].phone<<std::endl;
        
        
    //Ищем человека:
    std::cout<<"кого ищем? : ";
    char person[char_size];
    std::cin>>person;
    
    search(person,a);
    
return 0;
}
 
void add(note* const a, const int i){
    assert((a!=NULL)&&(i>=0)&&(i<N));
    
    //тут красивые запросы с проверкой вводимых данных.
    //у нас - фамилия и телефон через пробел.
    std::cin>>a[i].family_name>>a[i].phone;
}
 
void search(const char* const person, const note* const a){
    assert( (a!=NULL)&&(person!=NULL)&&(N>0) );
    //ниже должно быть красивое оформление и вывод всех данных
    // по найденой карточке.
    for(int i = 0;i<N; i++){
        if(!strcmp(a[i].family_name, person)){
            std::cout<<"найдено :";
            std::cout<<a[i].family_name<<'\t'<<a[i].phone<<std::endl;
            return;
        }
    }
    std::cout<<"не найдено.";
}
 
 
void gsort(note* const a){
    assert((a!=NULL)&&(N>0));
    //гномья, разнообразия для:
    int iterator = 1;
    while(iterator<N){
        if (a[iterator-1].phone > a[iterator].phone)
        {
            iterator++;}
        else{
            //обмен значениями (лучше написать функцию swap(a,b))
            char str[char_size];
            std::strcpy(str,a[iterator].family_name);
            std::strcpy(a[iterator].family_name,
                                a[iterator-1].family_name);
            std::strcpy(a[iterator-1].family_name,str);
            
            int tmp = a[iterator].phone;
            a[iterator].phone = a[iterator-1].phone;
            a[iterator-1].phone = tmp;
            //продолжаем:
            
            iterator--;
            if (iterator == 0) iterator = 1;
        }
    }
    //отсортировано по убыванию.
}

Осталось расширить класс именами, должностями,праздниками. Привести ввод/вывод в нормальное состояние менюшки по желанию и прочие "красивости".
зы: код рабочий.
1
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 16
04.04.2011, 14:33  [ТС]
Vladimir., он мне ничего не выводит, просто компилируется и все . Окно просто пустое
0
377 / 228 / 79
Регистрация: 24.11.2009
Сообщений: 695
04.04.2011, 14:42
C++
1
2
3
4
5
6
7
void add(note* const a, const int i){
        assert((a!=NULL)&&(i>=0)&&(i<N));
        
        //тут красивые запросы с проверкой вводимых данных.
        //у нас - фамилия и телефон через пробел.
        std::cin>>a[i].family_name>>a[i].phone;
}
C++
1
2
3
4
5
6
7
8
void add(note* const a, const int i){
        assert((a!=NULL)&&(i>=0)&&(i<N));
        
        //тут красивые запросы с проверкой вводимых данных.
        //у нас - фамилия и телефон через пробел.
std::cout<<"\nфамилию и телефон через пробел введите пожалуйста."<<std::endl;
        std::cin>>a[i].family_name>>a[i].phone;
}
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 16
04.04.2011, 15:32  [ТС]
только в этом месте надо?

Добавлено через 43 минуты
если только тут, то не получается, он мне какие то иероглифы выводит
0
377 / 228 / 79
Регистрация: 24.11.2009
Сообщений: 695
04.04.2011, 15:41
если только тут, то не получается, он мне какие то иероглифы выводит

читаем
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.04.2011, 15:41
Помогаю со студенческими работами здесь

Наследование, базовые классы и производные классы
Добрый вечер.Задание: необходимо разработать поля и методы наследуемые из базового класса и собственные компоненты производных...

Классы и наследование (Создать класс 3D фигура, и производные классы шар, конус, цилиндр и куб. Создать функцию вычисления объёма.)
Уважаевые, помогите написать прожку на экзамене: Создать класс 3D фигура, и производные классы шар, конус, цилиндр и куб. Создать функцию...

Классы, включающие другие классы
Столкнулся вот с таким кодом: #include &lt;iostream&gt; class Point { public: void SetX(int x) {itsX = x;} void SetY(int y) ...

Классы возможностей(Mixin классы)
Не могу понять смысла использования mixin классов( это класс в котором есть только методы и нет членов-данных) Т.е. к примеру у нас...

классы/дочерние классы/методы
помогите пожалуйста! надо что выводились только учебеники. чтоб былo через GetTip. h файл class Book { protected: char...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru