Устранить в коде ошибку деления на ноль - Turbo Pascal

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

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

Вот такой код программы.. и вылазит ошибка о делении на 0. Помогите пожалуйста найти где это происходит и исправить. Буду очень благодарен
Листинг программы
  1. {$X+}
  2. Uses Graph, Crt;
  3. Type TMassiv = Array[1..89] of Real;
  4. FileofMassiv = File of TMassiv;
  5. Var
  6. Max, Min : Real;
  7. k : Longint; FF : TMassiv;
  8. f2:Text; f1 : FileofMassiv; s2 : String[2];
  9. Procedure PrintZaryad(FF : TMassiv; yMax, yMin : Real; s:String);
  10. var
  11. b,a,x,zerox,zeroy,gd,gm,xmin,xmax,x2,y2 : integer;
  12. kx,ky,y : Real;
  13. Begin
  14. gd:=0; InitGraph(gd,gm,''); If GraphResult <> 0 then halt;
  15. a:=1; b:=89;
  16. if ymin>0 then ymin:=0; if ymax<0 then ymax:=0;
  17. xmin:=a; xmax:=b;
  18. if xmin>0 then xmin:=0; if xmax<0 then xmax:=0;
  19. kx:=(Getmaxx-10-10)/(xmax-xmin); ky:=(Getmaxy-10-10)/(ymax-ymin);
  20. Zerox:=Round(kx*(-xmin))+10;
  21. Zeroy:=GETMAXY-(Round(ky*(-ymin))+10);
  22. SetLineStyle(0,0,1); SetbkColor(0); SetColor(14);
  23. Line(10,Zeroy, Getmaxx-10,Zeroy);
  24. Line(Zerox,10, Zerox,GetmaxY-10);
  25. x:=a; SetColor(12);
  26. Moveto(Round(kx*x)+Zerox,Zeroy-(Round(ky*FF[x])));
  27. Repeat
  28. x:=x+1;
  29. Lineto(Round(kx*x)+Zerox,Zeroy-(Round(ky*FF[x])));
  30. Until x>=b;
  31. x2:=10; SetColor(10);
  32. Repeat
  33. Line(x2,Zeroy-5,x2,Zeroy+5);
  34. x2:=x2+10;
  35. Until x2>(GetmaxX-10);
  36. y2:=10;
  37. Repeat
  38. Line(Zerox-5,y2,Zerox+5,y2);
  39. y2:=y2+10;
  40. Until y2>(GetmaxY-10);
  41. OutTextXY(50, 250, 'A = '+s);
  42. Readln;
  43. CloseGraph;
  44. End;
  45. Begin {********* PrograM MAIN **********}
  46. Assign(f2,'c:\zar\MaxMin'); Reset(f2);
  47. Readln(f2,Max); Readln(f2,Min);
  48. Close(f2);
  49. For k:=1 to 89 do Begin
  50. str(k,s2);
  51. Assign(f1,'c:\zar\'+'1'+s2); Reset(f1);
  52. Read(f1,FF);
  53. PrintZaryad(FF, Max, Min, s2);
  54. Close(f1);
  55. End;
  56. End.

Решение задачи: «Устранить в коде ошибку деления на ноль»

textual
Листинг программы
  1. Assign(f1,'c:\zar\'+'1.txt'+s2); Reset(f1);

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

  1. Открывается файл для записи (записи) под именем c:\zar\1.txt и с расширением .txt.
  2. Вводится переменная s2 со значением, которое отсутствует в данном коде.
  3. Вводится переменная f1 со значением, которое отсутствует в данном коде.
  4. Предполагается, что в файл была записана какая-то информация.
  5. Закрывается файл f1.
  6. Устраняется ошибка деления на ноль.
  7. Если введено значение переменной s2, то предполагается, что оно не равно нулю.
  8. Если введено значение переменной f1, то предполагается, что оно не равно нулю.
  9. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  10. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  11. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  12. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  13. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  14. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  15. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  16. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  17. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  18. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  19. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.
  20. Если введено значение переменной f1 и значение переменной s2, то предполагается, что они оба не равны нулю.

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


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

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

11   голосов , оценка 4.364 из 5

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

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

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