![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() |
Morfey85 |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
Написал подпрограму, рамотает так как надо но как только ставлю ее процедурой выводит кое что лишенее. Немогу понять почему
![]() Объясните в чем причина плиз... Код uses crt; {Procedure ShowRec;} var A:array[0..20,0..10] of char; fi:text; x,y,j:word; ch:char; begin {ShowRec} clrscr; x:=0;y:=0; assign(fi,'rec.txt'); {$I-} reset(fi); {$I+} repeat read(fi,ch); A[x,y]:=ch; inc(x); if x=20 then begin inc(y); x:=0; end; until eof(fi); while y<>10 do begin A[x,y]:=' '; inc(x); if x=20 then begin inc(y); x:=0; end; end; j:=1; for y:=0 to 9 do begin Write(j,'. ');inc(j); for x:=0 to 20 do begin write(A[x,y]); end; writeln; end; end. {ShowRec} { begin ShowRec; end.} в файле rec.txt находится следущий текст: Morfey___________123Scorp____________103Zorg______________98Den_________________ __68 Сообщение отредактировано: Morfey85 - 9.04.2006 14:04 |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата(Morfey85 @ 9.04.2006 14:00) Объясните в чем причина плиз... Все просто: в случае, когда ты работаешь БЕЗ процедуры, у тебя все переменные являются ГЛОБАЛЬНЫМИ. А глобальные переменные компилятор обнуляет... Как только ты оформляешь процедуру - переменные становятся ЛОКАЛЬНЫМИ. Компилятор с ними ничего сделать не может, ибо во время компиляции их просто не существует - память под них выделяется в стеке во время выполнения программы, когда управление передается процедуре. И, естественно, в переменных находится мусор. Все переменные, кроме A ты обнуляешь? Обнуляй и массив тоже: Procedure ShowRec; |
Morfey85 |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
Спасибо. Помогло.
|
![]() ![]() |
![]() |
Текстовая версия | 19.07.2025 3:42 |