Подсчет количества символов, строк и слов в текстовом файле

Задача

Посчитать сколько содержится в файле символов, строк и слов.
Разделителями слов считать пробелы и перенос строки.

Решение

 

В Паскале в отличие от языка программирования Си перенос строки кодируется двумя символами (с номерами 13 и 10). Поэтому при подсчете количества строк необходимо считать еще один символ (перевод каретки), но не учитывать его в подсчете символов.

Программа на языке Паскаль: 

 

var
    f: file of char;
    fname: string;
    ch: char;
    n, line, w: word;
    flag: boolean;
 
begin
    write('File address&name: ');
    readln(fname);
    assign(f, fname);
    reset(f);
 
    n := 0;
    line := 0;
    w := 0;
    flag := false;
    while not EOF(f) do begin
        read(f, ch);
        if ord(ch) = 13 then begin
            read(f, ch);
            line := line + 1;
            flag := false;
        end
        else begin
            n := n + 1;
            if ch = ' ' then flag := false
            else
                if flag = false then begin
                    w := w+1;
                    flag := true;
                end;
        end;
    end;
    if n <> 0 then line := line + 1;
 
    writeln(n);
    writeln(line);
    writeln(w);
 
readln;
end.

 

Тема

Файлы

Уровень

Комбинированные задачи

Комментарии

Добавить комментарий

CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
CAPTCHA на основе изображений
Введите символы, которые показаны на картинке.