Huvud Smartphones CS50: Hur man tar Harvards kodningskurs online

CS50: Hur man tar Harvards kodningskurs online



CS50, Harvards överprenumererade och inflytelserika kodningskurs för världens mest elitiska sinnen är, förvånansvärt, otroligt svårt att komma igång. Det är därför Harvard ger dig tillgång till de överflödiga CS50-resurserna online gratis eller som en betald kurs om du vill få ett formellt intyg om dina färdigheter i slutet.

CS50: Hur man tar Harvard

Om du undrar hur du kommer åt CS50-innehåll online finns det fyra sätt:

Ta CS50 online: Harvard Extension School

Harvards egen distansutbildningsfilial, Harvard Extension School, erbjuder olika smaker av CS50. Den terminlånga CSCI E-50 Intensiv introduktion till datavetenskapskursen erbjuder fyra poäng mot en examen och kostar $ 2400. Utrymmet är begränsat till 200 studenter och kurser är dock kraftigt överprenumererade. Hålla ett öga på extension.harvard.edu för när anmälan öppnas för nästa års höst- och vårkurser.

Ta CS50 online: edX

Alternativt erbjuds kursen genom onlineutbildningswebbplats edX , där du kan hantera det i din egen takt. Enligt edX-sidan för CS50 får studenter som får en tillfredsställande poäng på nio problemuppsättningar (dvs. programmeringsuppgifter) och ett slutprojekt ett certifikat från HarvardX. Studenter kan ta kursen gratis, men måste betala $ 90 om de vill få ett instruktörssignerat certifikat med institutionens logotyp för att verifiera din prestation och öka dina jobbutsikter.

Ta CS50 online: iTunes U

Kursen och allt dess material finns - som många andra Harvard-kurser - också tillgänglig på Apples iTunes U. Du kan ladda ner appen gratis från App Store (antingen på iPhone, iPad eller Mac) och söka efter CS50 i katalogen. Alla videoföreläsningar, problemuppsättningar, frågesporter och annat material finns i förpackningen, även om en relativt ny redesign av iTunes U har gjort den här massan av material mycket svårare att navigera än den en gång var.

Ta CS50 online: YouTube

Det sista sättet är att helt enkelt titta på alla föreläsningar - som i sig är en givande strävan - på YouTube. Alla föreläsningar från kursen Datavetenskap 50 2015 finns på Harvard-kanal . Det finns mer än 20 timmars film att arbeta igenom, även om varje enskild föreläsning inte är längre än en timme eller så.

LÄS NÄSTA: Lär dig att koda gratis i Storbritannien

hur man skickar ett självförstörande textmeddelande

Kan du klara CS50?

Orolig att du inte har det mentala bruset att gå på Harvards elitkurs? Här är några exempel på frågor direkt från Harvards kurs. Oroa dig inte, de är inte heller vettiga för mig.

1: Vigenère-chifferet

Din sista utmaning den här veckan är att skriva, i vigenere.c, ett program som krypterar meddelanden med hjälp av Vigeneres chiffer. Detta program måste acceptera ett enda kommandoradsargument: ett nyckelord, k, som helt består av alfabetiska tecken.

Om ditt program körs utan några kommandoradsargument, med mer än ett kommandoradsargument eller med ett kommandoradsargument som innehåller något icke-alfabetiskt tecken, bör ditt program klaga och avsluta omedelbart, med huvudåtergivande 1 (därmed vilket innebär ett fel som våra egna tester kan upptäcka).

Annars måste ditt program fortsätta för att be användaren om en sträng av klartext,
p, som den sedan måste kryptera enligt Vigenères chiffer med k, i slutändan skriva ut resultatet och avsluta, med huvudretur 0.

När det gäller karaktärerna i k måste du behandla A och a som 0, B och b som 1, ... och Z och z som 25. Dessutom måste ditt program bara tillämpa Vigenères chiffer på en karaktär i p om den karaktären är ett brev. Alla andra tecken (siffror, symboler, mellanslag, skiljetecken osv.) Måste matas ut oförändrade.

