PABCSystem.pas(4774) : Ошибка времени выполнения: Файл не открыт на запись - PascalABC.NET

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

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

Число, которое одинаково читается слева направо и наоборот, называется палиндромом, напр., 3773. Возьмем произвольное число N (от 10 до 10000). Если оно не палиндром, добавим к нему число, состоящее из тех же цифр, но записанных в обратном порядке. Будем повторять эту операцию, пока не получим палиндром (если это возможно). Напр., N = 49, 49 94 = 143, 143 341 = 484. Напишите программу, которая бы определяла, можно из заданного числа N получить палиндром, и если возможно, то за какое минимальное количество добавлений. Если меньше, чем за 100 добавлений это сделать невозможно, вывести на экран -1. вот сделал что смог но выдаёт ошибку PABCSystem.pas(4774) : Ошибка времени выполнения: Файл не открыт на запись и выделяет красным в PABCSystem.pas строку if val = nil then вот сама программа
Листинг программы
  1. program dobavlenie;
  2. var n,a:string;
  3. i,k,x,y,c,s:integer;
  4. f1,f2:text;
  5. begin
  6. assign(f1,'imput.txt');
  7. assign(f2,'output.txt');
  8. reset(f1);
  9. read(f1,n);
  10. close(f1);
  11. a:='';
  12. for i:=1 to length(a) do
  13. a:=n[i]+a;
  14. if a=n then
  15. begin
  16. rewrite(f2);
  17. write(f2,'0')
  18. end
  19. else
  20. begin
  21. begin
  22. k:=0;
  23. repeat
  24. val(a,x,c);
  25. val(n,y,c);
  26. s:=x+y;
  27. k:=k+1;
  28. str(s,n);
  29. for i:=1 to length(n) do
  30. a:=n[i]+a;
  31. until (a=n) or (k<100)
  32. end;
  33. if (k<100) then
  34. writeln(f2,k+1)
  35. else
  36. writeln(f2,'-1')
  37. end;
  38. close(f2)
  39. end.
вот ещё выводит в окне вывода Ошибка времени выполнения: System.IO.IOException: Файл не открыт на запись Стек: at PABCSystem.PABCSystem.write(Text f, Object val) in D:\программы\PascalABC.NET\LibSource\PABCSystem.pas:line 4774 at PABCSystem.PABCSystem.writeln(Text f, Object val) in D:\программы\PascalABC.NET\LibSource\PABCSystem.pas:line 4807 at dobavlenie.dobavlenie.$Main() in C:\PABCWork.NET\Добавление\Program3.pas:line 34 at Program3.Program.Main()

Решение задачи: «PABCSystem.pas(4774) : Ошибка времени выполнения: Файл не открыт на запись»

textual
Листинг программы
  1.  assign(f1,'imput.txt');
  2.  assign(f2,'output.txt');
  3.  reset(f1);
  4.  rewrite(f2); // После добавления этой строки нет никакой ошибки
  5.  read(f1,n);
  6.  close(f1);

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


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

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

6   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы