Как сформировать перечисление через запятую и точку в конце?

Мне нужно в конце вывода, после последнего символа, писать точку в конце. Например:

Вывод, который меня сейчас:

а, а, у, ю,

А я хочу так:

а, а, у, ю.

Как это можно сделать?

Код:

{uses crt;}
var
  b,s: string;
  q,i: integer;
begin
  b := ('аеёиоуыэюя');
  writeln('введите текст с точкой в конце');
  read(s);
  for i := 1 to 10 do begin
    q := 0;
    repeat
      q := q+1;
      if s[q] = b[i] then
        write(b[i], ', ');
    until s[q] = ('.');
  end;
end.

Ответы (2 шт):

Автор решения: Sergey Tatarincev

не вдаваясь в детали. first - указывает что это первый выводимый символ и запятую перед ним не надо. Ну а точку уже в самом конце

{uses crt;}
var b,s:string;
var q,i:integer;
var first:boolean;
begin
b:=('аеёиоуыэюя');
writeln('введите текст с точкой в конце');
read(s);
for i:=1 to 10 do begin
q:=0;
first:=true;
repeat
q:=q+1;
if s[q]=b[i] then begin
 if not first then write(', ');
 write(b[i]);
 first:=false;
end;
until s[q]=('.');
end;
write('.');
end.
→ Ссылка
Автор решения: Shilgen

Проверяй: ( но цикл for мне не нравится твой)

 {uses crt;}
    var b,s:string;
    var q,i:integer;
    begin
  b := ('аеёиоуыэюя');
 writeln('введите текст с точкой в конце');
read(s);

for i:=1 to 10 do 
begin
q:=0;
repeat
q:=q+1;
if i<10 then
       begin
           if s[q]=b[i] then
               write(b[i], ', ');
       end
   else 
       begin
          if s[q]=b[i] then 
             write(b[i], '. ');
   end
   until s[q]=('.');
end;
end.
→ Ссылка