eigbs1te.pas 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. program eigbs1te;
  2. uses
  3. typ,
  4. iom,
  5. eig;
  6. const
  7. n1 = -100;
  8. n2 = 100;
  9. var
  10. ex, nex, nel, p, q, n, b, term: ArbInt;
  11. a: array[n1..n2] of ArbFloat;
  12. lam: array[n1..n2] of ArbFloat;
  13. begin
  14. Write(' program results eigbs1te');
  15. case sizeof(ArbFloat) of
  16. 4: writeln('(single)');
  17. 6: writeln('(real)');
  18. 8: writeln('(double)');
  19. end;
  20. Read(nex);
  21. writeln;
  22. writeln('number of examples', nex: 2);
  23. writeln;
  24. for ex := 1 to nex do
  25. begin
  26. writeln('example number', ex: 2);
  27. writeln;
  28. Read(p, q, n, b);
  29. nel := n * (b + 1) - (b * (b + 1)) div 2;
  30. iomrev(input, a[p], nel);
  31. eigbs1(a[p], n, b, lam[q], term);
  32. writeln(' A = ');
  33. iomwrv(output, a[p], nel, numdig);
  34. writeln;
  35. writeln('term=', term: 2);
  36. if term = 1 then
  37. begin
  38. writeln;
  39. writeln('lambda=');
  40. iomwrv(output, lam[q], n, numdig);
  41. end
  42. else
  43. writeln(' wrong input');
  44. writeln;
  45. writeln('-------------------------------------------');
  46. end;
  47. Close(input);
  48. Close(output);
  49. end.
  50. program eigbs1te;
  51. uses
  52. typ,
  53. iom,
  54. eig;
  55. const
  56. n1 = -100;
  57. n2 = 100;
  58. var
  59. ex, nex, nel, p, q, n, b, term: ArbInt;
  60. a: array[n1..n2] of ArbFloat;
  61. lam: array[n1..n2] of ArbFloat;
  62. begin
  63. Write(' program results eigbs1te');
  64. case sizeof(ArbFloat) of
  65. 4: writeln('(single)');
  66. 6: writeln('(real)');
  67. 8: writeln('(double)');
  68. end;
  69. Read(nex);
  70. writeln;
  71. writeln('number of examples', nex: 2);
  72. writeln;
  73. for ex := 1 to nex do
  74. begin
  75. writeln('example number', ex: 2);
  76. writeln;
  77. Read(p, q, n, b);
  78. nel := n * (b + 1) - (b * (b + 1)) div 2;
  79. iomrev(input, a[p], nel);
  80. eigbs1(a[p], n, b, lam[q], term);
  81. writeln(' A = ');
  82. iomwrv(output, a[p], nel, numdig);
  83. writeln;
  84. writeln('term=', term: 2);
  85. if term = 1 then
  86. begin
  87. writeln;
  88. writeln('lambda=');
  89. iomwrv(output, lam[q], n, numdig);
  90. end
  91. else
  92. writeln(' wrong input');
  93. writeln;
  94. writeln('-------------------------------------------');
  95. end;
  96. Close(input);
  97. Close(output);
  98. end.