2. Дан текстовый файл. Напишите программу, в которой считывается информация построчно и вызывается функция, подсчитывающая колич
2. Дан текстовый файл. Напишите программу, в которой считывается информация построчно и вызывается функция, подсчитывающая количество слов в строке, которые совпадают с первым словом.
<em>// PascalABC.NET 3.2, сборка 1488 от 21.06.2017</em> <em>// Внимание! Если программа не работает, обновите версию!</em>
function LexRepeat(Self:string):(string,integer); extensionmethod; begin Writeln(Self); var aw:=Self.MatchValues('\b\w+\b').ToArray; if aw.Count>1 then Result:=(aw[0],aw[1:].Where(w->LowerCase(w)=LowerCase(aw[0])).Count) else Result:=(aw[0],0) end;
begin ReadLines('Pushkin2.txt').Select(s->s.LexRepeat) .Where(x->x[1]>0).Foreach(x->Writeln('*** ',x[0],' - ',x[1]+1,' ***')) end.
<u>Пример работы программы</u>
Александр Пушкин К*** Я помню чудное мгновенье: Передо мной явилась ты, Как мимолетное виденье, Как гений чистой красоты. В томленьях грусти безнадежной, В тревогах шумной суеты, Звучал мне долго голос нежный И снились милые черты. Шли годы. Бурь порыв мятежный Рассеял прежние мечты, И я забыл твой голос нежный, Твои небесные черты. В глуши, во мраке заточенья Тянулись тихо дни мои Без божества, без вдохновенья, *** Без - 2 *** Без слез, без жизни, без любви. *** Без - 3 *** Душе настало пробужденье: И вот опять явилась ты, Как мимолетное виденье, Как гений чистой красоты. И сердце бьется в упоенье, И для него воскресли вновь И божество, и вдохновенье, *** И - 2 *** И жизнь, и слезы, и любовь. *** И - 3 ***
Uses crt; var a=array[1..10] of integer; i:integer; begin randomize; for i:=1 to 10 do begin a[i]:=random(50); if (a[i]mod5=0) there a[i]:=a[i]*2; else a[i]:=a[i]/2; for i:=1 to 10 do writeln(a[i]); end.
Const n=5; //размер массива var a:array[1..n] of integer; i,xmax:intger; begin for i:=1 to n do begin a[i]:=random(10); //заполняем массив случайными числами от 1 до 10 write(a[i]); // выводим массив end; xmax:=a[1]; for i:=1 to n do begin if a[i]>xmax then xmax:=a[i] end; for i:=1 to n do a[i]:=xmax; writeln('Конечный массив:'); for i:=1 to n do write(a[i]); end.
1. var a:array[1..100] of integer; n,i:integer; begin write('N = ');readln(n); writeln('Полученный массив:'); for i:=1 to n do a[i]:=2*i-1; for i:=1 to n do write(a[i]:3); writeln; end.
Пример: N = 5 Полученный массив: 1 3 5 7 9
2. const n=15; var a:array[1..n] of integer; k,i:integer; begin Randomize; writeln('Массив A:'); for i:=1 to n do begin a[i]:=random(21); write(a[i]:3); end; writeln; write('K = '); readln(k); for i:=1 to n div k do write(a[i*k]:3); writeln; end.