Jifunze zaidi

Sura ya 1: Kuanzisha Karel Robot


Katika miaka ya 1970, mwanafunzi aliyehitimu Stanford aitwaye Rich Pattis aliamua kuwa itakuwa vigumu kufundisha msingi wa programu kama wanafunzi wanaweza kujifunza mawazo ya msingi katika mazingira rahisi bila ya matatizo ambayo yana lugha nyingi za programu. Rich imeanzisha programu ya utangulizi ambayo wanafunzi hufundisha robot kutatua matatizo rahisi. Robot hiyo ilikuwa jina la Karel, baada ya mchezaji wa Czech Karel Čapek , ambao 1923 kucheza RUR ( Robots ya Universal ya Rossum ) alitoa neno robot kwa lugha ya Kiingereza.

Karel Robot ilikuwa mafanikio kabisa. Karel imetumika katika kozi za sayansi ya utangulizi duniani kote na imefundishwa kwa mamilioni ya wanafunzi. Vizazi vingi vya wanafunzi wa Stanford vilijifunza jinsi programu inavyofanya kazi na Karel, na bado ni kuanzishwa kwa upole kwa kusajiliwa kutumika huko Stanford.

Karel ni nini?

Karel ni robot rahisi sana wanaoishi katika ulimwengu rahisi sana. Kwa kumpa Karel amri ya amri, unaweza kuiongoza kufanya kazi fulani ndani ya ulimwengu wake. Utaratibu wa kutaja amri hizo huitwa programu . Mwanzoni, Karel anaelewa tu idadi ndogo sana ya amri zilizopangwa, lakini sehemu muhimu ya mchakato wa programu ni kufundisha maagizo mapya ya Karel ambayo huongeza uwezo wake.

Programu za Karel zina muundo sawa na zinahusisha mambo sawa ya msingi kama Java , kubwa lugha ya programu . Tofauti kubwa ni kwamba lugha ya Karel ya programu ni ndogo mno na kama maelezo hayo ni rahisi sana. Hata hivyo, utagundua kuwa kutatua tatizo kunaweza kuwa vigumu.

Kwa kuanzia na Karel, unaweza kuzingatia kutatua matatizo tangu mwanzo. Kutatua tatizo ni kiini cha programu. Na kwa sababu Karel anahimiza mawazo na ubunifu, unaweza kuwa na furaha nyingi njiani.

Dunia ya Karel

Dunia ya Karel inafafanuliwa na mistari run usawa (mashariki-magharibi) na nguzo run ning vertically (kaskazini-kusini). Mfululizo wa safu na safu inaitwa kona. Karel inaweza kuwekwa kwenye pembe na lazima inakabiliwa na moja ya maelekezo ya kiwango cha dira nne (kaskazini, kusini, mashariki, magharibi). Sampuli ya dunia ya Karel inavyoonyeshwa hapa chini. Hapa Karel iko kwenye kona ya safu ya 1 na safu ya 1, inakabiliwa mashariki.

Vipengele vingine vingi vya ulimwengu wa Karel vinaweza kuonekana katika mfano huu. Kitu mbele ya Karel ni koni . Kama ilivyoelezwa katika kitabu cha Rich Pattis, koni s ni "mbegu za plastiki ambazo hutoa kelele ya utulivu." Karel anaweza tu kutambua koni ikiwa iko kwenye kona moja. Mistari imara katika mchoro ni kuta. Majumba hutumika kama vikwazo ndani ya ulimwengu wa Karel. Karel hawezi kutembea kupitia kuta na lazima aende karibu nao. Dunia ya Karel daima imefungwa na kuta kando kando, lakini dunia inaweza kuwa na vipimo tofauti kulingana na shida maalum Karel anahitaji kutatua.

Amri za Karel

Wakati Karel anatumwa kutoka kiwanda, inachukua amri ndogo sana ya amri:
AmriMaelezo
move(); move Karel hadi move mbele moja. Karel hawezi kujibu move() amri ikiwa kuna ukuta unaozuia njia yake.
geukaKushoto(); Anauliza Karel kugeuka digrii 90 kwa kushoto (counterclockwise).
chukuaKoni(); Anataka Karel kuchukua moja koni kutoka kona na kuhifadhi koni katika koni yake koni , ambayo inaweza kushikilia idadi usio na koni s. Karel hawezi kujibu chukuaKoni() amri isipokuwa kuna koni kwenye kona ya sasa.
wekaKoni(); Anaomba Karel kuchukua koni kutoka kwa mfuko wake koni na kuiweka kwenye kona ya sasa. Karel hawezi kujibu wekaKoni() amri isipokuwa kuna koni s katika mfuko wake koni .

Hebu jaribu amri. Tumia vifungo bomba ili kupata "ulimwengu" ili kufanana na "lengo":

Dunia:
Lengo:

Jozi la mabano ya tupu ambayo inaonekana katika kila amri hizi ni sehemu ya syntax ya kawaida iliyoshirikiwa na Karel na Java na inatumiwa kutaja kuomba kwa amri. Hatimaye, mipango unayoandika itajumuisha maelezo ya ziada katika nafasi kati ya mahusiano, lakini habari kama hizo si sehemu ya dunia ya kale ya Karel. Kwa hiyo mabanki haya hayatakuwa na mipango ya kiwango cha Karel, lakini lazima ukumbuke kuziweka nao hata hivyo.

Ikiwa Karel anajaribu kufanya kitu kinyume cha sheria, kama vile kuhamia ukuta au kukataa haipo koni , hali ya kosa hutokea.

Amri za Karel, hazijitekelezwa peke yao. Badala yake, unahitaji kuziweka kwenye programu ya Karel. Utakuwa na nafasi ya kuona programu rahisi za Karel katika Sura ya 2!


Sura inayofuata