Det verkar som att du inte vet hur svårt det du frågar efter är egentligen. Jag skulle gissa att det kräver åtminstone månader av studier innan du ens kan börja programmera.
För att din uppgift inte ska bli allt för svår rekommenderar jag dig att att göra grava inskränkningar på mängden problem ditt program kan lösa. Gör till exempel ett program som anpassar en kvadratisk funktion (högsta gradtalet 2) till en mängd datapunkter borde inte vara så svårt. Alternativt ett program som frågar hur högt gradtal polynomet ska vara och sen räknar ut det.
Att göra ett program som av sig själv approximerar en godtycklig funktion ( alltså själv väljer om det ska anpassa ett polynom, trigonometrisk, exponentiell etc. funktion) på bästa sätt tror jag inte ens är möjligt.
Börja med att läsa här
http://en.wikipedia.org/wiki/Least_squares