DAVID Malan: Við skulum skrifa forrit sem felur í sér glugga og hring með hringur skoppar fram og til baka burt vinstri og hægri brúnir þeim glugga. Til að gera það, við skulum nota Stanford Portable Library, og við skulum fyrst fela gevents.h svo að við getum hlusta á mús hreyfing. Skulum fela þá gobjects.h þannig að við getum lýst hlutum eins ovals eða hringi, í raun. Og þá skulum fela gwindow.h þannig að við höfum myndrænt glugga fyrir allt. Skulum lýsa helstu á venjubundinn hátt. Og við skulum nú lýsa og ræst eða búa þessi gluggi, GWindow - og við munum hringja í breytilega glugga - fær newGWindow. Og við munum geðþótta gera það 320 punktar um 240 punkta. Skulum næst ræst hring. En að ræst þennan hring, við þurfum að gera dálítið meiri vinnu. Einkum skulum fylla í þessum hring þannig að allt sem er svart og ekki bara útlista stað. GOval - við munum kalla það hring - fær newGOval. Við munum setja þetta sporöskjulaga á 0, 110, og við munum gera sporöskjulaga 20 punktar á breidd með 20 punktar á hæð - með öðrum orðum, þvermál 20 eða radíus 10. Skulum nú setja lit sem hring að vera quote, unquote, "svart". Skulum nú sett það fyllast með því að tilgreina satt. Og nú loks, við skulum bæta hringinn til glugga sem hér segir, þar sem síðarnefnda er bætt út í hið fyrrnefnda. Skulum nú lýsa yfir tvöfalt. Við munum kalla það hraða. Og nokkuð geðþótta, við skulum segja að hraða þessa hrings verður 2,0, í öðrum orðum, 2 punktar fyrir hverja einingu sem er. Og nú skulum vísvitandi valdið óendanlega lykkju. Svo hvernig á að gera þennan hring hopp fram og til baka? Jæja við skulum gera ráð fyrir innan þessa lykkju sem fyrir hverja einingu tíma, erum við fara að flytja hringnum bara smá hluti byggðar á hraða hennar 2 dílar hverja einingu af tíma. En stöðugt, við erum að fara til verða að athuga hvort hringurinn er að snerta hægri brún skjásins eða vinstri brún skjásins, því ef svo er, við þarft það til hopp, svo að segja. Hvernig á að framkvæma Hugtakið skoppar? Jæja, ef við erum að fara á 2 dílar á rétt á tímaeiningu, til að hopp burt hægri brún, við getum einfaldlega snúa að til þess að vera neikvæð 2 punktar á einingu tíma, þannig negating hraðinn. Svo í raun, skoppandi er tiltölulega einföld. Skulum fyrst fara hringinn með þetta margir punktar á x-ás, með þessari marga pixels eftir y-ásnum. Með öðrum orðum, við viljum ekki að það að fara eftir y-ás yfirleitt. Við viljum aðeins það að hopp til baka fram og til vinstri og hægri. Og við skulum athuga nú á þessari lykkju ef x-hnit hringsins plús breidd hringsins er meiri en, eða jöfn Breidd á glugganum - í öðrum orðum, ef staðsetning hringsins er auk breidd hringsins sjálft er nú framhjá brún um gluggann, við myndum betri andstæða hraða okkar - hraða fær neikvæð hraða, þar með ósvífni jákvætt til A neikvæð eða neikvæð að jákvæð. En hvað ef hringurinn er áhrifamikill frá hægri til vinstri og það hits því vinstri brún? Með öðrum orðum, ef x-hnit hringurinn er nú minna en eða jafnt og 0, við skulum fara á undan og aftur invert hraða okkar. Svo hvers vegna ég hef ekki bætt í breidd hringsins þessarar tíma, eins og ég gerði áður? Jæja, hafðu í huga að hnit hlutar eru skilgreind með efst í vinstra horn hans, ekki um miðju hennar. Og svo þegar hringurinn er áhrifamikill frá vinstri til hægri, þurfum við að athuga hvort hægri brún hring hefur staðist hægri brún glugga. Svo til að reikna út hvað það er, að við höfum til að fá x-hnit hring auk breidd hring til að færa okkur frá efstu vinstra horn, á áhrifaríkan hátt, til efra hægra horninu. Þegar hringurinn er áhrifamikill frá hægri til vinstri, á meðan, við þurfum ekki að standa við slíka viðbót, vegna þess að efst í vinstra horninu á hringnum er þegar gildi við munum fá frá þinn fá x. Skulum nú færa boltann. Skulum nú spara, safna saman og keyra þetta program, gera hopp,. / hopp. Og þar sem við erum með forrit. En hringurinn er að flytja svo fjári hratt, það er nánast ómögulegt að sjá hvað er í raun að fara á. Svo skulum alveg forritið valdi því smella á X efst í hægra horn hér. Skulum nú fara aftur í the uppspretta merkjamál og hægur hlutur dúnn a lítill hluti. Með öðrum orðum, innan þessa óendanlega lykkja, frekar en bara Færa og færa og aftur auglýsingin nauseum skulum sitja lengi fyrir nokkrum millisekúndur áður en farið er að færa aftur. Einkum skulum fara til the botn af óendanlega lykkju hér og einfaldlega hlé fyrir, segjum, 10 millisekúndur á hverri ítrun. Skulum nú laun og aftur keyrir hopp. Og nú sjáum við miklu meira sanngjarnt framkvæmd, þar sem við getum séð hring sannarlega skoppandi á vinstri og hægri brún.