Убрать интервал в ответе (программу PascalABC перенести в FreePascal) - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Помогите,что нужно сделать,чтобы убрать интервал который выдается в ответе. Данная программа работает в паскале abc, но нужно,чтобы она работала во free pascal.
var p,q,i,s,j,k: integer; 
 a:array[1..100] of integer; 
 
begin 
 s:=1; 
 Readln(p,q); 
 writeln('p=',p,' q=',q); 
 for i:=2 to round(sqr(q))+1 do begin 
 if q mod i=0 then begin 
 inc(k); a[k]:=i; 
 for j:=2 to round(sqr(i))+1 do begin 
 if (p mod j=0) and (i mod j=0) then s:=0; 
 end; 
 if s=1 then writeln('Делитель числа ',q,': ',i,' -взаимно простое число с числом ',p); 
 s:=1; 
 end; 
 end; 
 writeln('Все делители числа q=',q); 
 for i:=1 to k do write(' ',a); 
end.

Решение задачи: «Убрать интервал в ответе (программу PascalABC перенести в FreePascal)»

textual
Листинг программы
for i:=1 to k do write(' ',a[i]);

Объяснение кода листинга программы

В данном коде происходит запись в файл строки, состоящей из пробелов и значений массива a, которые разделены пробелами. Список действий:

  1. Указать начальное значение переменной i равное 1.
  2. Указать конечное значение переменной i равное k.
  3. Начать цикл от 1 до k.
  4. В каждой итерации цикла записать в файл пробел.
  5. Завершить цикл.
  6. Закрыть файл. Пример кода на языке Free Pascal:
    var
    i, k: Integer;
    a: array of String;
    f: File;
    begin
    AssignFile(f, 'output.txt');
    Rewrite(f, 1);
    for i := 1 to k do
    begin
    Write(f, ' ', a[i]);
    end;
    CloseFile(f);
    end;

    Примечание: В данном коде массив a предполагается уже заполненным к моменту начала выполнения программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.857 из 5
Похожие ответы