Перевод систем счисления - Free Pascal
Формулировка задачи:
Исходный текстовый файл содержит числа в шестнадцатеричной системе счисления,
отделенные друг от друга хотя бы одним пробелом. Составить программу, которая под
каждым шестнадцатеричным числом в файле указывает его значение в десятичной системе
счисления, например 237 4C 0 D
567 76 0 13
Решение задачи: «Перевод систем счисления»
textual
Листинг программы
- var f:text;
- s,s1:string;
- a,c,n:integer;
- begin
- assign(f,'input.txt');//файл в папке с программой
- reset(f);
- readln(f,s);
- close(f);
- s:=s+' ';
- while pos(' ',s)>0 do delete(s,pos(' ',s),1);
- append(f);
- writeln(f,'');
- while pos(' ',s)>0 do
- begin
- s1:='$'+copy(s,1,pos(' ',s)-1);
- n:=length(s1)-1;
- val(s1,a,c);
- write(f,a:n,' ');
- delete(s,1,pos(' ',s));
- end;
- write('Файл input.txt переписан');
- close(f);
- readln
- end.
Объяснение кода листинга программы
- Объявлены переменные: f, s, s1, a, c, n.
- Файл input.txt открывается на чтение.
- Считывается строка из файла и сохраняется в переменной s.
- Удаляются лишние пробелы в строке s.
- В цикле обрабатываются все пробелы в строке s.
- Формируется строка s1, которая содержит число, следующее за пробелом.
- Определяется длина строки s1 и сохраняется в переменной n.
- Строка s1 преобразуется в число и сохраняется в переменной a.
- Число a записывается в файл f.
- Удаляются первые pos(' ',s) символов из строки s.
- Цикл повторяется до тех пор, пока есть пробелы в строке s.
- Записывается сообщение
Файл input.txt переписан
. - Файл f закрывается.
- Вводится символ для завершения работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д