1.Дана строка символов (русская).Определить количество гласных букв в этой строке. 2.Дана строка символов.Определить каких симво
1.Дана строка символов (русская).Определить количество гласных букв в этой строке. 2.Дана строка символов.Определить каких символов больше гласных ил согласных. 3.Из заданного текста выбрать и вывести на экран те символы ,которые встречаются в нём ровно один раз. в паскале Решите пожалуйста !
<span>1) uses crt<span>; </span></span><span>var
i,gl,sogl: integer;
b: string;
begin
gl:=0;
sogl:=0;
write('Введите текст: ');
read(b);
for i:=1 to length(b) do begin
case b[i] of
'а','А','о','О','у','У','е','Е','ё','Ё',
'и','И','ы','Ы','э','Э','ю','Ю','я','Я': inc(gl);
'й','ц','к','н','г' ,'ш', 'щ' ,'з','х',
'ъ','ф','в','п','р' ,'л','д' ,'ж','ч',
'с','м','т','ь','б','Й','Ц','К','Н','Г',
'Ш', 'Щ' ,'З','Х','Ъ','Ф','В','П','Р' ,
'Л','Д' ,'Ж','Ч','С','М','Т','Ь','Б': inc(sogl);
end;
end;
writeln('Гласных - ',gl,' согласных - ',sogl);
if gl>sogl then writeln('Гласных больше!');
if sogl>gl then writeln('Согласных больше!');
if gl=sogl then writeln('Кол-во гласных и согласных равно!');
end<span>. 2) </span></span>program alphbt; const
glasn=['а','е','и','о','у','ы','э','ю','я'];
soglas=['б','в','г','д','ж','з','й','л','м',
'н','р','к','п','с','т','ф','х','ц','ч','ш','щ'];
var
st: string;
g,s,i:integer;
begin
write('Введите строку ');
readln(st);
g:=0; s:=0;
for i:= 1 to length(st) do
if st[i] in glasn then
inc(g)
else if st[i] in soglas then
inc(s);
if g> s then writeln('Гласных больше') else if g< s then writeln('Согласных больше') else writeln('Согласн=гласн');
readln;
end<span>. </span>3) <span>var
s: string;
i, j, k: integer;
begin
writeln('Введите строку:');
readln(s);
writeln('Символы, которые встречаются один раз:');
for i := 1 to length(s) do begin
k := 0;
for j := 1 to length(s) do
if s[i] = s[j] then inc(k);
if k = 1 then write(s[i]:4)
end;
readln
end<span>.</span></span>
//Pascal //Массив заполняется случайными числами от 1 до 10 var A: array [1..10] of byte; i: byte; Sum: real; begin randomize; for i := 1 to 10 do begin A[i] := random(9)+1; write(A[i]:3); Sum := Sum + A[i] + 2; end; writeln; for i := 1 to 10 do writeln(Sum/sqrt(abs(A[i])):0:2); writeln; end.
Может можно как-то облегчить, но я не додумал еще. Пока только так: 54/9=6 мест в купе Program vagon; var a,b,c,d,e:integer; begin; writeln ('Введите номер места'); read (a); if a <6 then writeln ('Купе первое'); if (a>6) and (a<12) then writeln ('Купе второе'); if (a>12) and (a<18) then writeln ('Купе третье'); if (a>18) and (a<24) then writeln ('Купе четвертое'); if (a>24) and (a<30) then writeln ('Купе пятое'); if (a>30) and (a<36) then writeln ('Купе шестое'); if (a>36) and (a<42) then writeln ('Купе седьмое'); if (a>42) and (a<48) then writeln ('Купе восьмое'); if (a>48) and (a<54) then writeln ('Купе девятое'); end.