Работа с файлами - Pascal (251452)
Формулировка задачи:
Дан текстовый файл (любой, главное-чтобы в нём был текст на русском и английском языке). Определить количество букв русского алфавита, английского алфавита, цифр и их процентное соотношение в тексте.
Решение задачи: «Работа с файлами»
textual
Листинг программы
var f:text; s:string; i:integer; k,kr,kl,kc:integer; pr,pl,pc:real; begin assign(f,'input.txt'); //файл в папке с программой reset(f); k:=0; kr:=0; kl:=0; kc:=0; while not eof(f) do begin readln(f,s); inc(k,length(s)); for i:=1 to length(s) do if s[i] in ['А'..'я','Ё','ё']then inc(kr) else if s[i] in ['A'..'Z','a'..'z'] then inc(kl) else if s[i] in ['0'..'9'] then inc(kc); end; close(f); pr:=kr/k*100; pl:=kl/k*100; pc:=kc/k*100; writeln('Количество русских букв=',kr,' процент=',pr:0:2); writeln('Количество латинских букв=',kl,' процент=',pl:0:2); writeln('Количество цифр=',kc,' процент=',pc:0:2); end.
Объяснение кода листинга программы
- Объявлены переменные: f: text; - файл s: string; - строка i: integer; - целочисленная переменная k, kr, kl, kc: integer; - счетчики pr, pl, pc: real; - процентные переменные
- Файл f открывается на чтение с помощью функций assign и reset.
- Переменные k, kr, kl, kc инициализируются нулями.
- В цикле while, который выполняется до конца файла, считывается строка s с помощью функции readln.
- Для каждой буквы в строке s проверяется ее принадлежность к определенной группе букв и, в зависимости от этого, увеличивается соответствующий счетчик (kr для русских букв, kl для латинских, kc для цифр).
- После окончания цикла, файл закрывается.
- Для получения процентного соотношения количества русских букв, латинских букв и цифр к общему количеству символов, счетчики kr, kl, kc делятся на общее количество символов (переменная k) и умножаются на 100.
- С помощью функции writeln выводятся значения переменных kr, kl, kc и соответствующие им проценты.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д