>> ROB BOWDEN: Γεια σου, είμαι Rob, και ας το άλμα στην έκδοση χάκερ του Mario.
Έτσι, το πρώτο πράγμα που πρέπει να κάνουμε είναι πάρει το ύψος από το χρήστη.
Εδώ είμαστε να τους ζητούν μια μη αρνητικός ακέραιος μικρότερη από 24 και
είμαστε με τη λειτουργία CS50 GetInt για να αρπάξει ότι ακέραιος αριθμός από το χρήστη.
Βλέπουμε ότι είμαστε μέσα σε ένα do-while loop ότι θα συνεχίσει να looping όσο
ύψος είναι μεγαλύτερο από ό, τι 23 ή μικρότερη από 0.
Και έτσι θα συνεχίσουμε μέχρι το χρήστη στην πραγματικότητα μας δίνει αυτό που θέλουμε.
>> Μόλις έχουμε αυτό το ύψος, έχουμε την ευκαιρία να ο κύριος βρόχος for του προγράμματός μας.
Έτσι, ας πρώτη ματιά σε ένα παράδειγμα από το spec το chipset.
Βλέπουμε σε αυτό το παράδειγμα ότι όταν εισάγετε ένα ύψος 4, την κάτω γραμμή
πρώτα εκτυπώνει τέσσερις hashes, δύο θέσεις, και τέσσερις hashes.
>> Στη συνέχεια, μια σειρά ανωτέρω προκύπτει ότι εκτυπώνει ένα χώρο τρεις hashes, δύο κενά για να
διαχωρίσει τις πυραμίδες, και Στη συνέχεια τρεις hashes.
Και πάνω από αυτό, δύο θέσεις, δύο hashes, δύο θέσεις, δύο hashes.
Και τέλος, τρεις θέσεις ενός χασίς, δύο χώρους ένα hash.
Έτσι, μπορείτε να αρχίσετε να παρατηρείτε το μοτίβο εδώ.
>> Ας δούμε τον κώδικα για το πώς θα πάμε να το κάνουμε αυτό.
Βλέπουμε εδώ ότι είμαστε επανάληψη πάνω από όλες τις σειρές της πυραμίδας.
Πρώτα θέλουμε να υπολογίσει ο αριθμός των χώρων.
Και να θυμάστε ότι πρέπει να ξεκινήσει η κορυφή της πυραμίδας και το έργο μας
τρόπος κάτω από τη στιγμή που δεν μπορεί να τυπώσει το κάτω, στη συνέχεια, μία γραμμή επάνω και
τότε μία γραμμή επάνω.
Έτσι, στην κορυφή της πυραμίδας, ανακοίνωση ότι ο αριθμός των χώρων είναι ίση με
ύψος μείον 1.
Εμείς πάμε για να εκτυπώσετε τρεις χώρους, στη συνέχεια, ένα hash και, στη συνέχεια, δύο κενά για να
ξεχωριστή και άλλο hash.
>> Έτσι χώρων είναι ίση με ύψος μείον σειρά.
Εάν η γραμμή είναι 1 και το ύψος μας είναι 4, που θα μας δώσει 3 θέσεις, όπως θέλουμε.
Στη συνέχεια, αυτό για το βρόχο ακριβώς εκτυπώσεις ότι ο αριθμός των χώρων.
Αν χώρων είναι τρεις, τότε θα πάμε να δημιουργήσετε ένα ενιαίο χώρο τρεις φορές.
>> Συνεχίζοντας, τώρα θέλουμε να εκτυπώσετε το hashes του αριστερού πυραμίδας, το οποίο είναι
ακριβώς ίσο με τον αριθμό σειράς.
Κοιτάζοντας πίσω εδώ, στη σειρά ένα, μπορούμε να εκτυπώσετε ένα hash.
Στη γραμμή δύο τυπώνουμε δύο, σε σειρά τριών τυπώνουμε τρεις.
Γι 'αυτό και απλά περάστε φορές συνεχόμενα εκτύπωση σύμβολο hash.
Στη συνέχεια για όλες τις γραμμές της πυραμίδας, εμείς εκτυπώσετε ακριβώς δύο κενά για να διαχωρίσετε
αυτές οι πυραμίδες.
>> Και τέλος, θέλουμε να εκτυπώσετε το δικαίωμα πλευρά της πυραμίδας, το οποίο είναι
και πάλι ο ίδιος αριθμός των hashes όπως την αριστερή πλευρά.
Και γι 'αυτό ακριβώς το ίδιο βρόχος for όπως παραπάνω εδώ.
Τέλος, θα πρέπει να δημιουργήσετε μια νέα γραμμή Προκειμένου να προχωρήσουμε στην επόμενη σειρά των
η πυραμίδα και να συνεχίσετε την εκτύπωση.
Και αυτό είναι όλο.
Το όνομά μου είναι Rob και αυτό ήταν Mario.