• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Входной информацией является строка - последовательность слов, разделенных пробелами

Darik102rus

Ученик
Регистрация
26 Апр 2013
Сообщения
11
Реакции
0
Баллы
0
Входной информацией является строка - последовательность слов, разделенных пробелами

Входной информацией является строка - последовательность слов,разделенных пробелами.
Вывести слова,которые встречаются в строке менее трех раз.
Помогите решить)
 
Входной информацией является строка - последовательность слов,разделенных пробелами.
Вывести слова,которые встречаются в строке менее трех раз.
Помогите решить)
Уж не знаю, как это прожуёт Ваш Pascal ABC.NET (у меня-то нормальный Free Pascal), но вот:
Код:
var
 S:string;
 i,j,N,m: integer;
 W:Array[1..255] of String;
 Q:Set of byte;
begin
 writeln('Enter the string: ');
 readln(S);
 N:=1;
 i:=1;
 Repeat
  While (S[i]=' ') and (i<Length(S)) do Inc(i);
  W[N]:='';
  While (S[i]<>' ') and (i<=Length(S)) do
   begin
    W[N]:=W[N]+S[i];
    Inc(i);
   end;
  If i<Length(S) then Inc(N);
 Until i>=Length(S);
 Q:=[];
 For i:=1 to N do
  begin
   If Not(i in Q) then
    begin
     Q:=Q+[i];
     m:=0;
     for j:=i to N do
      if W[i]=W[j] then
       begin
        Q:=Q+[j];
        Inc(m);
       end;
     If m<3 then write(W[i]+' ');
    end;
  end;
 Readln
End.
 
Уж не знаю, как это прожуёт Ваш Pascal ABC.NET (у меня-то нормальный Free Pascal), но вот:
Код:
var
 S:string;
 i,j,N,m: integer;
 W:Array[1..255] of String;
 Q:Set of byte;
begin
 writeln('Enter the string: ');
 readln(S);
 N:=1;
 i:=1;
 Repeat
  While (S[i]=' ') and (i<Length(S)) do Inc(i);
  W[N]:='';
  While (S[i]<>' ') and (i<=Length(S)) do
   begin
    W[N]:=W[N]+S[i];
    Inc(i);
   end;
  If i<Length(S) then Inc(N);
 Until i>=Length(S);
 Q:=[];
 For i:=1 to N do
  begin
   If Not(i in Q) then
    begin
     Q:=Q+[i];
     m:=0;
     for j:=i to N do
      if W[i]=W[j] then
       begin
        Q:=Q+[j];
        Inc(m);
       end;
     If m<3 then write(W[i]+' ');
    end;
  end;
 Readln
End.
Спасибо большое)
 
Назад
Сверху