Struktura i interpretacija računalnih programa - besplatni tečaj iz Hexleta, obuka 9 sati, datum 27.11.2023.
Miscelanea / / November 28, 2023
- 17 lekcija (video i/ili tekst)
- 4 vježbe u simulatoru
- Dodatni materijali
- Pomoć u "Raspravama"
Što ćeš naučiti
- Rad s programskim jezikom Scheme (Lisp).
- Stvorite apstrakcije
- Implementirati najveći zajednički djelitelj, testiranje primarnosti i druge algoritme
- Izvršite rekurzivne izračune
Naučit ćete više o primitivnim izrazima, kombinacijama i apstrakcijama, postupcima i apstrakcijama koje one generiraju. Kao rezultat, naučit ćete kako implementirati algoritme za pronalaženje najvećeg zajedničkog djelitelja i provjeru primarnosti, izgraditi procedure koristeći Lambda, raditi rekurzivne izračune i pronaći korijen pomoću metode Newton. Ovaj tečaj je koristan ako želite steći dublje razumijevanje osnova programiranja. Znanje iz ovog tečaja pomaže programerima da razviju svoje vještine programiranja. Ovaj tečaj je prikladan i za iskusne programere i za one koji tek počinju učiti programiranje. Za polaganje potrebno je samo znanje iz matematike i programiranja iz školskog programa.
SIKP: Što je informatika?
Upoznati pojam informatike.
SIKP: Primitivni izrazi, kombinacija i apstrakcija
Upoznati Lisp jezik, razmotriti primitivne izraze, kombinacije, procedure i apstrakcije.
SIKP: Procedure kao apstrakcije
Razmotrite važan pristup programiranju: procedure kao apstrakcije.
SICP: Postupci i procesi koje oni generiraju 1
Pregled postupaka i procesa, linearna rekurzija i iteracija.
SICP: Postupci i procesi koje oni generiraju 2
Pregled postupaka i procesa, linearna rekurzija i iteracija.
SIKP: Rekurzija stabla
Kao primjer rekurzije stabla, razmislite o izračunavanju niza Fibonaccijevih brojeva u kojem je svaki broj zbroj prethodna dva.
SIKP: Redovi rasta
Upoznajte se s konceptom redoslijeda rasta, koji daje opću procjenu resursa potrebnih procesu kako se njegovi ulazni podaci povećavaju.
SIKP: Potenciranje
Razmotrite problem podizanja broja na potenciju kako biste bolje razumjeli redoslijede rasta
GICP: Najveći zajednički djelitelj
Razmotrite algoritam za pronalaženje najvećeg zajedničkog djelitelja i implementirajte ga u programskom jeziku Scheme (LISP).
SICP: Test jednostavnosti
Implementirati algoritam za provjeru primarnosti broja u programskom jeziku Scheme (LISP).
SICP: Procedure kao argumenti
Razmotrite važnu značajku jezika: mogućnost prosljeđivanja procedure kao argumenta drugoj proceduri.
SIKP: Postupci izgradnje pomoću lambda
Naučite kreirati procedure u hodu koristeći lambda.
SICP: Stvaranje lokalnih varijabli
Naučite kreirati lokalne varijable u procedurama.
SICP: Metoda polovične podjele
Razmislite o primjeni metode poluintervala, jednostavnog, ali snažnog načina za pronalaženje korijena jednadžbe f(x) = 0, gdje je f kontinuirana funkcija.
SIKP: Nalaženje fiksnih točaka funkcija
Razmotrite pronalaženje fiksnih točaka funkcija. Broj x naziva se fiksna točka funkcije f ako zadovoljava jednadžbu f (x) = x.
SIKP: Postupci kao povratne vrijednosti
Postignite još veću izražajnu snagu stvaranjem procedura čije su povratne vrijednosti same procedure.
SICP: Newtonova metoda
Razmotrite i implementirajte opći slučaj pronalaženja korijena pomoću Newtonove metode.
Dodatni materijali
Članci i videozapisi koje je pripremio Hexlet tim. Pomoći će vam da dublje zaronite u temu tečaja