Ввести фамилию, имя и отчество, как одно данное типа строка. определить длину строки и количество гласных в нем. вывести третье слово и количество букв в фамилии.
Const Gl=['А','Е','Ё','И','О','У','Ы','Э','Ю','Я', 'а','е','ё','и','о','у','ы','э','ю','я']; var s,fam,otch:string; i,j,n,nGl:integer; begin Writeln('Введите через один пробел фамилию, имя и отчество'); Readln(s); fam:=''; i:=1; n:=Length(s); repeat fam:=fam+s[i]; i:=i+1 until s[i]=' '; otch:=''; j:=n; repeat otch:=s[j]+otch; j:=j-1 until s[j]=' '; { im:=Copy(s,i+1,j-i-1); так можно получить имя } nGl:=0; for i:=1 to n do if s[i] in Gl then nGl:=nGl+1; Writeln('Длина введенной строки в символах равна ',n); Writeln('Количество гласных букв в строке равно ',nGl); Writeln('Введено отчество: ',otch); Writeln('Количество букв в фамилии равно ',Length(fam)) end.
Тестовое решение: Введите через один пробел фамилию, имя и отчество Иванов Петр Сергеевич Длина введенной строки в символах равна 21 Количество гласных букв в строке равно 8 Введено отчество: Сергеевич Количество букв в фамилии равно 6
Gl=['А','Е','Ё','И','О','У','Ы','Э','Ю','Я',
'а','е','ё','и','о','у','ы','э','ю','я'];
var
s,fam,otch:string;
i,j,n,nGl:integer;
begin
Writeln('Введите через один пробел фамилию, имя и отчество');
Readln(s);
fam:=''; i:=1; n:=Length(s);
repeat
fam:=fam+s[i]; i:=i+1
until s[i]=' ';
otch:=''; j:=n;
repeat
otch:=s[j]+otch; j:=j-1
until s[j]=' ';
{ im:=Copy(s,i+1,j-i-1); так можно получить имя }
nGl:=0;
for i:=1 to n do
if s[i] in Gl then nGl:=nGl+1;
Writeln('Длина введенной строки в символах равна ',n);
Writeln('Количество гласных букв в строке равно ',nGl);
Writeln('Введено отчество: ',otch);
Writeln('Количество букв в фамилии равно ',Length(fam))
end.
Тестовое решение:
Введите через один пробел фамилию, имя и отчество
Иванов Петр Сергеевич
Длина введенной строки в символах равна 21
Количество гласных букв в строке равно 8
Введено отчество: Сергеевич
Количество букв в фамилии равно 6