Advertisement
Guest User

Untitled

a guest
Jan 27th, 2015
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.40 KB | None | 0 0
  1. это мейн
  2.  
  3. #include "func.cpp"
  4. #include <iostream>
  5. #include <stdio.h>
  6. using namespace std;
  7. int main()
  8. {
  9. int menu;
  10. int n;
  11. setlocale(LC_ALL, "RUS");
  12. mn:
  13. cout << "Введите: \n 1 - для ввода в бинарный файл\n 2 - для ввода в текстовый файл\n";
  14. cin >> menu;
  15. switch(menu)
  16. {
  17. case 1:
  18. {
  19. VVod();
  20. Read();
  21. break;
  22. }
  23. case 2:
  24. {
  25. VVodtxt(n);
  26. double n1=n;
  27. Readtxt(n1);
  28. break;
  29. }
  30. default: goto mn;
  31. }
  32. return 0;
  33. }
  34.  
  35.  
  36. это функция
  37.  
  38. #include <fstream>
  39. #include <iostream>
  40. #include <windows.h>
  41. using namespace std;
  42. struct igruschka
  43. {
  44. char name [15];
  45. int stoimost;
  46. int min;
  47. int max;
  48. }igr;
  49. void VVod()
  50. {
  51. int n;
  52. FILE *f;
  53. f = fopen("input.bin", "wb");
  54. if (f== NULL)
  55. {
  56. cout << "Ошибка открытия файла для записи" << endl;
  57. exit(EXIT_FAILURE);
  58. }
  59. cout << "Введите количество игрушек ";
  60. cin >> n;
  61. fwrite(&n, sizeof(int),1,f);
  62. for (int i = 0; i < n; i++)
  63. {
  64. cout << "Введите название игрушки "; cin >> igr.name;
  65. cout << "Введите стоимость игрушки "; cin >> igr.stoimost;
  66. cout << "Минимальный возраст "; cin >> igr.min;
  67. cout << "Максимальный возраст "; cin >> igr.max;
  68. fwrite(&igr,sizeof(igruschka),1,f);
  69. }
  70. fclose(f);
  71. }
  72. void Read()
  73. {
  74. int n,st;st=0;
  75. FILE *f;
  76. f = fopen("input.bin", "rb");
  77. if (f== NULL)
  78. {
  79. cout << "Ошибка открытия файла для записи" << endl;
  80. exit(EXIT_FAILURE);
  81. }
  82. fread(&n, sizeof(int),1,f);
  83. for(int i = 0; i < n; i++)
  84. {fread(&igr,sizeof(igruschka),1,f);
  85. if (st<igr.stoimost)
  86. st=igr.stoimost;}
  87. fclose(f);
  88.  
  89. f = fopen("input.bin", "rb");
  90. if (f== NULL)
  91. {
  92. cout << "Ошибка открытия файла для записи" << endl;
  93. exit(EXIT_FAILURE);
  94. }
  95. fread(&n, sizeof(int),1,f);
  96. for(int i = 0; i < n; i++)
  97. {
  98. fread(&igr,sizeof(igruschka),1,f);
  99. if(igr.stoimost>=st-100)
  100. cout << igr.name << "\n";
  101. }
  102. fclose(f);
  103. }
  104. void VVodtxt(int n)
  105. {
  106. cout << "Введите количество игрушек ";
  107. cin >> n;
  108. }
  109. void Readtxt(double n)
  110. {
  111. FILE * f;
  112. f=fopen ("text.txt", "w");
  113. if (f== NULL)
  114. {
  115. cout << "Ошибка открытия файла для записи" << endl;
  116. exit(EXIT_FAILURE);
  117. }
  118. char name [15];
  119. char stoimost[15];
  120. char min [15];
  121. char max [15];
  122. for (int i=0; i<n; i++)
  123. {
  124. cout << "Название игрушки - "; cin >>name;
  125. fputs (name,f);
  126. fputs ("\n",f);
  127. cout << "Стоимость - "; cin >> stoimost;
  128. fputs (stoimost,f);
  129. fputs ("\n",f);
  130. cout << "Минимальный возраст - "; cin >> min;
  131. fputs (min,f);
  132. fputs ("\n",f);
  133. cout << "Максимальный возраст - "; cin >> max;
  134. fputs (max,f);
  135. fputs ("\n",f);
  136. }
  137. fclose(f);
  138. f=fopen ("text.txt", "r");
  139. if (f== NULL)
  140. {
  141. cout << "Oschibka otkritiya faila dlya chteniya" << endl;
  142. exit(EXIT_FAILURE);
  143. }
  144. int st=0;
  145. for (int i=0;i<n;i++)
  146. {
  147. fgets(name,15,f);
  148. OemToAnsi (name,name);
  149. fgets(stoimost,15,f);
  150. int stoimost1 = atoi(stoimost);
  151. if(stoimost1>st)
  152. stoimost1=st;
  153. }
  154. fclose(f);
  155. f=fopen ("text.txt", "r");
  156. if (f== NULL)
  157. {
  158. cout << "Oschibka otkritiya faila dlya chteniya" << endl;
  159. exit(EXIT_FAILURE);
  160. }
  161. for (int i=0; i<n; i++)
  162. {
  163. fgets(name,15,f);
  164. OemToAnsi (name,name);
  165. fgets(stoimost,15,f);
  166. int stoimost1 = atoi(stoimost);
  167. if (stoimost1 >= st-100)
  168. cout << name << endl;
  169. }
  170. fclose(f);
  171. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement