![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() |
Shults99 |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 48 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вопрос - почему операторы while и do не исполняют программу с вложенным файлом с помощью директивы {$I <имя файла>}
Программа после введения строки S1 и длины L выдает строку S1 длиной L, а далее пробелы. Не может же Паскаль просто запрещать исполнение лишних операторов! Или такая маленькая глубина? - но не похоже. Вот работающая прога program prog24;
var
S1:string;
Y,i,L:integer;
{$I c:\prog23a}
begin
RightBlank(S1);
end.
и вложенный файл function RightBlank(S1:string):integer;
var
{S1:string;}
i,L:integer;
begin
Writeln('Vvedite stroku S1');
readln(S1);
Writeln('Vvedite dlinu stroki L ( chislo do 20)');
readln(L);
{ while i<L}
{do} for i:=1 to L
do Write(S1[i]);
readln;
end;
Вот файл, с которым программа не работает
function RightBlank(S1:string):integer;
var
i,L:integer;
begin
Writeln('Vvedite stroku S1');
readln(S1);
Writeln('Vvedite dlinu stroki L ( chislo do 20)');
readln(L);
while i<L
do for i:=1 to L
do Write(S1[i]);
readln;
end;
Сообщение отредактировано: Shults99 - 21.09.2005 18:33 -------------------- |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
![]() while i<L do
for i:=1 to L do
Write(S1[i]);
Ты уверен, что перед While у тебя i < L? Я - нет... Поэтому и не отрабатывает цикл... |
![]() ![]() |
![]() |
Текстовая версия | 29.07.2025 10:11 |