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

C++

Войти
Регистрация
Восстановить пароль
 
Kazancev
Сообщений: n/a
#1

Разминка для профессианалов - C++

07.06.2010, 13:06. Просмотров 524. Ответов 5
Метки нет (Все метки)

Помогите решить детскую задачу

Условие: В телефонной книге 100 номеров абонентов.
• Определить номер телефона для указанной фамилии.
• Определить фамилию, соответствующую заданному телефонному номеру

P.S. Фамилию можно заменить на числовой индекс

Очень нужно, и очень срочно.

Заранее благодарен
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2010, 13:06     Разминка для профессианалов
Посмотрите здесь:

Разминка для мозгов - C++
Необходимо выполнить задания, написав их на языке С: 1) Нарисовать схему алгоритма для программы, которая вводит значения переменных a...

C++, Одномерный массив - разминка для мозгов - C++
Есть следующая задачка: "Используйте одномерный массив для решения. Считать 100 чисел, каждый из которых между 1 и 10...

разминка для мозга - Алгоритмы
на askdev.ru есть конкурс - игра в города(http://www.askdev.ru/question/1969/) есть массив городов, нужно написать программу которая на...

Разминка для программистов - C#
Интересно будет посмотреть на коды, кто и как решил эти задачи. :) 1. Написать программу, которая вводит по строкам с клавиатуры...

Разминка для мозга
Меня конечно могущественный АДМИНИСТРАТОР и не менее могущественный МОДЕРАТОР как они выражаются зафлудят но я всё таки задам вам один...

Разминка для программиста, - Pascal
Уважаемые, Помогите, пожалуйста. Очень сильно нужно. Думаю для вас это не составит большого труда. Задача 1. Если a<0 и b>0, то...

Разминка для ума - Обо всем!
прошу помочь в решение пишите номер задания и ответ если не сложно за ранее благодарю

VPN для SCALANCE S61x, разминка для мозга - Сети
Столкнулся с вопросом поднять VPN тунель на оборудовании Logmatic (такое древобрабатывающее оборудование) для организации контроля со...

Вот еще разминка для ваших умов - VBA
Решите пожалуйста эти задачи : Составить алгоритм решения задачи: сколько можно купить быков, коров и телят, платя за быка 10 р., за...

Разминка для спецов №1 (512b game). Предлагаю развлечься! - Assembler
Друзья спецы. Кто хочет немного отвлечься от помощи студентам и проявить спортивный программистский интерес? Предлагаю замутить... (хотел...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
07.06.2010, 14:37     Разминка для профессианалов #2
Сделай вектор с элементами pair<string, long>, а поиск через find_if
Kazancev
Сообщений: n/a
07.06.2010, 15:18     Разминка для профессианалов #3
я просто совсем не программист, это невестке на курсах дали задание, если не сложно, то можно просто код программы прислать?
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
07.06.2010, 15:22     Разминка для профессианалов #4
Вечером смогу написать, сейчас работу работаю
toxa92
167 / 94 / 2
Регистрация: 16.04.2010
Сообщений: 464
07.06.2010, 15:25     Разминка для профессианалов #5
Если это детская задачка, то, я полагаю, нужно юзать структуры (про что писал Manjak я как то не понял)
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
08.06.2010, 12:44     Разминка для профессианалов #6
Вот:
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
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
using namespace std;
 
typedef vector<pair<string, long> > Numbers;
 
class Criterion
{
public:
    enum classState { ID_SURNAME_SEARCH, ID_PHONE_SEARCH};
 
    Criterion(string surname, long phone, classState mode) 
        : m_surname(surname), m_phone(phone), m_state(mode)
    {}
 
    Criterion(pair<string, long>& p, classState mode) 
        : m_surname(p.first), m_phone(p.second), m_state(mode)
    {}
 
    bool operator() (pair<string, long>& p)
    {
        if (m_state == ID_SURNAME_SEARCH)
            return p.first == m_surname;
        else
            return p.second == m_phone;
    }
    void setState(classState state)
    {
        m_state = state;
    }
private:
    classState m_state;
    string m_surname;
    long m_phone;
};
 
int main (void)
{
    Numbers numbers;
        numbers.push_back(make_pair("abc", 12345));
        numbers.push_back(make_pair("acb", 122345));
        numbers.push_back(make_pair("bca", 1222345));
 
        Numbers::iterator pos = find_if(numbers.begin(), numbers.end(), Criterion("bca", 0, Criterion::ID_SURNAME_SEARCH));
    if (pos != numbers.end())
        cout << "Found:\nSurname: " << pos->first << ";\tPhone: " << pos->second << endl;
    system("pause");
    return 0;
}
Yandex
Объявления
08.06.2010, 12:44     Разминка для профессианалов
Ответ Создать тему
Опции темы

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