Οι απαντήσεις με μια μικρή επιφύλαξη, αλλα νομίζω ότι είναι σωστά αυτά που θα πω:
1)όχι, δεν υπάρχει περιορισμός για κεφαλαίο!
2)δεν εχω ιδεα

!
3)όχι, δεν χρειάζεται!
Κάτι που ίσως να σας βοηθήσει στο πώς βλέπεται τον αλγόριθμο:
ο αλγόριθμος ειναι κάτι το οποίο φτιάχνεται για καθαρά "προσωπική χρήση"(πάντα μιλάω για τον πραγματικό προγραμματισμό, αλλα αυτή την λογική έχει και η ανάπτυξη σε ένα βαθμό)!
η χρήση του ειναι να κάνει πιο "δομημένη" την σκέψη που θα οδηγήσει στην λύση του προβλήματος, ώστε να μην χρειάζεται να κάνεις συνέχεια μικροαλλαγές στο πρόγραμμα για να γίνει πιο πλήρες ή πιο αποδοτικό...
Στην περίπτωση της ανάπτυξης τώρα, ο αλγόριθμος αντιπροσωπεύει την επίσημη έκφραση αυτού(ή την τελευταία έκδοση), δηλαδή αντί να φτιάχνεις σε ένα χαρτί 35 κομμάτια μίας λύσης(διαίρει και βασίλευε) διάσπαρτα, τα βάζεις με την σειρά ώστε να μπορεί να καταλάβει και κάποιος άλλος να καταλάβει τι παίζει...
Η μεγάλη διαφορά από ένα καθαρό πρόγραμμα ειναι ότι είναι πιο ελεύθερο, μπορείς να χρησιμοποιήσεις οτιδήποτε είναι φανερό τι αντιπροσωπεύει(π.χ. πάρε από τον χρήστη αντί για διάβασε), αφού αυτό έχει να το κατάλαβει ανθρώπινος εγκέφαλος και όχι compiler ή interpreter...
Ελπίζω να βοήθησα!
Υ.Γ.: Έχω την αίσθηση ότι δεν κολλάνε σε μικρολεπτομέρειες αυτού του είδους(κεφαλαία ας πούμε), παρότι ειναι θεμιτό να φροντίσετε να μην τους δώσετε την ευκαιρία να πουν ότι σας κάνουν χάρη!