Помощь - Поиск - Пользователи - Календарь
Полная версия: не пойму почему выводятся непонятные знаки...
Форум «Всё о Паскале» > 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)) например.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.