In this talk, I will present a fault-tolerant algorithm for approximate agreement in a distributed system. Given a system of n nodes and an input real number at each node, an approximate agreement algorithm outputs a real number at each node that is within a given ε and in the range of input values. The nodes communicate using synchronous message passing model i.e. sending and receiving messages synchronously. Additionally, we consider that there are at most f < n/3 Byzantine faults in the system. I will then touch upon the application of this algorithm to the problem of self-stabilizing clock synchronization in a multi-core system.