Помощь - Поиск - Пользователи - Календарь
Полная версия: не пойму почему выводятся непонятные знаки...
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
priboltik
вот текст программы:
program h98789;
uses crt;
var
stroka:string;
simvol:char;
l,k,j,kol_space,i:integer;
is_char,is_simv:boolean;
begin
clrscr;
kol_space:=0;
writeln('Vvedite stroky');
readln(stroka);
writeln('Vvedite neobhodimii simvol');
readln(simvol);
for i:=1 to length(stroka) do
begin
if stroka[i]=' ' then
begin
j:=i+1;
k:=i+1;
inc(kol_space);
is_char:=false;
is_simv:=false;
while (stroka[j]<>' ')and(stroka[j]<>#13) do
begin
if stroka[j]=simvol then
is_char:=true;
if stroka[j] in ['0'..'9','.',',','!','"',':',';'] then
is_simv:=true;
inc(j);
end;
if (is_char=true)and(is_simv=true) then
begin
for l:=k to j do
write(stroka[l]);
writeln(' - iskomaya stroka');
end;
end;
end;
writeln(kol_space+1,' slov v dannoi stroke');
readln;
readln;
end.



вместо нужных строк он мне выводит какие-то символы..подскажите что к чему..??

задание: Подсчитать общее количество слов последовательности и напе-
чатать слова, содеpжащие указанный символ и хотя бы один знак.
Ozzя
Кнопочки F7,F8 не пробовал нажимать?
Malice
Цитата(priboltik @ 4.06.2007 13:57) *

...(stroka[j]<>#13) do

не будет после ввода строки через readln в конце этого символа, если только ты сам его туда специально не добавишь. Условие надо поменять на (j<length(stroka)) например.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.