var c: char; s: string; i,k,p: integer; begin readln(c); {чтение заданного символа} readln(s); {чтение заданного слова} p: = pos(c,s); {определяем позицию символа} if (p=0) then {функция вернёт 0, если символ не будет найден} writeln('такого символа в слове нет.') else {если символ есть, то } begin writeln('указанный символ расположен на позиции: ',p); k: = 0; {k хранит количество вхождений} p: = length(s); {p хранит длину строки(слова)} for i: =1 to p do {пробегаем по всем символам слова} if (s[i]=c) then inc(k); {если символ совпадает, увеличиваем на 1 переменную k} writeln('количество вхождений данного символа: ',k); end; end.
Ответ дал: Гость
если что-то будет не так - напиши, испралю. у меня простог нет возможности проверить, выполняется
program string_7; var s: string; k,l,i: integer; begin write('введите строку: '); readln(s); k: =0; l: =0; for i: =1 to length(s) dobegin if s[i]='н' then k: =k+1; if s[i]='м' then l: =l+1end; writeln('н=',k); writeln('м=',l); if k> l then writeln ('больше букв н'); if k< l thenwriteln ('больше букв м'); if (k = 0) and (l = 0) thenwriteln ('таких букв нет'); end.
так будет элсе выкидывало бы что букв н больше, если бы ни м ни н не встретилось))
Популярные вопросы