// PascalABC.NET 3.1, сборка 1219 от 16.04.2016 begin var s:=ReadlnString('>'); var delims:=' ,:;!?'.ToCharArray; // разделители var a:=s.ToWords(delims).JoinIntoString; // очистка от мусора var aw:=a.MatchValues('([A-Za-zА-Яа-яЁё])+').ToArray; var ad:=a.MatchValues('([-\d.])+').ToArray; Print('Слова:'); aw.Println; Print('Самое длинное слово:'); var ind:=aw.Select(x->x.Length).ToArray.IndexMax; Println(aw[ind]); var m:=aw[ind].Length; // самая большая длина слова aw:=aw.Select(x->x.PadRight(m)).ToArray; Print('Числа:'); ad.Println; Print('Самое длинное число:'); Println(ad[ad.Select(x->x.Length).ToArray.IndexMax]); for var j:=1 to m do begin for var i:=0 to aw.Length-1 do Print(aw[i][j]); Writeln end; end.
Тестовое решение: > Длина составляет 1.2 метра; ширина 0.93 метра! Слова: Длина составляет метра ширина метра Самое длинное слово: составляет Числа: 1.2 0.93 Самое длинное число: 0.93 Д с м ш м л о е и е и с т р т н т р и р а а а н а в а л я е т
Из-за того, что тут используется пропорциональный шрифт, нарушено взаимное расположение символов на выводе. Истинная картина дана во вложении.
2. а) Поставить курсор в начало фрагмента текста, удерживая клавишу Shift, подвести указатель мыши в конец фрагмента и щелкнуть кнопкой мыши.
б) Поставить указатель мыши в начало фрагмента текста, нажать кнопку мыши и, не отпуская ее, протянуть указатель до конца фрагмента.
в) Поставить курсор в начало фрагмента текста, удерживая клавишу Shift, нажать одну из клавиш со стрелками.
3. внешнего вида (шрифт, выравнивание, начертание и т.д.)
4. содержания (ошибки, опечатки, добавление и удаление текста и т.д.)
5. по левому краю, по центру, по правому краю, по ширине страницы