• Составить программу на Паскале: Решение кубических уравнений по схеме Горнера. Если что прочитайте в интернете. Я над этой программой сижу 2 недели не могу сделать. Прошу помогите. Я так понял за ваше решение дают 99 баллов

Ответы 4

  • У меня программа вернула 2, 4, 5
    • Автор:

      miah
    • 5 лет назад
    • 0
  • Два примера даны с программой - Вы не посмотрели и там, как записано? Ну это уже, простите, из серии "Сам себе злобный Буратино"...
  • Или когда что-то не так, Вы спешите окружающих во всех грехах обвинить, вместо того, чтобы сначала подумать, а не в себе ли дело?
    • Автор:

      lane
    • 5 лет назад
    • 0
  • // PascalABC.NET 3.2, сборка 1417 от 28.03.2017// Внимание! Если программа не работает, обновите версию!type  fraction=(integer,integer);function RatFact(Self:array of integer):sequence of fraction;    extensionmethod;//// На основе алгоритма 78б// В кн.: Агеев М.И., Алик В.П., Марков Ю.И.// Библиотека алгоритмов 51б-100б. (Справочное пособие.) Вып.2.// М.б "Сов. радио", 1976.//// Отыскание рациональных корней полиномов с целыми коффициентами.// Используется предоженное Дж.Пеком расширение вычисления полинома// методом Горнера.// !!! Коэффициенты полинома записываются, начиная со свободного члена !!!//begin  var L:=new List<fraction>; // вынужденное: метод иногда дает дубликаты  (var a0, var an):=(abs(Self.First),abs(Self.Last));  for var p:=1 to a0 do begin    if a0 mod p<>0 then continue;    for var q:=1 to an do begin      if an mod q<>0 then continue;      var g:=Self.First; (var f, var t):=(g,p);      foreach var k in Self.Skip(1) do begin        var r:=k*t; (f,g,t):=(f*q+r,-g*q+r,t*p);        end;      if f=0 then L.Add((p,q));       if g=0 then L.Add((-p,q))       end    end;    Result:=Lend;function RedFrac(Self:fraction):fraction; extensionmethod;begin  (var p,var q):=Self;  var s:=sign(p*q);  (p,q):=(abs(p),abs(q));  (var a,var b):=(p,q);  while b<>0 do begin a:=a mod b; Swap(a,b) end;  Result:=(s*p div a,q div a)end;function Beautify(Self:sequence of fraction):sequence of string;    extensionmethod;begin  Result:=Self.Select(e->e.RedFrac).Distinct.OrderBy(x->x[0]/x[1]).    Select(e->e[0]+(e[1]<>1?'/'+e[1]:''))end;begin  ReadArrInteger(4).RatFact.Beautify.Printlnend.Примеры1) -36x³+3x²+14x+3 = 0 3 14 3 -36-1/3 3/42) (x-1)(x+2)(x+3/5) = 0;  5x³+8x²-7x-6 = 0-6 -7 8 5-2 -3/5 1
    • Автор:

      abel4tcu
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years