Guest User

Untitled

a guest
Jun 23rd, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. //Чтение файла
  2. int size; char *fileData;
  3. ifstream file("big.txt", ios::binary);
  4. file.seekg(0, ios::end);
  5. size = file.tellg();
  6. file.seekg(0, ios::beg);
  7.  
  8. fileData = new char[size + 1];
  9.  
  10. file.read(fileData, size);
  11. fileData[size] = 0;
  12. file.close();
  13. //cout << fileData << endl;
  14.  
  15. //Остаток от деления на количество файлов
  16. int ost = size % 20;
  17. cout << ost << endl;
  18.  
  19. //Целая часть
  20. int col = (size - ost) / 20;
  21. cout << col << endl;
  22.  
  23. char **Pack = new char*[20]; //Выделяем память под количество строк
  24. for (int i = 0; i<20; i++) Pack[i] = new char[size];
  25.  
  26. for (int i = 0; i<20; i++){
  27. strcpy(Pack[i] - col*i, fileData);
  28. cout << Pack[i] << endl << endl << endl;
  29. //printf("string - %s",pack[0]);
  30. }
  31.  
  32. for (int i = 0; i < 20; i++) {
  33. delete[]Pack[i];
  34. }
  35. delete[]Pack;
  36.  
  37. for (int i = 0; i<20; i++) {
  38. strcpy(Pack[i] - col*i, fileData);
  39.  
  40. char longStr[] = "vbjhghjacvskv sdghjv sdghsdcv "
  41. "sdfhvghvdfghvsfdhgvksuygrugfqgawg q4ut6r7843"
  42. " grygfuyqwg gxegfuyegwdg fxkugsygwkxgywgryxg"
  43. "jakysgqgxcfasgsdfhjkahshchhcgashgsdfggsksgjs";
  44.  
  45. int main()
  46. {
  47. const int partCount = 20;
  48. const int strLength = strlen(longStr);
  49. int partSize = (strLength+partCount-1) / partCount;
  50.  
  51. char **Pack = new char*[partCount];
  52. for(int i = 0; i < partCount; ++i)
  53. {
  54. Pack[i] = new char[partSize+1];
  55. strncpy(Pack[i],longStr+partSize*i,partSize);
  56. Pack[i][partSize] = 0;
  57. }
  58.  
  59. for(int i = 0; i < partCount; ++i)
  60. {
  61. cout << "Part " << setw(2) << i << ": " << Pack[i] << endl;
  62. }
  63.  
  64.  
  65. for(int i = 0; i < partCount; ++i)
  66. {
  67. delete[] Pack[i];
  68. }
  69. delete[] Pack;
  70.  
  71. }
Add Comment
Please, Sign In to add comment