|
|
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Помогите пожалуйста бедному студенту! У меня есть программа, но её нужно доработать, а конкретнее сделать так, чтобы таблица сохранялось и загружалось, там есть алгоритм ввода и вывода, но чего то не пашет, добавьте пожалуйста то, чего не хватает (там чего то не получается, где то цикл замыкается, если сможете, исправьте plz), а иначе скоро будет ещё одна жертва науки =) З.Ы. программа выполнена в C++ Код: 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. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2005, 21:47 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
FeanorЗдравствуйте! Помогите пожалуйста бедному студенту! У меня есть программа, но её нужно доработать, а конкретнее сделать так, чтобы таблица сохранялось и загружалось, там есть алгоритм ввода и вывода, но чего то не пашет, добавьте пожалуйста то, чего не хватает (там чего то не получается, где то цикл замыкается, если сможете, исправьте plz), а иначе скоро будет ещё одна жертва науки =) З.Ы. программа выполнена в C++ На первый, очень поверхностный взгляд, не хватает отработки пунктов меню 6 и 7 (Save и Load)... А еще у меня такой вопрос: вот Вы говорите, что цикл "где-то затыкается"... А отладчиком (и пошаговым выполнением программы) Вы, уважаемый, пользовались чтобы определить где именно цикл затыкается и какие при этом значения принимают переменные?... Такое ощущение, что программа написана кем-то (не Вами однозначно!) "на коленке" за 15 минут, не отлаживалась... И у Вас есть тысяча "объективных причин", чтобы самому этого (отладки, доводки кода "до ума", чтения книжек и поиска ответов в них) не делать... И поручить это неблагодарное "лохам" с форума... Может быть, наоборот, это и хорошо, что будет еще одна подобная "жертва науки", которая потом не будет позорить светлое имя "Программиста" ... "Нам такой хоккей не нужен..." (не моё) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 06:37 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Вот, где она замыкается (switch (key): Код: plaintext 1. 2. Да,и Я не считаю людей на форуме, с вашего позволения, лохами, а прошу лишь помочь т.к. Я в этом деле диллтант, и программистом становиться не собираюсь (пока что). А если не хотите помочь, так к чему писать такие речи, ибо Я и сам знал, что сохранение и загрузка не доделанны, и именно поэтому решил попросить грамотных людей помочь мне. Прошу помочь, ведь это не трудно для Вас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2005, 11:27 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Уважаемые Титаны написания программ, взываю к Вам!!! Помогите же Бедолаге!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2005, 18:17 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Feanor wrote: > Уважаемые Титаны написания программ, взываю к Вам!!! > Помогите же Бедолаге!!! Без обид, но Вы -- лодырь и бездельник! Код: 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. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. throw и try - catch и не нужно ли их добавить где-то еще ??? Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2005, 19:36 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
авторВопрос лентяю на засыпку - почему я выкинул <conio.h> и зачем написал throw и try - catch и не нужно ли их добавить где-то еще ??? Во первых, ОГРОМНОЕ СПАСИБО!!!!!! А теперь постараюсь дать свои диллетантские ответы на эти вопросы: авторпочему я выкинул <conio.h> Скорее всего из-за простой ненадобности этой библиотеки. авторthrow и try - catch и не нужно ли их добавить где-то еще ??? throw и try - catch Итак, если условие не выполняется, то throw, т.е. выкидываем, а если выполняется, то try - catch , т.е. если выполняется, то отлавливаем. Где нужно ещё, пока не пойму =) Ну как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2005, 23:33 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Feanor wrote: > ... выкинул <conio.h> > Скорее всего из-за простой ненадобности этой библиотеки. > Почти угадал, не нужна она мне в GCC (да и нет ее там) :) > > throw и try - catch > Итак, если условие не выполняется, то throw, т.е. выкидываем, а если > выполняется, то try - catch , т.е. если выполняется, то отлавливаем. > Где нужно ещё, пока не пойму =) A почему именно такая проверка условий, зачем нужна, и не нужно ли это в load? :) Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2005, 10:20 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
авторA почему именно такая проверка условий, зачем нужна, и не нужно ли это в load? :) Думаю, что в Load эта проверка не нужна, т.к. проходит выше. Код: plaintext 1. Т.к. если if yt good, т.е. когда не не введённое, то выбрасываем, пишем, что неудача и, неправильный формат, Я запутался... if выполняется всегда, когда число истина, т.е. не ноль...это Я знаю =) А что за оператор :: извиняюсь за такой вопрос, что такое fos и fis =) Если не трудно, напиши пожалуйста комментарии к сохранению, а особенно, к загрузке, Я туго пока в этом разбираюсь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2005, 10:56 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Студент, неужели в библиотеке нет учебников по C++ ??? Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2005, 11:06 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Есть =( Ну Я хоть часть правильно ответил? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2005, 11:37 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2005, 12:27 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
авторn = max_count<n ? max_count : n; Почему сдесь : а не :: Таков синтаксис тернарного оператора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2005, 14:13 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
авторТаков синтаксис тернарного оператора. Спасибо, теперь буду знать. =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2005, 15:00 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Товарищи!!! Проверьте пожалуйта эту прогу (желательно Borland С++ v1.3 или ), а то Я сегодня сумел бегло забежать в класс информатики (а нас туда теперь только к экзамену пустят) и мне высветилось 7 ошибок, в их природе не успел разобраться, Я не вру, действительно нас оттуда гонят, а у меня на компе эта версия глюканая. Проверьте пожалуйста, кто сможет, у себя, действительно надо =) Код: 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. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2005, 18:33 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Вот готовый код я там просто for поцитировал #pragma argsused #include<conio.h> #include<iostream.h> #include<stdlib.h> #include<iomanip.h> #include<fstream.h> struct stud { char Name[20],Tel[10]; int Age; int Sex; }; char*fname() {char*s=new char[40]; cout<<"Enter FileName:"; cin>>s;return s;} void save (fstream&x, stud y) { x<<y.Age<<' '<<y.Sex<<' ';} void save (char fn[], stud x[], int n) {int i; fstream f; f.open (fn, ios::out); f<<n<<' '; for (i=0;i<n;i++) save (f, x );f.close();} void load (fstream&x, stud&y){x>>y.Age>>y.Sex>>y.Tel;} void load (char fn[], stud x[], int&n) {int i;fstream f; f.open (fn, ios::in); f>>n; for (i=0; i<n;i++) load(f,x); f.close();} void input (stud&record) { cout<<"input Name:";cin>>record.Name; cout<<"input Age:";cin>>record.Age; cout<<"input Sex:"; cin>>record.Sex; //record.Sex=(sex=='m'||sex=='M')?1:0;// ýòî ïðåïîäó íå ïîíðàâèëîñü è îí óáðàë cout<<"input Tel:";cin>>record.Tel; } void output(stud& record) { cout<<record.Name<<'\t'; cout<<record.Age<<'\t'; cout<<record.Sex<<'\t'; cout<<record.Tel<<endl; } void output_all(stud records[], int cout) { for (int i=0;i<cout;i++) output(records); } void the_tel(stud records[], int count) { char new_tel[3]; cout<<"new_tel="; cin>>new_tel; int flag=0; for (int i=0;i<count;i++) { flag=1; for (int j=0;j<3;j++) if (new_tel[j]!=records.Tel[j]) { flag=0; break; } if(flag) output(records); } } void the_name(stud records[], int count) { char new_bukva; cout<<"new_bukva="; cin>>new_bukva; for(int i=0;i<count; i++) { if(new_bukva==records.Name[1]) output(records); } } char menu() { char b; cout<<"1-new record"<<endl; cout<<"2-show all record"<<endl; cout<<"3-the_telefon"<<endl; cout<<"4-the_name"<<endl; cout<<"5-Exit"<<endl; cout<<"6-Save"<<endl; cout<<"7-Load"<<endl; cout<<"input:"; cin>>b; return b; } int main() { stud table[20]; int cur=0; char key=0; clrscr(); //for(;;)//здесь у тебя был цыкл я просто убрал его { key=menu(); clrscr(); switch (key) { case'1': if (cur<20) { input(table[cur]); cur++; } else cout<<"error:input max record"<<endl; break; case'2': output_all(table, cur); break; case'3': the_tel(table, cur); break; case'4': the_name(table, cur); break; case'5': return 0; } } } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2005, 21:53 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
+COOLВот готовый код я там просто for поцитировал //for(;;)//здесь у тебя был цыкл я просто убрал его А вот это не верно и крайне вредно... Так программа будет работать только один раз (отрабатывать один пункт меню), а надо, чтобы она работала до явного указания на выход... Так что, поторопились Вы, батенька... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2005, 06:21 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
FeanorТоварищи!!! Проверьте пожалуйта эту прогу (желательно Borland С++ v1.3 или ), а то Я сегодня сумел бегло забежать в класс информатики (а нас туда теперь только к экзамену пустят) и мне высветилось 7 ошибок, в их природе не успел разобраться, Я не вру, действительно нас оттуда гонят, а у меня на компе эта версия глюканая. Проверьте пожалуйста, кто сможет, у себя, действительно надо =) Так надо было сразу об этом сказать... Та программа, которая тебе тут дана, переписана, скорее всего, под VC++. Досовский С++ от Борланда не понимает инструкций try-catch-throw и из-за этого выдает тебе кучу ошибок... Кроме того, в той версии С++ нет базового класса ios_base, есть ios; но некоторые функции отличаются: например, в ДОСе у класса ios нет функции sync(), зато есть функция sync_with_stdio(); нет функции failure(), зато есть fail() и т.д. Это дает тебе остальные ошибки... В заключение - вот тебе работающий под Borland C++ 3.1 код (сильно не пинать: делал так, чтобы работало, а не так, чтобы было красиво...) : Код: 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. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2005, 07:32 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
Спасибо =))) Я правда кое-что не допонял, если не трудно, то поясните пожалуйста: 1. Что означает (!kbhit()) Код: plaintext 2. Тут непонятно что за "%s\t%d\t%c\t%s\r\n" т.е. ясно, что происходит вывод, но что такое scanf и вот это всё "%s\t%d\t%c\t%s\r\n" ???? Код: plaintext Код: plaintext 1. 2. 3. 4. 5. 6. 7. Ещё раз спасибо =)) Буду рад, если поясните это мне - неучу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2005, 13:49 |
|
||
|
Помогите довести до ума!!!
|
|||
|---|---|---|---|
|
#18+
FeanorСпасибо =))) Я правда кое-что не допонял, если не трудно, то поясните пожалуйста: 1. Что означает (!kbhit()) Код: plaintext 2. Тут непонятно что за "%s\t%d\t%c\t%s\r\n" т.е. ясно, что происходит вывод, но что такое scanf и вот это всё "%s\t%d\t%c\t%s\r\n" ???? Код: plaintext Код: plaintext 1. 2. 3. 4. 5. 6. 7. Ещё раз спасибо =)) Буду рад, если поясните это мне - неучу. 1. Дело в том, что я отказался в большинстве случаев от использования ввода-вывода через классы (почему-то именно из-за них наблюдался глюк при вводе информации) и использовал ввод-вывод в стиле С. Может быть не современно, зато работает стабильно... Итак: printf - функция форматного вывода информации на консоль; scanf - функция форматного считывания данных с консоли. Строка "%s\t%d\t%c\t%s\r\n" называется форматной строкой, где символы имеют следующие значения: %s - выводимый аргумент является строкой; \t - символ табуляции; %d - выводимый аргумент является числом и должен быть выведен в десятеричной системе счисления (если бы было %x, то число было бы выведено в шестнадцатиричном формате(хекс, hex)); %c - выводимый аргумент является единичным символом; \r\n - пара "возврат каретки-перевод строки" для перехода на новую строку 2. Конструкция while(!kbhit()); обозначает следующее: - ! - это логическое NOT (по русски говоря: НЕ) - функция kbhit() проверяет нажатие любой клавиши и возвращает некоторое значение, которое можно интерпретировать как TRUE или FALSE - while() - оператор цикла "пока" Итого получаем следующую интерпретацию представленной конструкции (говоря простым русским языком): "Пока НЕ нажата любая из клавиш" Да, кстати... Я тут более внимательно посмотрел на свое решение и решение от ХМ и щаметил одну ошибку . В функции the_name надо писать не: Код: plaintext 1. Код: plaintext 1. Это все написано в хелпе. Даже если у тебя сам Turbo C++ встал криво, то хелп-то по F1 должен работать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2005, 14:15 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33115395&tid=2033144]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
75ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 236ms |
| total: | 419ms |

| 0 / 0 |
