pihta24

Untitled

May 29th, 2024
739
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.63 KB | None | 0 0
  1. TPerson VvodInfoGen(FILE *f, TPerson human) {
  2.     fscanf_s(f, "%s", human.NAME.F, sizeof human.NAME.F);
  3.     if (strncmp(human.NAME.F, "**", 2) == 0) return human;
  4.     fscanf_s(f, "%s", human.NAME.I, sizeof human.NAME.I);
  5.     fscanf_s(f, "%s", human.NAME.O, sizeof human.NAME.O);
  6.     fscanf_s(f, "%2d", &human.DATA.Db);
  7.     fscanf_s(f, "%2d", &human.DATA.Mb);
  8.     fscanf_s(f, "%4d", &human.DATA.Yb);
  9.     fscanf_s(f, "%2d", &human.DATA.Dd);
  10.     fscanf_s(f, "%2d", &human.DATA.Md);
  11.     fscanf_s(f, "%4d", &human.DATA.Yd);
  12.     human = CorrectPers(human);
  13.     return human;
  14. }
  15.  
  16. void addgen(FILE *tr, FILE *f) {
  17.     TPerson human{};
  18.  
  19.     human = VvodInfoGen(f, human);
  20.  
  21.     if (!feof(f) && strcmp(human.NAME.F, "**") != 0) {
  22.         tr = createleft(tr, human);
  23.         addgen(tr, f);
  24.         tr = makecurrentparent(tr);
  25.     }
  26.  
  27.     human = VvodInfoGen(f, human);
  28.  
  29.     if (!feof(f) && strcmp(human.NAME.F, "**") != 0) {
  30.         tr = createright(tr, human);
  31.         addgen(tr, f);
  32.         tr = makecurrentparent(tr);
  33.     }
  34. }
  35.  
  36. //----------третья часть: создать неупорядоченное бинарное дерево из текстового файла----------
  37. FILE *CreateNotOrdered(FILE *tr) {//функция, которая создаёт неупорядоченное бинарное дерево
  38.     bool flag = true;
  39.     int count = 0;
  40.     FILE *f;
  41.     TPerson human{};
  42.     f = fopen("dat.txt", "r");
  43.     tr = fopen("tree", "r+");
  44.  
  45.     human = VvodInfoGen(f, human);
  46.     tr = createnull(human);
  47.     addgen(tr, f);
  48.  
  49.     tr = makecurrent(tr);
  50.     fclose(f);
  51.     fclose(tr);
  52.     return tr;
  53. }
Advertisement
Add Comment
Please, Sign In to add comment