Dessutom, om din kod är på väg att tillämpa j-tecknet på k på det ith-tecknet på p, men det senare visar sig vara ett icke-alfabetiskt tecken, måste du vänta med att tillämpa det j-tecknet på k på nästa alfabetiska tecken i p ; du får ännu inte gå vidare till nästa karaktär i k. Slutligen måste ditt program bevara fallet för varje bokstav på sid.

2. Fifteen Game

The Game of Fifteen är ett pussel som spelas på ett fyrkantigt bräde med numrerade brickor som glider. Målet med detta pussel är att ordna brädans brickor från minsta till största, vänster till höger, uppifrån och ned, med ett tomt utrymme i brädans nedre högra hörn.

Implementera Gud Mode för detta spel.

Först implementera init på ett sådant sätt att kortet initieras till en pseudorandom men lösbar konfiguration. Slutför sedan genomförandet av dragning, flytt och vann så att en människa faktiskt kan spela spelet.

Se relaterad CS50: Inuti världens mest elitdatorkurs Lär dig att koda gratis: De bästa kurserna i Storbritannien för kodning och apputveckling under den nationella kodningsveckan Ett år som kodande nomad

Men bädda in ett spel i spelet, där, i stället för att skriva ett heltal mellan 1 och d2 - 1, där d är brädans höjd och bredd, kan människan också skriva GUD för att tvinga 'datorn' att ta kontroll över spelet och lösa det (med vilken strategi som helst, optimal eller icke-optimal), gör, säg, bara fyra drag per sekund så att människan kan titta.

Förmodligen måste du byta ut GetInt mot något mer mångsidigt. Det är bra om din implementering av God Mode bara fungerar (otroligt snabbt) för d ≤ 4; du behöver inte oroa dig för att testa God Mode för d> 4. Åh, och du kan inte implementera God Mode genom att komma ihåg hur initierat styrelsen (som genom att komma ihåg sekvensen av drag som fick ditt program till ett pseudorandom men lösligt tillstånd). Bra försök.

Alla problem upphovsrätt till Harvard University. Fullständiga problemuppsättningar publiceras på: cs50.harvard.edu

Intressanta Artiklar

Redaktionen

Hur man säljer föremål i Runescape
Hur man säljer föremål i Runescape
I RuneScape måste varje spelare veta hur man köper och säljer föremål från andra spelare. Butiker i spelet kan vara dyra och det är inte lika lönsamt att sälja till dem. Butiker har också begränsade varor per dag efter en uppdatering,
Så här ställer du in en anpassad upplösning Windows 10
Så här ställer du in en anpassad upplösning Windows 10
Det är svårt att förneka att Windows 10 har ett brett utbud av alternativ när det gäller skärmupplösning. Att ändra upplösningen till en av förinställningarna är en film, men att ändra den till en inställning som inte är det
39 bästa gratis höstbakgrunder
39 bästa gratis höstbakgrunder
Dessa hösttapeter kommer att föra in utsidan med färgglada bilder av höstlöv, lekfulla ekorrar, runda pumpor och porlande bäckar.
Hur man får pyloner i Terraria
Hur man får pyloner i Terraria
Sedan det släpptes 2011 har Terraria fått några stora uppdateringar, vilket medfört ytterligare spelmekanik och alternativ för spelare att använda. Utvecklarna lade till pyloner med den sista stora utgåvan, 1.4.0, kraftfulla objekt som tillåter spelare
Vad är optimerad batteriladdning på iPhone?
Vad är optimerad batteriladdning på iPhone?
Optimerad batteriladdning är en standardfunktion på iOS som förhindrar full laddning för att minska slitaget när du ansluter telefonen över natten.
Hur man tittar på begränsade videor på YouTube utan att logga in eller proxy
Hur man tittar på begränsade videor på YouTube utan att logga in eller proxy
Ibland, när du vill titta på en video på YouTube, ber den dig att logga in för att fortsätta. Så här kan du snabbt kringgå dessa begränsningar och titta på videon.
Windows 10 års jubileumsuppdatering kan begränsa din internethastighet
Windows 10 års jubileumsuppdatering kan begränsa din internethastighet
Om din internethastighet är långsam efter installation av Windows 10 årsdaguppdatering, försök att inaktivera funktionen för automatisk inställning av fönster enligt beskrivningen i den här artikeln.