Дана строка в которой содержится осмысленной текстовое сообщение. слова сообщения разделяются пробелами и знаками препинания. вывести только те слова, которые встречаются более n раз.
Const n=50; { максимальное число различных слов в строке } del=[' ','.',',',': ','; ','-','! ','? ','/']; var mw: array[1..n] of string; { найденные слова } mk: array[1..n] of integer; { количество повторений слов } s,w: string; i,j,k,l,m: integer; skip,new_word: boolean; begin write('введите текст: '); readln(s); s: =s+' '; write('укажите предельное число повторений слова: '); read(k); l: =length(s); m: =0; skip: =(s[1] in del); if skip then w: ='' else w: =s[1]; for i: =2 to l do if s[i] in del then begin if not skip then begin { w содержит очередное найденное слово } j: =1; new_word: =true; while (j< =m) and new_word do begin if w=mw[j] then begin inc(mk[j]); new_word: =false end; inc(j) end; if new_word then begin inc(m); mw[m]: =w; mk[m]: =1 end; w: =''; skip: =true end end else if skip then begin w: =s[i]; skip: =false end else w: =w+s[i]; { фраза разобрана и проанализирована } j: =0; i: =1; while (i< =m) and (j=0) do begin if mk[i]> k then j: =i; inc(i) end; if j> 0 then begin writeln('слова, которые встретились больше, чем ',k,' раз: '); writeln(mw[j]); for i: =j+1 to m do if mk[i]> k then writeln(mw[i]); end else writeln('нет слов, которые встретились больше, чем ',k,' раз.') end. тестовое решение: введите текст: еду, еду в чистом поле; колокольчик дин-дин- страшно, страшно поневоле средь неведомых равнин! укажите предельное число повторений слова: 1 слова, которые встретились больше, чем 1 раз: еду дин страшно
Викторовна
20.11.2020
const z = 30; // максимально число слов var s,w : string; n,p,i,j,l : integer; words : array [1..z] of string; kw : array [1..z] of integer; r : boolean; begin writeln ('введите строку'); readln (s); writeln ('укажите кол-во повторений'); readln (n); l : = length(s); p : = 1; w : = ''; for i : = 1 to l do if (s[i] < > ' ') and (s[i] < > '.') and (s[i] < > ',') then w : = w + s[i] else begin for j : = 1 to p do if w = words[j] then begin kw[j] : = kw[j] +1; r : = true; end; if not r then begin p : = p +1; words[p] : = w; kw[p] : = kw[p] +1; end; w : = ''; r : = false; end; for i : = 1 to p do if kw[i] > n then writeln (words[i]); end.
saltikovaK.S.1482
20.11.2020
Program massiv; uses crt; const a: array[1..12] of byte=(1,3,2,3,0,9,4,5,6,7,8,2); var i: byte; b: array[1..12] of byte; begin clrscr; write('isxodnui massiv: '); for i: =1 to 12 do begin write(a[i]: 4); b[i]: =a[i]; end; writeln; write('novui massiv: '); for i: =1 to 12 do begin b[i]: = b[i]*4; write(b[i]: 4); end; readln; end.
Шитенков
20.11.2020
Число dcxli, записанное римскими цифрами, в десятичной системе счисления соответствует числу: d = 500, с = 100, xl = l - x = 50 - 10 = 40, i = 1 dcxli = 500 + 100 + 40 + 1 = 641 выберите те числа, в которых есть ошибка: 1902,25 (8) — ошибка, в восьмеричной системе нет цифры 9 12,21 (3) — ок a6,4 (12) — ок, a = 10 99,99 (9) — ошибка, в девятеричной системе нет цифры 9 алфавит восьмеричной системы счисления записывается так: {0,1,2,…,7} — для n-ичной системы счисления это цифры от 0 до n - 1. последовательность знаков числа 11011 (2) в десятичной системе счисления соответствует числу: 2^4 + 2^3 + 2^1 + 2^0 = 16 + 8 + 2 + 1 = 27 (10) переведите число 207 (8) в десятичную систему счисления. 207 (8) = 2 * 8^2 + 0 * 8^1 + 7 * 8^0 = 128 + 0 + 7 = 135 (10) переведите число 18 (10) в двоичную систему счисления. 18 (10) = 16 + 2 = 1 * 2^4 + 0 * 2^3 + 0 * 2^2 + 1 * 2^1 + 0 * 2^0 = 10010 (2) переведите число 75 (10) в шестнадцатеричную систему счисления. 75 (10) = 4 * 16 + 11 = 4b (16) греются на солнышке воробьи. на нижней ветке их было 110 (2), на верхней – на 2 (10) меньше. сколько всего было воробьев? 110 (2) = 2^2 + 2^1 = 5 — на первой ветке 5 - 2 = 3 — на второй ветке 5 + 3 = 8 — всего укажите основание х системы счисления, если известно, что 29 (10) = 38 (х). 38 (x) = 3 * x + 8 = 29 (10) 3x + 8 = 29 3x = 21 x = 7
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Дана строка в которой содержится осмысленной текстовое сообщение. слова сообщения разделяются пробелами и знаками препинания. вывести только те слова, которые встречаются более n раз.