Дана строка, содержащая полное имя файла. Выделить из строки название последнего каталога (без символов "\") - Turbo Pascal
Формулировка задачи:
Дана строка, содержащая полное имя файла. Выделить из строки название последнего каталога (без символов "\"). Если файл содержится в корневом каталоге, то вывести символ "\".
Решение задачи: «Дана строка, содержащая полное имя файла. Выделить из строки название последнего каталога (без символов "\")»
textual
Листинг программы
Program frew0; uses crt; var s:string; i,s1,s2:integer; begin clrscr; s2:=0; write('Введите имя файла '); readln(s); for i:=1 to length(s) do if s[i]='/' then begin s1:=s2; s2:=i; end; if s2=0 then write('\') else write(copy(s,s1+1,s2-s1-1)); readln; end.
Объяснение кода листинга программы
- Программа начинается с объявления типа данных переменной
s
как строка. - Используется библиотека
crtr
, которая является стандартной для Turbo Pascal. - В блоке
begin
считывается имя файла от пользователя с помощью функцииreadln()
. - Переменная
s2
инициализируется значением 0. - Запускается цикл
for
, который проходит по каждому символу в строкеs
. - Внутри цикла проверяется, является ли текущий символ символом
/
. Если это так, то переменныеs1
иs2
обновляются, чтобыs1
содержал предыдущую позициюs2
, аs2
- текущую позициюs1
. Это позволяет найти позицию последнего каталога в строке. - Если
s2
равно 0, то выводится пустая строка ('\'
). Это происходит, если в строке нет символов/
. - Если
s2
не равно 0, то выводится подстрокаs
от позицииs1+1
до позицииs2-s1-1
. Это позволяет выделить последний каталог из строки. - После завершения цикла
for
считывается следующее действие с помощьюreadln()
. - Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д