Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Труфольдино
0 / 0 / 0
Регистрация: 10.01.2012
Сообщений: 8
#1

Функции поиска - C++

10.01.2012, 15:53. Просмотров 865. Ответов 10
Метки нет (Все метки)

Задача:
В записной книжке указаны: Ф.И.О., адрес, телефон. Определить функции:
1) поиска адреса и телефона по Ф.И.О.
2) поиска Ф.И.О. по адресу и/или телефону

Проблемы:
Как грамотно создать записную книжку, что бы в ней адекватно хранились данные? Как работают сами функции я представляю в принципе, достаточно сравнивать вводимые данные с теми, что в записной книжке, но проблема заключается в том, что эту самую записную книжку создать совершенно не удаётся. Объясните пожалуйста как её делать. (на С++)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2012, 15:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функции поиска (C++):

Функции поиска - C++
Привет!У меня такая проблема: я хочу написать на с++ программу которая бы находила в директории файлы с расширением *.txt подскажите...

Оптимизация функции поиска - C++
Есть функция поиска номеров по шаблону, шаблон задает пользователь. Пример ввода: 097???????. Надо сделать так, чтоб при вводе (097???????...

Функции поиска в структуре - C++
Ребята, столкнулся с заданием, не знаю как реализовать функции поиска в структурах собственно, само задание: дан файл f, компонентами...

Неточность функции поиска угла - C++
написал функцию нахождения угла по 3-м точкам int LengthBetweenPoints(point a,point b) { return...

Некоректная работа функции поиска - C++
В методе класса PoiskPR некорректно работает код, не выводит на результаты на экран. Суть задания вывести на экран список избирателей по...

Функции поиска для стека - C++
Стек примерную реализацию нашел на вашем форуме, правда не могу запустить нормально. Осталось реализовать две функции: Locate (х,...

10
dimcoder
Полярный
466 / 438 / 68
Регистрация: 11.09.2011
Сообщений: 1,136
10.01.2012, 15:58 #2
Цитата Сообщение от Труфольдино Посмотреть сообщение
самую записную книжку создать совершенно не удаётся
Почему не удается? Про работу с файлами слышали?
0
Труфольдино
0 / 0 / 0
Регистрация: 10.01.2012
Сообщений: 8
10.01.2012, 16:00  [ТС] #3
Цитата Сообщение от dimcoder Посмотреть сообщение
Почему не удается? Про работу с файлами слышали?
не слышали.
0
dimcoder
Полярный
466 / 438 / 68
Регистрация: 11.09.2011
Сообщений: 1,136
10.01.2012, 16:14 #4
Цитата Сообщение от Труфольдино Посмотреть сообщение
не слышали.
Создаете текстовый файл, желательно где нибудь "поближе". И работаете с ним. Как работать лучше почитайте в учебниках.
0
Труфольдино
0 / 0 / 0
Регистрация: 10.01.2012
Сообщений: 8
10.01.2012, 16:21  [ТС] #5
мне не требуется огромная записная книжка. Вполне сгодится 3-4 записи. Делать желательно в 1 файле, типа небольшая лабораторная работа.

Никак не могу понять, почему QtCreator постоянно ругается на char, как сравнивать текстовые строки и всё с ними связанное.

Всё упирается в том, что через перечисляемый тип удаётся создать подобие записной книжки, которая выводится на экран (консоль), но как данные из этого подобия записной книжки сравнивать с вводимыми данными - никак не могу понять.
0
easybudda
Модератор
Эксперт CЭксперт С++
9664 / 5614 / 952
Регистрация: 25.07.2009
Сообщений: 10,777
10.01.2012, 16:25 #6
Труфольдино, есть хорошая книга, там как-раз всю дорогу записную книжку делают. Крайне рекомендую ознакомиться...
1
Труфольдино
0 / 0 / 0
Регистрация: 10.01.2012
Сообщений: 8
10.01.2012, 16:28  [ТС] #7
Цитата Сообщение от easybudda Посмотреть сообщение
Труфольдино, есть хорошая книга, там как-раз всю дорогу записную книжку делают. Крайне рекомендую ознакомиться...
с удовольствием ознакомлюсь, но прочитать её всю я не успею, эту лабу нести надо уже в четверг
0
dimcoder
Полярный
466 / 438 / 68
Регистрация: 11.09.2011
Сообщений: 1,136
10.01.2012, 16:59 #8
Труфольдино, тогда создайте структуру, назовём ее zapis. Затем создаёте массив zapis'ей. Примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
struct zapis
{
    char family[80];
    char name[80];
    char otch[80];
    char tel[80];
    void setAll(const char * f, const char * n, const char * o, const char * tel)
{//Здесь описываете ввод
    cin >> family >> name >> otch;
    cin >> tel;
}
};
 
main ()                 //Примеры использования
{
    zapis z[4];
    z[0].setAll("Pupkin", "Vasya", "Yurich", "555-555-555-555");
    cout << z[0].family;
}
0
Труфольдино
0 / 0 / 0
Регистрация: 10.01.2012
Сообщений: 8
10.01.2012, 18:52  [ТС] #9
Попробовал ваш пример и стало лучше, но почему-то приходится самому вводить в консоли данные, а то что написано в скобках setAll() не воспринимается.
0
dimcoder
Полярный
466 / 438 / 68
Регистрация: 11.09.2011
Сообщений: 1,136
10.01.2012, 19:46 #10
Цитата Сообщение от Труфольдино Посмотреть сообщение
не воспринимается
Да уж, немного накосячил я. Так лучше
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void setAll()
{//Здесь описываете ввод "Диалог с юзером"
    cout << "Family = "
    cin >> family;
    cout << "Name = "
    cin >> name;
    cout << "Otchestvo = ";
    cin >> otch;
    cout << "Tel = ";
    cin >> tel;
}
//и вызывать так:
main ()
{
    //blablabla
    z[0].setAll();
}
Добавлено через 9 минут
Цитата Сообщение от Труфольдино Посмотреть сообщение
самому вводить в консоли данные
Да можно перегрузить setAll с параметрами примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 void setAll(const char * f, const char * n, const char * o, const char * t)
{//Здесь описываете ввод
    for (int i = 0; i <= strlen(f); i++)
         family[i] = f[i];
    for (i = 0; i <= strlen(n); i++)
         name[i] = n[i];
    for (i = 0; i <= strlen(0); i++)
         otch[i] = o[i];
    for (i = 0; i <= strlen(t); i++)
         tel[i] = t[i];
}
//вызывать соответственно 
main ()
{
    //blablabla
    z[0].setAll("Pupkin","Vasya","Urich","555-555-555-555")
}
1
Труфольдино
0 / 0 / 0
Регистрация: 10.01.2012
Сообщений: 8
10.01.2012, 21:12  [ТС] #11
спасибо
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2012, 21:12
Привет! Вот еще темы с ответами:

Шаблон функции поиска максимального элемента - C++
Шаблон функции поиска максимального элемента массива задается след.образом: template &lt;typename T&gt; T max(T *x, int len) { T max=x; ...

Найти ошибку в коде функции поиска - C++
не могу найти ошибку, помогите, кто может?( ошибка в поиске) #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;io.h&gt; #include...

Стандартные функции поиска элементов в контейнерах - C++
Какие есть стандартные библиотеки/ф-ции поиска в с++? Нашел find(), но не совсем понятна его работа. Как я понял, он возвращает итератор на...

Алгоритм поиска безусловного экстремума функции - C++
Здравствуйте, помогите пожалуйста написать программу, реализующую алгоритм поиска безусловного экстремума функции ax^2+bx+c методом...


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

Или воспользуйтесь поиском по форуму:
11
Yandex
Объявления
10.01.2012, 21:12
Ответ Создать тему
Опции темы

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