
Разработать класс с полями определенных типов.Разработать в классе два метода для вычисления или
оформления операций.В классе должен быть конструктор. В Паскале АВС 1. Класс FileNameClass 2. Имя,расширение, путь к нему 3. Метод выводит на экран тип файла (текстовый,графический или видео) 4. Метод выводит на экран имя в 10-кратном размере

Ответы на вопрос

// Внимание! Если программа не работает, обновите версию!
type
FileNameClass=class
public
fullpath:string;
name:string;
extension:string;
path:string;
constructor (fp:string);
begin
fullpath:=fp;
name:=ExtractFileName(fp);
var p:=LastPos('.',name);
if p>0 then name:=name[:p];
extension:=ExtractFileExt(fp);
path:=ExtractFilePath(fp)
end;
procedure PutType;
begin
case extension[2:] of
'txt':Writeln('файл текстовый');
'bmp','jpg','tiff','gif','psd','png','ico':Writeln('Файл графический');
'mp4','mov','mpg','avi':Writeln('Файл видео')
else Writeln('Файл неизвестного типа')
end
end;
procedure PutName;
begin
Writeln(name)
end;
end;
begin
var oFile:=new FileNameClass(ReadlnString('Полный путь к файлу:'));
oFile.PutName;
oFile.PutType;
oFile:=nil // если надо явно удалить объект
end.
Пример
Полный путь к файлу: PABCWork.NET\demo.bmp
demo
Файл графический
"Десятикратный размер", который Вы не соизволили объяснить, сделаете сами, когда поймете, что это.



В Паскале не существует явного понятия классов и объектов, как в объектно-ориентированных языках программирования, но можно использовать записи (record) для создания структуры данных, подобной классу. Вот пример для вашей задачи:
```pascal program FileNameClassExample;
type FileType = (Text, Graphic, Video); FileNameClass = record Name: string; Extension: string; Path: string; end;
// Метод для вывода типа файла procedure DisplayFileType(fileObj: FileNameClass); begin case fileObj.Extension of 'txt', 'doc', 'pdf': writeln('Текстовый файл'); 'jpg', 'png', 'gif': writeln('Графический файл'); 'mp4', 'avi', 'mkv': writeln('Видео файл'); else writeln('Неизвестный тип файла'); end; end;
// Метод для вывода имени в 10-кратном размере procedure DisplayNameTenTimes(fileObj: FileNameClass); var i: Integer; begin for i := 1 to 10 do writeln(fileObj.Name); end;
var myFile: FileNameClass;
begin // Пример использования myFile.Name := 'example'; myFile.Extension := 'txt'; myFile.Path := '/path/to/file/';
DisplayFileType(myFile); DisplayNameTenTimes(myFile); end. ```
В этом примере `FileNameClass` - это запись, которая представляет файл с тремя полями: Name (имя файла), Extension (расширение файла) и Path (путь к файлу). Мы также определили перечисление FileType для удобства определения типа файла.
Метод `DisplayFileType` принимает объект `FileNameClass` и выводит тип файла в зависимости от расширения.
Метод `DisplayNameTenTimes` принимает объект `FileNameClass` и выводит имя файла 10 раз.
В основной части программы создается объект `myFile` типа `FileNameClass` и используются методы для отображения информации о файле.


Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili