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

Реализовать программу, которая будет работать с массивом из 100 контактов

24.10.2021, 19:58. Показов 346. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
1) Написать функцию, которая просит пользователя ввести номер телефона и возвращает
си-строку с введенными данными. Проверок не нужно. Телефон вводится как строка.
Предусмотреть максимальный буффер для ввода данных в 20 символов

2) Написать функцию, которая просит пользователя ввести Имя и возвращает
си-строку с введенными данными.
Предусмотреть максимальный буффер для ввода данных в 40 символов

3) Реализовать функцию, которая создает и возвращает новый телефонный контакт.
Телефонный контакт представляется в виде массива из двух си-строк.
char* *contact;
contact[0] - имя, contact[1] - телефон.

4) Реализовать функцию, которая печатает контакт

5) Реализовать программу, которая будет работать с массивом из 100 контактов.
Предусмотреть следующие пункты меню:
a - Добавление нового контакта
b - Вывод кол-ва контактов на экран
с - Печать контакта но индексу
d - Печать номера контакта по его Имени
Помогите пж доделать код до ума!! и решить последние пункты.
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
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
using namespace std;
#define SIZE  99
enum eContactData
{
    DATA_NAME = 0,
    DATA_NUMBER = 1,
    DATA_NEW = 2,
    DATA_ADD = 'a',
    DATA_PRINT = 'b',
    DATA_PRINT_INDEX = 'c',
    DATA_PRINT_NAME = 'd',
    DATA_EXIT = 'x'
 
 
};
 
char* enterContactName() //1
{
    char name[40]{};
    cout << "Enter Name: \n";
    gets_s(name, 40);
    const size_t length = strlen(name) + 1;
    char* arrName = new char [length] {};
    strcpy(arrName, name);
   
    return arrName;
   
}
char* enterContactNumber()//2 
{
    char number[40]{};
    cout << "\t\tEnter Number: \n";
    gets_s(number, 40);
    const size_t length = strlen(number) + 1;
    char* arrNumber = new char[length] {};
    strcpy(arrNumber, number);
    return arrNumber;
 
}
char** returnNewContact() //3
{
    const size_t length{ SIZE };
    char** contact = new char* [length] {};
    contact[DATA_NAME] = enterContactName();
    contact[DATA_NUMBER] = enterContactNumber();
 
    return contact;
}
 
void printContact(char** contactInfo)//4
{
    cout << "\t\tName:" << contactInfo[DATA_NAME] << endl;
    cout << "\t\tNumber:" << contactInfo[DATA_NUMBER] << endl;
 
}
void deleteContact(char** contact) //5
{
    for (int i = 0; i < SIZE; i++)
    {
        delete[] contact[i];
    }
    delete[] contact;
 
}
char** saveContact() {
    int ctr{};
    const size_t length{ SIZE };
    char** contact = new char* [length] {};
 
    char** allContacts[100]{};
    allContacts[ctr] = returnNewContact();
    contact[ctr] = *allContacts[ctr];
    ctr++;
 
 
    return *allContacts;
}
 
int main() {
    /*const char* Anatoliy[DATA_NEW] = {
            "Anatoliy",
            "8911-854-05-77"
    };*/
    int counter{};
    char choose{};
    bool exit{true};
    char** deleteC = new char* [SIZE] {};
    char** printC = new char* [SIZE] {};
 while (exit == true) 
 {
    cout << "Please select the menu item: " << endl;
        cout << R"(
                
        a - Add New Contact
        b - Print All Contact
        c - Print Contact per Index
        d - Print Contact per Name
        x - Exit, Delete all Data
 
 
                )";
        choose =_getch();
            if (choose == 'a' || choose == 'A')
            {
                returnNewContact();
 
             counter++;
             
            }
            else if (choose == 'b' || choose == 'B') {
                cout << "Number of contacts: " << counter << endl;
 
            }
            else if (choose == 'c' || choose == 'C') {
                returnNewContact();
 
            }
            else if (choose == 'd' || choose == 'D') {
                printContact(saveContact());
 
            }
            else if(choose == 'x' || choose == 'X')
            {
                deleteContact(deleteC);
            exit = false;
            cout << "Exiting...." << endl;
            
            }
            else {
            cout << "WRONG CHOOSE!!!" << endl;
            
            }
            
              
 }
   
 
 
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2021, 19:58
Ответы с готовыми решениями:

Необходимо написать программу на Erlang, которая будет рекурсивно умножать элементы матрицы 100 на 100
Здравствуйте, программирую довольно давно, но на Erlang начал только не давно. Нашел на этом же...

Написать программу, которая будет работать с видеопамятью
Есть задание: Написать программу, которая будет работать с видеопамятью. Программа должна...

Делаю программу, которая будет работать по принципу CMS систем. Есть проблемы с HTML и его интеграцией в программу
Шаблон с пустыми полями под имя, фамилию я уже подготовил, осталось сделать следующееюююю С...

Написать программу, которая будет печатать значения 10-100 рублей
Написать программу, которая будет печатать: 10 рублей; ... 100 рублей. Числа вводятся от 1 до 10....

Написать программу, которая будет работать как ярлык
В общем у меня на компе есть программа которая называется ,к примеру, M1A1 и есть ещё одна прога...

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

Сделать из обычной программы, программу которая будет работать с бинарными файлами
#include &lt;iostream&gt; using namespace std; int main() { int x, i, min=0, max=0; for...

Составить программу, которая будет печатать фамилию победителя, если он набрал 100 баллов
Выставлены баллы пяти спортсменов. Составьте программу, которая будет печатать фамилию победителя,...

Можно ли на языке 1С написать прикладную программу которая будет работать без платформы?
Можно ли на языке 1С написать произвольную прикладную программу которая будет работать без...

Напишите программу, которая будет работать со структурой «Товар» (Наименование, количество, цена)
Помогите пожалуйста написать программу, которая будет работать со структурой «Товар» (Наименование,...

реализовать программу,которая будет делать цветую окраску текста
все привет.прошу помощи в написании программы.суть такая:в поле вода поступает текст, все...


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

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

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