Mr.Smart писал(а):Используйте тип Double.
Не помогает.
Вот что выдаст на экран программа. Обратите внимание на значение близкое к нулю и на последнее значение. По логике, там должно быть 2.
Код: Выделить всё
x=-2.0000000000000000E+0000 y=-5.0000000000000000E-0001
x=-1.8000000000000000E+0000 y=-5.5555555555555556E-0001
x=-1.6000000000000000E+0000 y=-6.2500000000000000E-0001
x=-1.4000000000000000E+0000 y=-7.1428571428571429E-0001
x=-1.2000000000000000E+0000 y=-8.3333333333333333E-0001
x=-1.0000000000000000E+0000 y=-1.0000000000000000E+0000
x=-8.0000000000000000E-0001 y=-1.2500000000000000E+0000
x=-6.0000000000000000E-0001 y=-1.6666666666666667E+0000
x=-4.0000000000000000E-0001 y=-2.5000000000000000E+0000
x=-2.0000000000000000E-0001 y=-5.0000000000000000E+0000
x= 1.3552527156068805E-0019 y= 7.3786976294838206E+0018
x= 2.0000000000000000E-0001 y= 5.000000000000000E+0000
x= 4.0000000000000000E-0001 y= 2.5000000000000000E+0000
x= 6.0000000000000000E-0001 y= 1.6666666666666667E+0000
x= 8.0000000000000000E-0001 y= 1.2500000000000000E+0000
x= 1.0000000000000000E+0000 y= 1.0000000000000000E+0000
x= 1.2000000000000000E+0000 y= 8.3333333333333333E-0001
x= 1.4000000000000000E+0000 y= 7.1428571428571429E-0001
x= 1.6000000000000000E+0000 y= 6.2500000000000000E-0001
x= 1.8000000000000000E+0000 y= 5.5555555555555556E-0001
Mr.Smart писал(а):i486 - линейка процессоров от Intel и клоны их от AMD (давно это было).
Ну не так уж и давно. Моя первая программа на Pascal создавалась на ДВК-2.
У меня сложилось впечатление, что на уровне знаний ученика 9 класса, средствами Free Pascal данная задача не решаема. И это не проблема ученика, а проблема, скорее, компилятора.