Паскаль. Строки.

Тема в разделе "Pascal and Delphi", создана пользователем MonEnnemi, 6 янв 2010.

  1. MonEnnemi

    MonEnnemi Гость

    Очень нужна помощь в строках)

    Есть задание:
    Удалить в строке слова, которые встречаются в ней указанное число раз.

    При этом такой вариант написания программы не подходит, потому что сравнивает слова поэлементно:

    Код (Text):
    program stroka;
    uses crt;
    var a:string;
    b:array[1..60]of string;
    i,k,n,t,m,j:byte;
    begin
    clrscr;
    writeln('vvedite stroku');
    readln(a);
    writeln('vvedite chislo');
    readln(n);
    a:=' '+a+' ';
    for i:=1 to length(a) do
    if a[i]=' 'then inc(k)else b[k]:=b[k]+a[i];
    for i:=1 to k do
    begin
    m:=0;
    for j:=1 to k do
    if b[i]=b[j] then inc(m);
    if m=n then
    begin
    for t:=length(a)downto 1 do
    if copy(a,t,length(b[i])+2)=' '+b[i]+' ' then delete(a,t,length(b[i])+1);
    end;
    end;
    writeln(a);
    readln;
    end.
    Помогите, пожалуйста)
     
  2. isqoff

    isqoff Гость

    прикольное задание...Поэлементно и не получиться , т.к. работаем со словами...(скорее проверять по "словно") :newconfus:)
     
Загрузка...

Поделиться этой страницей