Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Подстроки и подпрограммы. Помогите.

Автор: chicher 24.12.2003 21:20

Всем привет! Я - несчастный студент перед сессией. Паскаль знаю на уровне не выше среднего. А злая преподша подкинула задачку. Помогите, я не могу!
 
Оформить в виде подпрограмм следующие задания, причём ввод-вывод осуществялется из главной программы:
1. Для каждой введёной строки выделить и напечатать подстроки, разделённые одним или несколькими арифметическими знаками. Пустые строки не выделять и не печатать.
2. Среди выделенных подстрок найти подстроку, заканчивающуюся наибольшим числом русских букв. При условии нескольких подстрок, удовлетворяющих условию максимума, выбрать первую из них.
3. Если подстрока найдена, то вставить 3 звёздочки после первой цифры. Если символы отсутсвуют в строке, то оставить её без изменений.
 
Я даже не всё понял. Заранее благодарен!!!

Автор: chicher 25.12.2003 14:23

Помогите хоть по кусочкам сделать! Погибаю!

Автор: trminator 25.12.2003 15:05

выделение подстрок. Запихивает их в массив a

Код

const signs: set of char = ['+','-'];
var a: array[1..10] of string[20];

procedure make_list(var s: string);
var i, j, n: integer;
begin i:=1; j:=1; n:=length(s);
   while i < n do
   begin
       while (s[i] in signs)and(i<=n) do inc(i);
       while (not (s[i] in signs))and(i<=n) do
       begin
           a[j]:=a[j]+s[i]; inc(i)
       end;
       inc(j)
   end;
end;