An algorithm is a well-ordered collection of unambiguous and
effectively computable operations that when executed produces
a result and halts in a finite amount of time.
it is always obvious what instruction is done next
an operation that can be carried out without further
explanation or simplification
an operation is doable, that is, it is not something like
"write out the last digit of pi" or "give a list of all prime numbers"
that produces a result
some form of output that can be checked - it may be the answer
or it may be some indication of error
and halts in a finite amount of time
you do not want an infinite (infinitely repeating) loop,
a set of instructions that never stops running.