//
// Εργασία Αριθμητικής Ανάλυσης
// Χριστοπούλου Μαρία
// Α.Μ : 200600237
//
// Άσκηση 1γ - Επίλυση Εξίσωσης με τη μέθοδο σταθερού σημείου
//
// Παράμετροι Προγράμματος
//      x0 : αρχική πρόβλεψη ρίζας
//      Ν : μέγιστος αριθμός επαναλήψεων
//
// Περιγραφή 
//      Το πρόγραμμα εφαρμόζει τον αναδρομικό τύπο x(n+1)=g(xn), n=0,1,2,3...
//      Ν φορές, ξεκινώντας από την αρχική πρόβλεψη x0. Όταν η διαφορά
//      x(n+1)-x(n) γίνει μικρότερη της ακρίβειας tol, προσεγγίζει τη ρίζα της εξίσωσης.
//      Αν αυτό δε συμβεί μέσα σε Ν επαναλήψεις, τότε η μέθοδος δε βρίσκει ρίζα.
//      Αν υπάρχει απόκλιση, εμφανίζεται το σχετικό μήνυμα.
//      Το πρόγραμμα τυπώνει την προσέγγιση κάθε επανάληψης μέχρι να συγκλίνει.
//      Για να τρέξει, χρειάζεται τη συνάρτηση gfun3.sci
//
function fixedpoint3(x0,N)
    
i = 1;
x(1) = x0;
disp(x(1))
tol = 1.e-4;
while (i <= N)
   x(i+1) = gfun3(x(i));
   disp(x(i+1))
   if (abs(x(i+1)-x(i)) < tol)
      //mprintf("\nRoot is %f after %d iterations\n\n",x(i+1),i)
      mprintf("\nRoot is\t")
      disp(x(i+1))
      mprintf("\nIterations:\t")
      disp(i)
      return
   end
   i = i+1;
end

if abs(x(i)-x(i-1)) > tol | i > N
   disp('No root found or method diverges')
end
    
    
endfunction
