PDA

Просмотр полной версии : Модули, объектно-ориентированное программирование



Raze
27.02.2007, 17:16
Кто-нибудь может помочь решить следующие две задачки или дать советы, как их решать.
3. Реализуйте модуль, подключение которого позволяет определять содержание в текстовом файле латинских букв, русских букв и других символов. Основная программа должна запрашивать имя текстового файла и выводить на печать количество символов того или иного вида. (Модули)
4. Родитель – поиск заданной буквы в текстовом файле. Потомок – нахождение наиболее часто встречающейся буквы. (Объектно-ориентированное программирование)

fy4y
27.02.2007, 17:52
язык то какой???

Хыиуду
27.02.2007, 17:55
3. Банально открываем файл и читаем по одному символу. Если символ в промежутке А..Я или а..я - русская буква, если в A..Z или a..z - латинская, в противном случае другой символ.
4. Что понимается под поиском буквы? Найти ее номер в файле? Аналогично: считываем буквы, пока не встретим найденную или пока не дойдем до конца файла. Если дошли до конца файла и не встретили - возвращаем 0.
При чем тут потомок - понять сложно, две эти задачи абсолютно различны, как одно наследовать от другого - непонятно. Точнее, понятно, но это получается езда из Москвы в Питер через Владивосток

Колядин Максим
01.03.2007, 03:34
При чем тут потомок - понять сложно, две эти задачи абсолютно различны, как одно наследовать от другого - непонятно. Точнее, понятно, но это получается езда из Москвы в Питер через Владивосток
Может быть, потомок использует родительскую функцию как поиск заданной буквы в текстовом файле?...

Хыиуду
01.03.2007, 10:45
Может быть, потомок использует родительскую функцию как поиск заданной буквы в текстовом файле?...
Тогда этой функции непременно должен передаваться номер позиции, с которой надо искать, иначе постоянно будет находить одну и ту же букву.

Впрочем, если не закрывать файл по завершению функции, этого можно избежать.

somewhere
01.03.2007, 11:18
Тогда этой функции непременно должен передаваться номер позиции, с которой надо искать, иначе постоянно будет находить одну и ту же букву.
По идее, если как-то их связать, то
1. Родитель умеет искать буквы в файле и возвращать позицию первого наденного через метод FindChar(fFile:File; fChar:Char; fStartPosition:Integer):Integer
2. Потомок, используя наследуемые методы поиска родителя, умеет считать часто встречаемые символы


function GetCharCount(fFile:File; fChar:Char):Integer;
begin
Reset(F,1);
Result := 0;
P := -1;
Repeat
P := FindChar(fFile, fChar, P+1);
if P>-1 then inc(Result);
Until P=-1;
end;