slegsyte.pas 3.0 KB

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