|
|
|
Проблемы со считыванием из файла
|
|||
|---|---|---|---|
|
#18+
Ребята, помогите - торможу дня 4: /* Задача № 12 - Часть 1 Необходимо сформировать динамический список из N случайных элементов из интервала [A..B]. Все неизвестные величины задаются в отдельном файле. */ //--------------------- ПОДКЛЮЧЕНИЕ БИБЛИОТЕК----------------------------------- #include<iostream.h> #include<conio.h> #include<stdio.h> #include<stdlib.h> #include<string.h> #include<fstream.h> //------------------------ОБЪЯВЛЕНИЕ СТРУКТУРЫ---------------------------------- struct node{ char val[40]; node *next; }; //----------------------ПРОЦЕДУРА СОЗДАНИЯ СПИСКА------------------------------- void makesp(node *A) { node *cur=A; ifstream in("in12_1.txt", ios::in); if (in.fail()) cerr << "Файл не удалось открыть" << endl; else { int n, k=0, i, el; char nm[40]; char c; in>>n; cout<<"n="<<n<<endl; while (in.get(c) ) if (c=='[') { streampos pos=in.tellg(); randomize(); for (el=0; el<n; el++) { i=1+rand()%5; cout<<i<<endl; if (i==1) in>>nm; in.seekg(pos); if (i>1) while (in.get(c) ) if (c==' ') { k++; if (k==i-1) in>>nm; in.clear(); } in.seekg(pos); if (nm[strlen(nm)-1]==']') nm[strlen(nm)-1]=0; cout<<nm<<endl; } } strcpy(cur->val,nm); { node *Tmp = new node; Tmp -> next=0; cur -> next=Tmp; strcpy(Tmp->val,nm); cur=Tmp; } } in.close(); } void print(node *A) { ofstream out("in12_2.txt"); while (A!=0) { out<<A->val<<endl; A=A->next; } out.close(); } void main() { clrscr(); node *Head=new node; makesp(Head); print(Head); cout<<"Spasibo \nPress any key"; getch(); } указатель почему то если I>1 остается на предыдущем считываемом элементе - что-то с циклом не то ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2005, 13:09 |
|
||
|
Проблемы со считыванием из файла
|
|||
|---|---|---|---|
|
#18+
Надо не тупить, а в отладчике пройти по шагам прогу, отсматривая в окне Watch текущие значения переменных. И тогда сразу все станет ясно с циклом и со всем другим. Грамотное использование дебаггера -- основной навык. ________________________________________________________ Глюк - это высокоорганизованная система не поддающихся определению частиц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2005, 20:40 |
|
||
|
Проблемы со считыванием из файла
|
|||
|---|---|---|---|
|
#18+
Учебный год начался, студенты повалили... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2005, 10:36 |
|
||
|
Проблемы со считыванием из файла
|
|||
|---|---|---|---|
|
#18+
Проблема была не в цикле. хотя он то же хромает...проблема в том что после ЕОF надо было поток очистить, while на второй итерации читал конец файла и цикл не возобновлялся... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2005, 14:51 |
|
||
|
Проблемы со считыванием из файла
|
|||
|---|---|---|---|
|
#18+
Вообщем получилось это (может СТУДЕНТАМ поможет): Код: plaintext 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. Smirnov Iwanov Fedorov Smirnov Fedorov (Yh2(Yh2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2005, 01:11 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=390&tid=2032694]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 239ms |
| total: | 361ms |

| 0 / 0 |
