Информатика, вопрос задал MisterHipster , 7 лет назад

Очень срочно! Информатика. Помогите, кто разбирается) Чепуху не писать, для уточнений есть комментарии. Протестировать программы в Паскаль и нужны результаты. Спасибо)


Задание 1.

Написать программу для решения задачи. Дана строка, содержащая текст на русском языке, и некоторая буква. Подсчитать, сколько слов начинается с указанной буквы.



Задание 2.

Написать программу для решения задачи. Дана строка, содержащая текст. Сколько слов в тексте? Сколько цифр в тексте?

Ответы на вопрос

Ответил shavrinatv
0

Ответ:

Объяснение:

Задание 1

program bukva;

const R=[' ','.',',',';',':','?','!','-']; // разделители

var

s,bukv:string;

i,kol,len:integer;

procedure UpCaseRus(var s:string);

{русские в верхний регистр}

var i:integer;

begin

for i:=1 to length(s) do

if s[i] in ['а'..'п'] then s[i]:=chr(ord(s[i])-32)

else if s[i] in ['р'..'я'] then s[i]:=chr(ord(s[i])-80)

else if s[i]='ё' then s[i]:='Ё';

end;

begin

readln(s);

readln(bukv);

UpCaseRus(s);

UpCaseRus(bukv);

For i:=length(s) downto 2 do

if ((s[i] in R) and (s[i-1] in R)) then delete(s,i,1);

len:=length(s);

kol:=0;

for i:=len downto 1 do

begin

if s[i] in R then

if s[i+1]=bukv then kol:=kol+1;

end;

if s[1]=bukv then kol:=kol+1;

writeln('Слов на букву '+bukv+' ',kol);

readln;

end.

Задание 2

const r=[' ','.',',',';',':','?','!','-'];

var

s:string;

i,kol,d:integer;

begin

readln(s);

len:=length(s);

kol:=0;  d:=0;

For i:=length(s) downto 2 do

       if ((s[i] in r) and (s[i-1] in r)) then delete(s,i,1);

for i:=1 to length(s) do

begin

if s[i] in r then kol:=kol+1

else if (s[i] in ['0'..'9']) then d:=d+1;

end;

writeln('Слов всего ',kol+1);

writeln('Цифр  в тексте ',d);

readln;

end.

Приложения:
Ответил MisterHipster
0
Вы меня спасли! Огромное Спасибо!))
Ответил MisterHipster
0
Извиняюсь за наглость, можете помочь с этим: https://znanija.com/task/32467779
Новые вопросы