slegenlt.pas 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. program slegenlt;
  2. uses
  3. typ,
  4. iom,
  5. sle;
  6. const
  7. n1 = -10;
  8. n2 = 10;
  9. var
  10. i, n, k, v, nv, term: ArbInt;
  11. ca: ArbFloat;
  12. b, x: array[n1..n2] of ArbFloat;
  13. p: array[n1..n2] of ^ArbFloat;
  14. begin
  15. Write('program results slegenlt ');
  16. case SizeOf(ArbFloat) of
  17. 4: writeln('(single)');
  18. 8: writeln('(double)');
  19. 6: writeln('(real)');
  20. end;
  21. Read(nv);
  22. writeln;
  23. writeln(' number of examples: ', nv: 2);
  24. for v := 1 to nv do
  25. begin
  26. writeln;
  27. writeln(' example number :', v: 2);
  28. Read(k, n);
  29. for i := k to n + k - 1 do
  30. begin
  31. Getmem(p[i], n * sizeOf(ArbFloat));
  32. iomrev(input, p[i]^, n);
  33. end;
  34. iomrev(input, b[k], n);
  35. slegenl(n, p[k], b[k], x[k], ca, term);
  36. writeln;
  37. writeln(' A =');
  38. for i := k to n + k - 1 do
  39. iomwrv(output, p[i]^, n, numdig);
  40. for i := n + k - 1 downto k do
  41. Freemem(p[i], n * sizeOf(ArbFloat));
  42. writeln;
  43. writeln('b=');
  44. iomwrv(output, b[k], n, numdig);
  45. writeln;
  46. writeln('term=', term: 2);
  47. writeln;
  48. case term of
  49. 1:
  50. begin
  51. writeln('x=');
  52. iomwrv(output, x[k], n, numdig);
  53. writeln;
  54. writeln(' ca = ', ca: 12);
  55. end;
  56. 2: writeln('solution not possible');
  57. 3: writeln(' wrong value of n');
  58. end;
  59. writeln('-----------------------------------------------');
  60. end; {example}
  61. end.
  62. program slegenlt;
  63. uses
  64. typ,
  65. iom,
  66. sle;
  67. const
  68. n1 = -10;
  69. n2 = 10;
  70. var
  71. i, n, k, v, nv, term: ArbInt;
  72. ca: ArbFloat;
  73. b, x: array[n1..n2] of ArbFloat;
  74. p: array[n1..n2] of ^ArbFloat;
  75. begin
  76. Write('program results slegenlt ');
  77. case SizeOf(ArbFloat) of
  78. 4: writeln('(single)');
  79. 8: writeln('(double)');
  80. 6: writeln('(real)');
  81. end;
  82. Read(nv);
  83. writeln;
  84. writeln(' number of examples: ', nv: 2);
  85. for v := 1 to nv do
  86. begin
  87. writeln;
  88. writeln(' example number :', v: 2);
  89. Read(k, n);
  90. for i := k to n + k - 1 do
  91. begin
  92. Getmem(p[i], n * sizeOf(ArbFloat));
  93. iomrev(input, p[i]^, n);
  94. end;
  95. iomrev(input, b[k], n);
  96. slegenl(n, p[k], b[k], x[k], ca, term);
  97. writeln;
  98. writeln(' A =');
  99. for i := k to n + k - 1 do
  100. iomwrv(output, p[i]^, n, numdig);
  101. for i := n + k - 1 downto k do
  102. Freemem(p[i], n * sizeOf(ArbFloat));
  103. writeln;
  104. writeln('b=');
  105. iomwrv(output, b[k], n, numdig);
  106. writeln;
  107. writeln('term=', term: 2);
  108. writeln;
  109. case term of
  110. 1:
  111. begin
  112. writeln('x=');
  113. iomwrv(output, x[k], n, numdig);
  114. writeln;
  115. writeln(' ca = ', ca: 12);
  116. end;
  117. 2: writeln('solution not possible');
  118. 3: writeln(' wrong value of n');
  119. end;
  120. writeln('-----------------------------------------------');
  121. end; {example}
  122. end.