Проверить слова на содержание в них больших букв - Free Pascal
Формулировка задачи:
Проверить вводимые пользователем слова- содержаться ли в них большие буквы. Если таковые есть- вывести предупреждение, если нет- вывести слово на экран.
Решение задачи: «Проверить слова на содержание в них больших букв»
textual
Листинг программы
program CheckOnlyLowerCase;
var
upperCase: array [1..33] of char;
strUpperCase, word: string;
i, i2,upperCaseCounter: integer;
findUpperCase: boolean;
begin
strUpperCase := 'ЁЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮ';
for i := 1 to 33 do
upperCase[i] := strUpperCase[i];
while (True) do
begin
upperCaseCounter:=0;
WriteLn('Введите слово или "end" для выхода.');
ReadLn(word);
if findUpperCase then
findUpperCase := False;
for i := 1 to Length(word) do
begin
for i2 := 1 to 33 do
if word[i] = upperCase[i2] then
begin
findUpperCase := True;
upperCaseCounter:=upperCaseCounter+1;
break;
end;
end;
if upperCaseCounter>4 then
begin
WriteLn('В введенном слове имеются большие буквы, таких букв: ',upperCaseCounter);
end;
if findUpperCase = False then
WriteLn(word);
if (word = 'end') then
break;
end;
end.
Объяснение кода листинга программы
- Объявлены следующие переменные:
- upperCase: массив из 33 символов для хранения больших букв.
- strUpperCase: строка из 33 больших букв.
- word: строка для хранения введенного слова.
- i, i2, upperCaseCounter: целочисленные переменные для хранения индексов и количества больших букв.
- findUpperCase: логическая переменная для контроля наличия больших букв.
- Задается цикл while True, который продолжается до тех пор, пока пользователь не введет
end. - В начале каждого цикла сбрасывается счетчик upperCaseCounter и устанавливается findUpperCase в False.
- Выводится приглашение для ввода слова или
end. - Введенное слово сохраняется в переменной word.
- Если findUpperCase равно True, то это означает, что в предыдущем слове были большие буквы, и findUpperCase сбрасывается в False.
- Для каждого символа в слове выполняется проверка на равенство соответствующему символу в strUpperCase. Если символ является большой буквой, то findUpperCase устанавливается в True, увеличивается счетчик upperCaseCounter и цикл прерывается.
- Если количество больших букв в слове больше 4, то выводится сообщение об этом.
- Если findUpperCase равно False, то выводится введенное слово.
- Если слово равно
end, то цикл прерывается.