Вопрос задан 07.05.2019 в 01:54. Предмет Информатика. Спрашивает Смирнов Евгений.

Разработать класс с полями определенных типов.Разработать в классе два метода для вычисления или

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

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Ступальский Денис.
// PascalABC.NET 3.2, сборка 1425 от 22.04.2017
// Внимание! Если программа не работает, обновите версию!

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
Файл графический

"Десятикратный размер", который Вы не соизволили объяснить, сделаете сами, когда поймете, что это.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

В Паскале не существует явного понятия классов и объектов, как в объектно-ориентированных языках программирования, но можно использовать записи (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` и используются методы для отображения информации о файле.

0 0

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

Последние заданные вопросы в категории Информатика

Задать вопрос