Вопрос задан 24.07.2023 в 16:13. Предмет Информатика. Спрашивает Черняк Максим.

Разработать библиотечный модуль, содержащий следующие подпрограммы (процедуры или функции) для

работы со строками: А.Три функции для удаления концевых пробелов в заданной строке (удалить пробелы в начале строки, в конце строки и с двух концов) Б. Удаление лишних пробелов (между словами оставить по одному пробелу) В. Удаление всех пробелов в строке Написать программу, к которой подключается модуль, демонстрирующую работоспособность всех подпрограмм модуля. PacsalABC.NET
0 0
Перейти к ответам

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

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

модуль

unit SpaceLib;

interface

uses System;

const

   ch = ' ';

function MyTrimLeft(s: string): string;

function MyTrimRight(s: string): string;

function MyTrim(s: string): string;

function MySingleSpaces(s: string): string;

function MyNoSpaces(s: string): string;

implementation

function MyTrimLeft(s: string): string;

begin

   MyTrimLeft := Regex.Replace(s, '^[' + ch + ']+', '');

end;

function MyTrimRight(s: string): string;

begin

   MyTrimRight := Regex.Replace(s, '[' + ch + ']+$', '');

end;

function MyTrim(s: string): string;

begin

   s := Regex.Replace(s, '^[' + ch + ']+', '');

   MyTrim := Regex.Replace(s, '[' + ch + ']+$', '');

end;

function MySingleSpaces(s: string): string;

begin

   s := MyTrim(s);

   MySingleSpaces := Regex.Replace(s, '[' + ch + ']+', ' ');

end;

function MyNoSpaces(s: string): string;

begin

   MyNoSpaces := s.Replace(ch, '');

end;

end.


Пример

//PascalABC.NET версия 3.4.0.1677 от 17.06.18

//Если программа не запускается, то обновите версию

uses SpaceLib;

begin

   var s := '   123 123  23 4343    434 43 34    ';

   WritelnFormat('"{0}"', MyTrimLeft(s));

   WritelnFormat('"{0}"', MyTrimRight(s));

   WritelnFormat('"{0}"', MyTrim(s));

   WritelnFormat('"{0}"', MySingleSpaces(s));

   WritelnFormat('"{0}"', MyNoSpaces(s));

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для создания библиотечного модуля с подпрограммами для работы со строками в PascalABC.NET, нужно выполнить следующие шаги:

  1. Создайте новый проект в PascalABC.NET, назовите его, например, "StringUtilsLibrary".

  2. В созданном проекте создайте новый модуль, назовите его "StringUtils".

  3. Внутри модуля "StringUtils" определите все необходимые подпрограммы (процедуры или функции) для работы со строками.

pascal
unit StringUtils; interface // Удалить пробелы в начале строки function TrimStart(const s: string): string; // Удалить пробелы в конце строки function TrimEnd(const s: string): string; // Удалить пробелы с двух концов строки function TrimBoth(const s: string): string; // Удалить лишние пробелы между словами function RemoveExtraSpaces(const s: string): string; // Удалить все пробелы в строке function RemoveAllSpaces(const s: string): string; implementation uses SysUtils; function TrimStart(const s: string): string; begin Result := TrimLeft(s); end; function TrimEnd(const s: string): string; begin Result := TrimRight(s); end; function TrimBoth(const s: string): string; begin Result := Trim(s); end; function RemoveExtraSpaces(const s: string): string; var i: Integer; begin Result := ''; i := 1; while i <= Length(s) do begin if not (s[i].IsWhiteSpace and (i < Length(s)) and s[i + 1].IsWhiteSpace) then Result := Result + s[i]; Inc(i); end; end; function RemoveAllSpaces(const s: string): string; var i: Integer; begin Result := ''; for i := 1 to Length(s) do begin if not s[i].IsWhiteSpace then Result := Result + s[i]; end; end; end.
  1. Сохраните модуль "StringUtils" и закройте его.

  2. Теперь создайте новый модуль, который будет содержать программу с демонстрацией работы подпрограмм из библиотечного модуля.

pascal
program StringUtilsDemo; uses StringUtils; var inputString: string; trimmedString: string; extraSpacesRemoved: string; allSpacesRemoved: string; begin // Пример использования функций из модуля StringUtils writeln('Введите строку: '); readln(inputString); // Удаление пробелов в начале строки trimmedString := TrimStart(inputString); writeln('Удалены пробелы в начале строки: ', trimmedString); // Удаление пробелов в конце строки trimmedString := TrimEnd(inputString); writeln('Удалены пробелы в конце строки: ', trimmedString); // Удаление пробелов с двух концов строки trimmedString := TrimBoth(inputString); writeln('Удалены пробелы с двух концов строки: ', trimmedString); // Удаление лишних пробелов между словами extraSpacesRemoved := RemoveExtraSpaces(inputString); writeln('Удалены лишние пробелы между словами: ', extraSpacesRemoved); // Удаление всех пробелов в строке allSpacesRemoved := RemoveAllSpaces(inputString); writeln('Удалены все пробелы в строке: ', allSpacesRemoved); readln; end.
  1. Сохраните и запустите программу. После выполнения она попросит ввести строку и продемонстрирует результаты применения каждой из подпрограмм из модуля "StringUtils".

Теперь у вас есть библиотечный модуль с подпрограммами для работы со строками и демонстрационная программа для его использования.

0 0

Похожие вопросы

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

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

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