Публікації

Показано дописи з липень, 2024

Free Pascal – скорочення значення строкової змінної до заданого символу

Інколи під час програмування виникає потреба скоротити значення строкової змінної до  заданого  символу. Наприклад, ми маємо папку з навою D:\WORK-PAS\2024.  Нам треба, щоб після певної дії, програма перейшла в папку вищого рівня D:\WORK-PAS\. Для цього нам потрібно скоротити строку D:\WORK-PAS\2024 до першого з правого боку символу “\”. Потім за допомогою команди chdir перейти в папку вищого рівня. Пропоную вашій увазі, створену мною, функцію RigthTruncateToChar, яка скорочує значення строкової змінної до заданого символу. Розглянемо приклад програми. program example07; uses StrTools; var CurrentDir: string; Begin CurrentDir := GetCurrentDir; Writeln(CurrentDir); // CurrentDir:=RigthTruncateToChar('\',CurrentDir); chdir(CurrentDir); // CurrentDir := GetCurrentDir; Writeln(CurrentDir); end. Цей приклад може бути корисним при створенні програм на кшталт файлового менеджера. Текст юніту, який треба включити в програму. unit StrTools; interface functi...

Free Pascal – вивід та обробка слів з апострофом

Інколи, під час створення якоїсь програми, виникає потреба обробляти слова, які містять символ апостроф. Відомо, що в мові програмування Паскаль, символ апостроф, використовується під час присвоєння значень строковим змінним або при виводі тексту на екран чи у файл. Наприклад ми присвоюємо строковій змінній певне значення. Program example1; var s,p:string; Begin s:='Введiть своє прiзвище:'; write(s); readln(p); end. В такому вигляді програма спрацює нормально. Але якщо буде потрібно написати Program example1; var s,p:string; Begin s:='Введiть своє i'мя:'; //- компілятор сповістить про помилку. write(s); readln(p); end. Щоб уникнути помилки в слові і'мя треба вказати два апострофа. Program example1; var s,p:string; Begin s:='Введiть своє i''мя:'; //- компілятор спрацьовує без помилок. write(s); readln(p); end. В консольних застосунках на Free Pascal замість української букви і я використовую латинську букву i.