!Η προηγούμενη εκδοχή είναι αρκετά περίπλοκη !καθώς τεμχίζει τον αριθμό στα ψηφία του και !ανασυνθέτει το συμπλήρωμά του. !Εναλλακτικά, μπορούμε να δημιουργήσουμε μια μάσκα !απότελούμενη αποκλειστικά από το ψηφίο 9 !και με μήκος ίσο προς το πλήθος των ψηφίων του αριθμού !που δόθηκε, ώστε το συμπλήρωμα να προκύψει με μια απλή αφαίρεση ΠΡΟΓΡΑΜΜΑ Συμπλήρωμα9 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ:x,xΣυμπλ ΑΡΧΗ ΚΑΛΕΣΕ ΕισαγωγήΦυσικού(x) xΣυμπλ <-- Συμπλήρωμα(x) ΓΡΑΨΕ 'Το συμπλήρωμα ως προς 9 του',x,'είναι',xΣυμπλ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ Συμπλήρωμα9 ΔΙΑΔΙΚΑΣΙΑ ΕισαγωγήΦυσικού(x) ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ:y ΑΚΕΡΑΙΕΣ:x ΑΡΧΗ ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ 'Δώστε ένα φυσικό αριθμό' ΔΙΑΒΑΣΕ y ΑΝ y<>Α_Μ(y) Η y<0 ΤΟΤΕ ΓΡΑΨΕ 'Δέ δόθηκε φυσικός. Παρακαλώ ξαναδοκιμάστε' ΤΕΛΟΣ_ΑΝ ΜΕΧΡΙΣ_ΟΤΟΥ y=Α_Μ(y) ΚΑΙ y>=0 x <-- Α_Μ(y) ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ΕισαγωγήΦυσικού ΣΥΝΑΡΤΗΣΗ Συμπλήρωμα(x):ΑΚΕΡΑΙΑ ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ:x, x1, sum ΑΡΧΗ x1 <-- x sum <-- 0 ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ x1 <-- x1 DIV 10 sum <-- sum * 10 + 9 ΜΕΧΡΙΣ_ΟΤΟΥ x1=0 Συμπλήρωμα <-- sum - x ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ Συμπλήρωμα