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

записывает в файл каракули - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ строки (считать, заменив все вхождения слова «Slovo» на слово «Znak») http://www.cyberforum.ru/cpp-beginners/thread724061.html
Помогите, пожалуйста, как написать программку, которая считывает с клавиатуры строку символов, после чего выводит ее на экран, предварительно заменив в ней все вхождения слова «Slovo» на слово...
C++ Реализовать часы Вот такая проблема... не могу придумать, как реализовать часы... То есть, вот такая проблема, у меня есть два времени записанных таким образом: 00:00:00 и 00:00:00, всё это надо уметь складывать,... http://www.cyberforum.ru/cpp-beginners/thread724060.html
C++ Найти простые числа в заданном диапазоне с помощью решета Эратосфена и вывести их в файл
Для зачета задали написать программу для нахождения простых чисел от 1 до 1000000000 и вывод их в файл,чтобы программа делала все это меньше 5 минут,желательно с помощью решета Эратосфена. Как...
Абстрактные классы C++
Абстрактные классы. Вроде разобрался что да как. Но вот как правильно написать динамический список с такими функциями: вставка элемента из головы (хвоста) в заданном месте; вывода списка на экран;...
C++ Динамическая структура (очередь) http://www.cyberforum.ru/cpp-beginners/thread724039.html
Кто разбирается, прошу помочь. Лекции по этой теме нам не читали, а писать надо :( Буду очень благодарен за помощь. Добавлено через 18 часов 31 минуту Вот задание: Сформировать динамическую...
C++ Создать бинарный файл Здравствуйте, делаю лабораторную работу, вроде код написала, но он почему-то пропускает запись названия термина. Помогите пожалуйста. Вот условие и код: #include <iostream> using namespace std; ... подробнее

Показать сообщение отдельно
tokar2
25 / 25 / 1
Регистрация: 09.11.2012
Сообщений: 229
08.12.2012, 21:14  [ТС]
Здесь выскочила еще одна проблема: не работает функция edit она редактирует профиль того человека которого введем с клавиатуры! Что в ней не так?

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 <iostream>
#include <iomanip>
#include <ctime>
#include <cctype>
#include <string.h>
#include <conio.h>
#include <locale.h>
#include <stdlib.h>
 
int size=1;
 
using namespace std;
 
struct info{
       char name[6];
       char zodiak[6];
       char data[6];
       };
void inp(info &A);
void out(info &A);
void rando_m(info &A);
void edit(info &A);
 
int main()
{
      info A;
    cout<<"1)Enter people"<<endl;
    cout<<"2)cout people"<<endl;
    cout<<"3)Random people"<<endl;
    cout<<"4)Redag people"<<endl;
    while(1)
    {
      int c;
      cin>>c;
      switch(c)
      {
        case 1: inp(A); break;
        case 2: out(A); break;
        case 3: rando_m(A); break;
        case 4: edit(A); break;
             }}
  
    getch();
    return 0;
}
 
void inp(info &A){
    FILE *f;
    f=fopen("d://1.txt","ab");
        size++;
        cout<<"Enter:"<<endl;
        cout<<"Name"<<endl;
        cin>>A.name;
        cout<<"Zodiak"<<endl;
        cin>>A.zodiak;
        cout<<"data"<<endl;
        cin>>A.data;
        fwrite(&A,sizeof(A),1,f);
    fclose(f);
}
 
void out(info &A)
{
     FILE *f;
     f=fopen("d://1.txt","rb");
     for(int i=0;i<size;i++){
     fread(&A, sizeof(A), 1, f);
        cout<<"Name:  ";
        cout<<A.name<<endl;
        cout<<"Zodiak:  ";
        cout<<A.zodiak<<endl;
        cout<<"data:  ";
        cout<<A.data<<endl;
    }
        fclose(f);
 }
void rando_m(info &A){
     int n=0;
     cout<<"Enter ckilku random:  ";
     cin>>n;
        size+=n;
     char* name_1[6]={"Andriy Hrupaluk","Skveres Sergiy","Predko Sila","Demankhuk Mukola"," Bogdan Cemenivuch","Vasa Petrenko"};
     char* zodiak_1[12]={"Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra",
                     "Scorpio","Sagittarius","Capricorn","Aquarius","Pisces"};
     char* data_1[4]={"11 22 2012","12 11 2010","12 11 2011","12 11 2098"};
     FILE *f;
     f=fopen("d://1.txt","ab");
     for(int i=0;i<n;i++){
          strcpy(A.name,name_1[rand()%6]);
          strcpy(A.zodiak,zodiak_1[rand()&12]);
          strcpy(A.data,data_1[rand()%4]);
          fwrite(&A,sizeof(A),1,f);
       }
       fclose(f);
       out(A);
       }
 
void edit(info &A){
  info K;
  FILE *f, *f1;
  bool result = false;
  f=fopen("1.txt", "r+b");
  f1=fopen("text1.txt", "w+b");
  if (f==NULL||f1==NULL) {
    cout<<"Error"<<endl;
  }
  else {
    if (size==0) {
      cout<<"Spisok is Empty"<<endl;
    }
    else {
      cout<<"Enter prizv for redag"<<endl;
      cin>>K.name;
      for (int i = 0; i < size; i++) {
        fread(&A, sizeof(A), 1, f);
        if (strcmp(A.name,K.name)==0) {
          cout<<"New name"<<endl;
          cin>>K.name;
          cout<<"New zodiak"<<endl;
          cin>>K.zodiak;
          cout<<"New date"<<endl;
          cin>>K.data;
          fwrite(&K, sizeof(K), 1, f1);
        }
        else
          fwrite(&A, sizeof(A), 1, f1);
      }
      if (result == false) {
        cout<<"Nema prizvuca"<<endl;
      }
    }
  }
  freopen("1.txt", "wb", f);
  freopen("text1.txt", "rb", f1);
  for (int i = 0; i < size; i++) {
    fread(&A, sizeof(A), 1, f1);
    fwrite(&A, sizeof(A), 1, f);
  }
  fclose(f1);
  fclose(f);
  cout<<endl;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru