ChameL1oN

1

Nov 22nd, 2015
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.12 KB | None | 0 0
  1. //Структура "Фильм":
  2. //-название;
  3. //-режиссер;
  4. //-год выпуска;
  5. //-стоимость.
  6.  
  7.  
  8. //Удалить все элементы, у которых стоимость превышает заданную
  9.  
  10. //Вывести на экран и в бинарный файл в порядке обратном алфавитному
  11. //
  12. //
  13. //1. Создать бинарное дерево, считывая информацию из бинарного файла.
  14. //2. Распечатать бинарное дерево указанным в варианте методом.
  15. //3. Найти в бинарном дереве элементы с указанными свойствами.
  16. //4. Удалить из бинарного дерева элементы с указанными свойствами.
  17. //5. Распечатать новое бинарное дерево.
  18. //6. переписать информацию из бинарного дерева в бинарный файл.
  19. //7. Вывести информацию из бинарного дерева в текстовый файл.
  20.  
  21. #define _CRT_SECURE_NO_WARNINGS
  22.  
  23. #include <iostream>
  24. #include <locale>
  25. #include <string>
  26. #include <fstream>
  27.  
  28.  
  29. using namespace std;
  30.  
  31. struct b{
  32. char* name = new char[50];
  33. char* autor = new char[50];
  34. int age;
  35. int price;
  36. };
  37.  
  38. struct p{
  39. b date;
  40. p* left;
  41. p* right;
  42. };
  43.  
  44.  
  45. void Binare(){
  46. ifstream f("Text.txt", ios::in);
  47. FILE* H;
  48. H = fopen("inpat.dat", "wb");
  49. int n;
  50. f >> n;
  51. fwrite(&n, sizeof(n), 1, H);
  52. for (int i = 0; i < n; i++){
  53. b a;
  54. string d;
  55. getline(f, d);
  56. getline(f, d);
  57. strcpy(a.name, d.c_str());
  58. getline(f,d);
  59. strcpy(a.autor, d.c_str());
  60. f >> a.age;
  61. f >> a.price;
  62. fwrite(&a, sizeof(a), 1, H);
  63. }
  64. fclose(H);
  65.  
  66. H = fopen("inpat.dat", "rb");
  67. fread(&n, sizeof(int), 1, H);
  68. for (int i = 0; i < n; i++){
  69. b d;
  70. fread(&d, sizeof(d), 1, H);
  71. cout << d.name << endl;
  72. cout << d.autor << endl;
  73. cout << d.age << endl;
  74. cout << d.price << endl;
  75. }
  76. }
  77.  
  78. void main(){
  79. setlocale(LC_ALL, "rus");
  80. Binare();
  81. }
Advertisement
Add Comment
Please, Sign In to add comment