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

Работа с файлами: телефонная книга - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Тихий режим hldsupdatetool http://www.cyberforum.ru/cpp-beginners/thread761968.html
Привет, есть программа hldsupdatetool - (Если кто-то не знаком, эта программа от steam для загрузки сервера cs 1.6 без дополнений) Задача такова: Нужно программно на языке C++ установить в тихом режиме, с определенными параметрами, программу hldsupdatetool. На ум пришло следующее: Программно создать, батник в одной директории с hldsupdatetool и запустить его. start.bat start...
C++ Используя рекурсивную функцию, выдать первые n элементов последовательности Помогите пожалуйста! Рекурсия моя слабость! Вот задание: Используя рекурсивную функцию, выдать первые n элементов последовательности Xn= 5*X(n-1) - 20, X0= 2, которые больше заданного числа m. Что то даже начать не знаю откуда! Очень нужна ваша помощь! Заранее спасибо! http://www.cyberforum.ru/cpp-beginners/thread761966.html
Получить массив В, содержащий элементы массива А, расположенные между максимальным и минимальным элементами массива C++
Люди добрые, помогите решить задачку. Дан одномерный массив А, состоящий из целых чисел. Получить массив В, содержащий элементы массива А, расположенные между максимальным и минимальным элементами массива.
Код из VS2012 в 2012 C++
// sc.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include <iostream> #include <string> #include <algorithm> int const N = 5; int const N = 5;
C++ Какой софт нужен, чтобы начать программировать на C++ http://www.cyberforum.ru/cpp-beginners/thread761953.html
Ребята, подскажите такую вещь - вот IDE допустим скачал (Visual Studio), а где взять остальное? Компилятор, что там ещё нужно чтобы писать код и запускать это дело на компе? Заранее благодарен.
C++ Материал какого из двух тел разных материалов имеет большую плотность? даны объемы и массы двух тел из разных материалов, материал какого из тел имеет большую плотность подробнее

Показать сообщение отдельно
Sniti01
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 50
14.01.2013, 23:44     Работа с файлами: телефонная книга
Здравствуйте участники форума! Помогите, если сможете, разобраться какие ошибки в программе.
Задание такое: составить программу телефонная книга. В которой есть функции ввода данных в книгу (Фамилия имя отчество номер телефона), вывод содержимое книги и поиск в книге. Все данные записуются в файл.
Вот что у меня получилось:
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
#include "stdafx.h"
#include "iostream"
 
#include "fstream"
#include "conio.h"
#include "string.h"
 
using namespace std;
 
struct dan {
 char fam[100] ;
 char name[100] ;
 char otchestvo[100];
 char adres[100];
 char nomer_tel[100];
};
 
class Set_Vod_Dan {
 
public:
    dan t;
    
    void vod () {
    cout << "Введите сколько граждан будут занесены в список :";
    int chel; cin >> chel;
    
    for (int i = 0; i < chel; i++){
 
    cout << " Введите Имя: " ;
    cin >> t.name ;
    cout << " Введите Фамилию: ";
    cin >> t.fam ;
    cout << " Введите Отчество: ";
    cin >> t.otchestvo ;
    cout << " Введите адрес: ";
    cin >> t.adres;
    cout << " Введите номер телефона: " ;
    cin >> t.nomer_tel ;
    cout << endl;
        //      ******запишем данные в файл*******
    ofstream kniga (" telefon.txt ", ios_base::app);
    
    if (!kniga.is_open()) // если файл небыл открыт
    {
     cout << "Файл не может быть открыт или создан\n"; // напечатать соответствующее сообщение
    }
    else{
            
    kniga << t.name << " ";
    kniga << t.fam << " ";
    kniga << t.otchestvo << " ";
    kniga << t.adres << " ";
    kniga << t.nomer_tel << endl;
    }
    }
    }
};
 
 
class Get_Poisk {
public:
    dan w;
    void vciy_kniga (){
    char buf [1000];
    ifstream kniga (" telefon.txt ", ios_base::in ); // открываем файл только для чтения
    if (!kniga.is_open()) // если файл небыл открыт
    {
     cout << "Файл не может быть открыт или создан\n"; // напечатать соответствующее сообщение
    }
    else{
            cout << "    Телефонная книга!!! " << endl;
        while (!kniga.eof() ){
        kniga.getline(buf,1000) ;
        cout << buf << endl;
        }
    }   
    }
 
    void poisk (){
        char a[1000], b[1000], c[1000], e[1000];
        ifstream kniga (" telefon.txt ");
        
    cout << "Введите имя гражданина-   ";
        cin >> w.name ;
        cout << "введите фамилию гражданина-   ";
            cin >> w.fam;
            cout << "Введите Отчество гражданина-   ";
            cin >> w.otchestvo;
    
        while (!kniga.eof() ) {
            //kniga.getline(e,1000);
            kniga >> a;
            kniga >> b;
            kniga >> c;
            if( ( w.name ) == a && (w.fam) == b && (w.otchestvo) == c){  
                cout << a << endl;
            }   
        else {cout << "В телефонной книге нет номера!" << endl;   }
    }
    }
};
 
 
int _tmain(int argc, _TCHAR* argv[]){
 
    setlocale(LC_CTYPE, "rus"); // не функционирует с потоком ввода
    Set_Vod_Dan Object;
    Get_Poisk Object_1;
    
      //         ***********меню программы***********
    
      cout << "        MENU" << endl;
      cout << "Для ввода данных нажмите 1 " << endl;
      cout << "Для поросмотра записной книги нажмите 2 " << endl;
      cout << "Для поиска в записной книге нажмите 3 " << endl;
      cout << "Для выхода с программы нажмите 4 " << endl;
      int d;
      cin >> d;
 
      switch(d){
      case 1 : {Object.vod ();
                  break;
               }
     case 2 : { Object_1.vciy_kniga ();
                  break;
               }
      case 3 : { Object_1.poisk();
                 break;
               } 
      case 4 : { return 0;
          break;
               }
          
   default: {
       cout << "Ошибка! Введите правельный знак операции!" << endl;
      }
      }
      
    
    system("pause");
    return 0;
}
Не получается создать функцию поиска по файлу (void poisk ()) , точнее она есть но не выполняется поиск. Помогите, у кого есть время, исправить ошибки.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru