var s: string; f: array[1..10] of boolean; i, m: integer;
begin Write('Введите фразу: '); Readln(s); m := Pos(' ', s); if m = 0 then Writeln('В строке отсутствуют пробелы') else begin for i := 1 to 10 do f[i] := False; for i := m + 1 to length(s) do case s[i] of 'А', 'а': f[1] := True; 'Е', 'е': f[2] := True; 'Ё', 'ё': f[3] := True; 'И', 'и': f[4] := True; 'О', 'о': f[5] := True; 'У', 'у': f[6] := True; 'Ы', 'ы': f[7] := True; 'Э', 'э': f[8] := True; 'Ю', 'ю': f[9] := True; 'Я', 'я': f[10] := True end; Write('Найдены гласные: '); for i := 1 to 10 do if f[i] then Write(gl[i], ' '); Writeln end end.
Тестовое решение: Введите фразу: Это проверочная фраза "Мама мыла раму". Конец теста. Найдены гласные: а е о у ы я
В Pascal.ABC можно написать и короче: const gl = 'аеёиоуыэюя';
var s: string; f: array[1..10] of boolean; i, m, p: integer;
begin Write('Введите фразу: '); Readln(s); m := Pos(' ', s); if m = 0 then Writeln('В строке отсутствуют пробелы') else begin for i := 1 to 10 do f[i] := False; s := LowerCase(s); { перекодировать к нижнему регистру } for i := m + 1 to length(s) do begin p := Pos(s[i], gl); if p > 0 then f[p] := True end; Write('Найдены гласные: '); for i := 1 to 10 do if f[i] then Write(gl[i], ' '); Writeln end end.
После смерти александра i, междуцарствия и жестокой расправы над восставшими декабристами на российский престол вступил брат александра николай i. личность николая i неоднозначно оценивалась как современниками, так и последующими . самые убийственные характеристики исходили от представителей современного ему революционного направления, с которым он на протяжении всей своей жизни вел непримиримую борьбу. они писали о нем как о крайне ограниченном монархе, жестоком деспоте и тиране. приближенные, наоборот, восхищались его личными качествами - необыкновенной работоспособностью, порядочностью, скромностью в быту. николая специально не готовили к такой огромной империей, как россия. в молодости он не получил достаточного серьезного образования. его интересовало, прежде всего, военное дело. однако нужно отметить, что его природный ум, железная воля, любовь к дисциплине давали ему возможность достаточно эффективно государством. правление николая i справедливо считается одним из самых реакционных периодов нашей . он прославился бескомпромиссной борьбой с революционными, демократическими движениями не только в россии, но и в европе. осуществляя свой внутриполитический курс, николай i вынужден был учитывать, что в россии продолжало зреть недовольство крестьян своим положением, выражаясь в ряде их выступлений и бунтов. большое влияние на мировоззрение и деятельность николая оказывала общественно-политическая обстановка в европе, бурлившей буржуазными революциями. во второй четверти xix века россия была крупным и сильным в военном отношении государством, способным эффективно решать свои внешнеполитические вопросы. в начале правления николая i военно-техническое отставание россии от европы еще не было так заметно, как впоследствии. армия была многочисленной и считалась одной из самых лучших в мире. основные направления внешней политики сохранились с конца xviii века, когда россия стала складываться как огромная евроазиатская империя. новый российский император поспешил заявить о продолжении внешнеполитического курса своего предшественника. но впоследствии он дал понять, что при проведении политики в европе, россия будет больше полагаться на собственные силы, чем на «федеративную солидарность». николай i сохранил отношения с германскими государствами, в первую очередь с пруссией, которая издавна занимала ведущее место в -германских торговых связей. тогда же наметилась тенденция к сближению россии с и францией. в период царствования николая i центральное место во внешней политике занял восточный вопрос - взаимоотношения с османской империей.
gl = 'аеёиоуыэюя';
var
s: string;
f: array[1..10] of boolean;
i, m: integer;
begin
Write('Введите фразу: '); Readln(s);
m := Pos(' ', s);
if m = 0 then Writeln('В строке отсутствуют пробелы')
else begin
for i := 1 to 10 do f[i] := False;
for i := m + 1 to length(s) do
case s[i] of
'А', 'а': f[1] := True;
'Е', 'е': f[2] := True;
'Ё', 'ё': f[3] := True;
'И', 'и': f[4] := True;
'О', 'о': f[5] := True;
'У', 'у': f[6] := True;
'Ы', 'ы': f[7] := True;
'Э', 'э': f[8] := True;
'Ю', 'ю': f[9] := True;
'Я', 'я': f[10] := True
end;
Write('Найдены гласные: ');
for i := 1 to 10 do
if f[i] then Write(gl[i], ' ');
Writeln
end
end.
Тестовое решение:
Введите фразу: Это проверочная фраза "Мама мыла раму". Конец теста.
Найдены гласные: а е о у ы я
В Pascal.ABC можно написать и короче:
const
gl = 'аеёиоуыэюя';
var
s: string;
f: array[1..10] of boolean;
i, m, p: integer;
begin
Write('Введите фразу: '); Readln(s);
m := Pos(' ', s);
if m = 0 then Writeln('В строке отсутствуют пробелы')
else begin
for i := 1 to 10 do f[i] := False;
s := LowerCase(s); { перекодировать к нижнему регистру }
for i := m + 1 to length(s) do
begin
p := Pos(s[i], gl);
if p > 0 then f[p] := True
end;
Write('Найдены гласные: ');
for i := 1 to 10 do
if f[i] then Write(gl[i], ' ');
Writeln
end
end.