Выяснить, в какой половине заданного текста больше русских букв "а" или "А" - Turbo Pascal
Формулировка задачи:
Выяснить, в какой половине заданного текста больше русских букв"а" или "А" (не исключая случая равенства)
Решение задачи: «Выяснить, в какой половине заданного текста больше русских букв "а" или "А"»
textual
Листинг программы
var
s: String;
i, k1, k2: Integer;
begin
Write('Введите текст из русских букв: '); ReadLn(s);
k1:=0; k2:=0;
for i:=1 to Length(s) div 2 do Inc(k1,Ord(s[i] in ['А','а']));
for i:=Length(s) div 2+1 to Length(s) do Inc(k2,Ord(s[i] in ['А','а']));
if k1>k2 then Write('В первой половине больше')
else if k2>k1 then Write('Во второй половине больше')
else Write('В обеих половинах поровну');
end.
Объяснение кода листинга программы
- Вводится строка с помощью функции ReadLn.
- Переменные k1 и k2 инициализируются нулем.
- Используется цикл for для прохода по половине введенной строки.
- В каждой итерации цикла переменная k1 увеличивается на единицу при обнаружении русской буквы 'А' или 'а'.
- Аналогично, переменная k2 увеличивается на единицу при обнаружении русской буквы 'А' или 'а'.
- После завершения первой половины строки сравниваются значения переменных k1 и k2.
- Если k1 больше k2, выводится сообщение
В первой половине больше. - Если k2 больше k1, выводится сообщение
Во второй половине больше. - Если k1 равно k2, выводится сообщение
В обеих половинах поровну. - Код завершается.