Το CS50, το μάθημα κωδικοποίησης του Χάρβαρντ για τα πιο ελίτ μυαλά του κόσμου, είναι αναπάντεχα δύσκολο να το βρεις. Αυτός είναι ο λόγος για τον οποίο το Χάρβαρντ σας δίνει πρόσβαση στους άφθονους πόρους CS50 στο διαδίκτυο δωρεάν ή ως πρόγραμμα επί πληρωμή εάν θέλετε να λάβετε ένα επίσημο πιστοποιητικό των δεξιοτήτων σας στο τέλος.
Εάν αναρωτιέστε πώς να αποκτήσετε πρόσβαση στο περιεχόμενο CS50 στο διαδίκτυο, υπάρχουν τέσσερις τρόποι:
Πάρτε το CS50 online: Harvard Extension School
Ο κλάδος της εξ αποστάσεως μάθησης του Χάρβαρντ, το Harvard Extension School, προσφέρει διάφορες γεύσεις του CS50. Το μάθημα Εντατικής Εισαγωγής στην Επιστήμη Υπολογιστών CSCI E-50 διάρκειας ενός εξαμήνου προσφέρει τέσσερις πιστώσεις για ένα πτυχίο και κοστίζει 2.400 $. Ο χώρος περιορίζεται σε 200 φοιτητές και τα μαθήματα υπερκαλούνται, ωστόσο. Παρακολουθούμε extension.harvard.edu για το πότε ανοίγει η εγγραφή για τα μαθήματα του φθινοπώρου και της άνοιξης του επόμενου έτους.
Πάρτε το CS50 online: edX
Εναλλακτικά, το μάθημα προσφέρεται μέσω του διαδικτυακός ιστότοπος εκπαίδευσης edX , όπου μπορείτε να το αντιμετωπίσετε με τον δικό σας ρυθμό. Σύμφωνα με τη σελίδα edX για CS50, οι μαθητές που κερδίζουν ικανοποιητική βαθμολογία σε εννέα σύνολα προβλημάτων (δηλ. Εργασίες προγραμματισμού) και ένα τελικό έργο θα λάβουν πιστοποιητικό από το HarvardX. Οι μαθητές μπορούν να παρακολουθήσουν το μάθημα δωρεάν, αλλά πρέπει να πληρώσουν 90 $ εάν επιθυμούν να λάβουν πιστοποιητικό υπογεγραμμένο από εκπαιδευτή με το λογότυπο του ιδρύματος για να επαληθεύσουν το επίτευγμά σας και να αυξήσουν τις προοπτικές εργασίας σας.
Πάρτε το CS50 online: iTunes U
Το μάθημα και όλο το υλικό του - όπως και πολλά άλλα μαθήματα του Χάρβαρντ - διατίθενται επίσης στο iTunes U της Apple. Μπορείτε να κατεβάσετε την εφαρμογή δωρεάν από το App Store (είτε σε iPhone, iPad ή Mac) και να αναζητήσετε CS50 στον κατάλογο. Όλες οι διαλέξεις βίντεο, σύνολα προβλημάτων, κουίζ και άλλο υλικό είναι στο πακέτο, αν και ένας σχετικά πρόσφατος επανασχεδιασμός του iTunes U έχει κάνει αυτή τη μάζα υλικού πολύ πιο δύσκολο να πλοηγηθεί από ό, τι ήταν κάποτε.
Πάρτε το CS50 στο διαδίκτυο: YouTube
Ο τελικός τρόπος είναι να παρακολουθήσετε απλώς όλες τις διαλέξεις - κάτι που αξίζει τον κόπο - στο YouTube. Όλες οι διαλέξεις από το μάθημα Computer Science 50 του 2015 μπορείτε να βρείτε στο Το κανάλι του Χάρβαρντ . Υπάρχουν περισσότερες από 20 ώρες πλάνα για να εργαστούν, αν και κάθε ατομική διάλεξη δεν έχει διάρκεια περισσότερο από μία ώρα.
ΔΙΑΒΑΣΤΕ ΕΠΟΜΕΝΟ: Μάθετε να κωδικοποιείτε δωρεάν στο Ηνωμένο Βασίλειο
windows 10 σφάλμα memory_management
Θα μπορούσατε να περάσετε το CS50;
Ανησυχείτε ότι δεν έχετε την πνευματική ανάγκη να ακολουθήσετε την ελίτ πορεία του Χάρβαρντ; Ακολουθούν ορισμένα δείγματα ερωτήσεων απευθείας από το μάθημα του Χάρβαρντ. Μην ανησυχείτε, ούτε για μένα.
1: Η κρυπτογράφηση Vigenère
Η τελική σας πρόκληση αυτήν την εβδομάδα είναι να γράψετε, στο vigenere.c, ένα πρόγραμμα που κρυπτογραφεί μηνύματα χρησιμοποιώντας το κρυπτογράφηση του Vigenère. Αυτό το πρόγραμμα πρέπει να αποδεχτεί ένα μόνο όρισμα γραμμής εντολών: μια λέξη-κλειδί, k, που αποτελείται εξ ολοκλήρου από αλφαβητικούς χαρακτήρες.
Εάν το πρόγραμμά σας εκτελείται χωρίς ορίσματα γραμμής εντολών, με περισσότερα από ένα όρισμα γραμμής εντολών ή με ένα όρισμα γραμμής εντολών που περιέχει οποιονδήποτε μη αλφαβητικό χαρακτήρα, το πρόγραμμά σας θα πρέπει να παραπονιέται και να βγεί αμέσως, με την κύρια επιστροφή 1 (με αυτόν τον τρόπο δηλώνει ένα σφάλμα που μπορούν να εντοπίσουν οι δικές μας δοκιμές).
Διαφορετικά, το πρόγραμμά σας πρέπει να προχωρήσει για να ζητήσει από το χρήστη μια συμβολοσειρά απλού κειμένου,
p, το οποίο πρέπει στη συνέχεια να κρυπτογραφήσει σύμφωνα με τον κρυπτογράφο του Vigenère με k, τελικά να εκτυπώσει το αποτέλεσμα και να βγεί, με την κύρια επιστροφή 0.
Όσο για τους χαρακτήρες στο k, πρέπει να αντιμετωπίζετε τα A και a ως 0, B και b ως 1,…, και Z και z ως 25. Επιπλέον, το πρόγραμμά σας πρέπει να εφαρμόζει το κρυπτογράφηση του Vigenère σε έναν χαρακτήρα στο p εάν αυτός ο χαρακτήρας είναι ένα γράμμα. Όλοι οι άλλοι χαρακτήρες (αριθμοί, σύμβολα, κενά, σημεία στίξης κ.λπ.) πρέπει να παραχθούν αμετάβλητα.
Επιπλέον, εάν ο κώδικάς σας πρόκειται να εφαρμόσει τον jth χαρακτήρα του k στον ith χαρακτήρα του p, αλλά ο τελευταίος αποδεικνύεται μη αλφαβητικός χαρακτήρας, πρέπει να περιμένετε να εφαρμόσετε αυτόν τον jth χαρακτήρα του k στον επόμενο αλφαβητικό χαρακτήρα στο p ; δεν πρέπει να προχωρήσετε ακόμη στον επόμενο χαρακτήρα στο k. Τέλος, το πρόγραμμά σας πρέπει να διατηρήσει την περίπτωση κάθε γράμματος στη σελίδα.
2. Το παιχνίδι των δεκαπέντε
Το Game of Fifteen είναι ένα παζλ που παίζεται σε ένα τετράγωνο ταμπλό με αριθμημένα πλακάκια που γλιστρούν. Ο στόχος αυτού του παζλ είναι να τακτοποιήσετε τα πλακίδια του σκάφους από το μικρότερο στο μεγαλύτερο, από αριστερά προς τα δεξιά, από πάνω προς τα κάτω, με έναν κενό χώρο στην κάτω δεξιά γωνία του πίνακα.
Εφαρμόστε τη λειτουργία God για αυτό το παιχνίδι.
Πρώτα εφαρμόστε init με τέτοιο τρόπο ώστε η πλακέτα να αρχικοποιείται σε μια ψευδοτυχαία αλλά διαλυτή διαμόρφωση. Στη συνέχεια, ολοκληρώστε την εφαρμογή ισοπαλίας, μετακίνησης και νίκης, ώστε ένας άνθρωπος να μπορεί πραγματικά να παίξει το παιχνίδι.
Δείτε σχετικό CS50: Μέσα στην πιο ελίτ σειρά μαθημάτων υπολογιστών στον κόσμο Μάθετε να κωδικοποιείτε δωρεάν: Τα καλύτερα μαθήματα κωδικοποίησης και ανάπτυξης εφαρμογών στο Ηνωμένο Βασίλειο στην εθνική εβδομάδα κωδικοποίησης Ένα χρόνο ως κωδικοποιητής νομάδας
Αλλά ενσωματώστε στο παιχνίδι ένα cheat, οπότε, αντί να πληκτρολογείτε έναν ακέραιο αριθμό μεταξύ 1 και d2 - 1, όπου d είναι το ύψος και το πλάτος του πίνακα, ο άνθρωπος μπορεί επίσης να πληκτρολογήσει GOD για να υποχρεώσει τον 'υπολογιστή' να αναλάβει τον έλεγχο του παιχνιδιού και λύστε το (χρησιμοποιώντας οποιαδήποτε στρατηγική, βέλτιστη ή μη βέλτιστη), κάνοντας, ας πούμε, μόνο τέσσερις κινήσεις ανά δευτερόλεπτο έτσι ώστε ο άνθρωπος να μπορεί να παρακολουθεί.
Προφανώς, θα πρέπει να ανταλλάξετε το GetInt για κάτι πιο ευέλικτο. Είναι καλό εάν η εφαρμογή του God Mode λειτουργεί μόνο (ανθεκτικά γρήγορα) για d d 4. δεν χρειάζεται να ανησυχείτε για τη δοκιμή του God Mode για d> 4. Ω, και δεν μπορείτε να εφαρμόσετε το God Mode θυμηθείτε πώς ξεκίνησε το board (όπως θυμόμαστε την ακολουθία των κινήσεων που οδήγησαν το πρόγραμμά σας σε κάποια ψευδοτυχαία αλλά επιλύσιμη κατάσταση). Καλή προσπάθεια.
Πνευματικά δικαιώματα όλων των προβλημάτων του Πανεπιστημίου του Χάρβαρντ. Τα πλήρη σύνολα προβλημάτων δημοσιεύονται στη διεύθυνση: cs50.harvard.edu