Ako napísať algoritmus v programovacom jazyku?
1. Určte problém alebo úlohu, ktorú chcete splniť.
2. Rozhodnite počiatočný bod.
3. Zistite koncový bod.
4. Vytvorte zoznam krokov, ktoré nastanú medzi štartom a koncom.
5. Podľa potreby rozložte kroky.
6. Skontrolujte algoritmus a v prípade potreby ho zmeňte.
Ako napíšem algoritmus v programovacom jazyku?
Algoritmus je súbor krokov navrhnutých na vyriešenie problému alebo splnenie úlohy. Algoritmy sú zvyčajne napísané v pseudokóde alebo v kombinácii vášho hovoriaceho jazyka a jedného alebo viacerých programovacích jazykov pred písaním programu. Táto príručka vás naučí zostaviť algoritmus, ktorý vám pomôže začať s aplikáciou.
- 1Určte výsledok svojho kódu. Aký konkrétny problém chcete vyriešiť alebo úlohu, ktorú chcete splniť? Keď máte solídnu predstavu o tom, čo chcete dosiahnuť, môžete určiť kroky, ktoré bude potrebné na dosiahnutie tohto cieľa.
- 2Rozhodnite sa o východiskovom bode. Nájdenie počiatočného a konečného bodu je rozhodujúce pre zostavenie zoznamu krokov v tomto procese. Ak chcete určiť východiskový bod, určite odpovede na tieto otázky:
- Aké údaje/vstupy sú k dispozícii?
- Kde sa tieto údaje nachádzajú?
- Aké vzorce platia pre daný problém?
- Aké sú pravidlá práce s dostupnými údajmi?
- Ako spolu hodnoty údajov súvisia?
- 3Nájdite koncový bod algoritmu. Rovnako ako v prípade počiatočného bodu, aj vy môžete nájsť koncový bod svojho algoritmu zameraním sa na tieto otázky:
- Aké skutočnosti sa z tohto procesu dozvieme?
- Čo sa zmení od začiatku do konca?
- Čo bude pridané alebo už nebude existovať?
Nie je to presne algoritmus vyžadujúci otázku, ale napíšem vám príklad kódu, ktorý by mohol dosiahnuť váš cieľ. - 4Vytvorte si zoznam krokov od začiatku do konca. Začnite širokými krokmi. Aby sme použili príklad zo skutočného sveta, povedzme si, že vaším cieľom je dať si na večeru lasagne. Rozhodli ste sa, že východiskovým bodom je nájsť recept a že konečným výsledkom bude, že lasagne budete mať úplne uvarené a pripravené na konzumáciu do 19:00. Vaše kroky môžu vyzerať takto:
- Vyhľadajte recept na internete.
- Hľadaj suroviny, ktoré už v kuchyni máš.
- Vytvorte si v obchode zoznam surovín, ktoré budete potrebovať.
- Nakúpte chýbajúce suroviny.
- Vrátiť sa domov.
- Pripravte si lasagne.
- Vyberte lasagne z rúry.
- 5Rozhodnite sa, ako splníte každý krok. Teraz, keď máte podrobný prehľad, je načase premýšľať o tom, ako by ste mohli jednotlivé kroky kódovať. Aký jazyk budete používať? Aké zdroje sú k dispozícii? Aký je najefektívnejší spôsob, ako dosiahnuť každý krok v tomto jazyku? Začleňte časť z tohto kódu do svojho algoritmu. Rozbaľte každý krok, kým neuvidíte celý proces.
- Napríklad prvým krokom v našom lasagne algoritme je Hľadanie receptu online. Čo však zahŕňa toto hľadanie? Byť špecifický. Napríklad:
- Zapnite počítač.
- Skontrolujte, či ste pripojení k internetu. Pripojte sa na internet, ak ešte nie ste.
- Otvorte webový prehliadač.
- Zadajte hľadané výrazy.
- Kliknite na odkaz na recept.
- Zistite, či recept vyhovuje vašim potrebám.
- Odfiltrujte recepty, ktoré nie sú vegetariánske.
- Uistite sa, že recept obsahuje najmenej 5 porcií.
- Opakujte niektoré z týchto krokov, kým nenájdete ten správny recept.
- Zapnite počítač.
- Zvážte zdroje, ktoré máte k dispozícii, napríklad schopnosti systému, pre ktorý vyvíjate program. V prípade lasagní predpokladáme, že osoba vyrábajúca lasagne vie, ako vyhľadávať na internete, obsluhovať rúru atď.
- Napríklad prvým krokom v našom lasagne algoritme je Hľadanie receptu online. Čo však zahŕňa toto hľadanie? Byť špecifický. Napríklad:
- 6Pozrite sa na algoritmus. Teraz, keď ste napísali svoj algoritmus, je čas vyhodnotiť proces. Váš algoritmus je navrhnutý tak, aby dosiahol niečo konkrétne, a budete ho potrebovať na spustenie programu. Položte si nasledujúce otázky a podľa potreby sa obráťte na každú z nich:
- Rieši algoritmus problém/plní úlohu?
- Má jasne definované vstupy a výstupy?
- Mal by byť konečný cieľ predefinovaný tak, aby bol všeobecnejší? Viac špecifický?
- Je možné niektorý z krokov zjednodušiť?
- Je zaručené, že sa algoritmus skončí so správnym výsledkom?
- Pozrite sa na existujúce algoritmy, kde nájdete nápady na písanie vlastných.
- Použite rýchlo vypočítateľné iterácie.
- Pri kódovaní sa zamerajte na efektivitu.
- Nezabudnite ukončiť, inak kód zlyhá.
Prečítajte si tiež: Ako vytvoriť kocku v OpenGL?
Otázky a odpovede
- Čo by som urobil, aby mi počítačový program automaticky poskytol súčet dvoch čísel?Záleží na tom, či sú čísla určené alebo ich zadá užívateľ. Vytvoríte dve premenné numberOne a numberTwo a jednoducho ich sčítate numberOne+numberTwo.
- Aké typy vecí by som mal urobiť, aby som vytvoril algoritmus, ktorý nájde stratených blízkych v utečeneckých táboroch?Databáza a funkcia by stačili oveľa jednoduchšie. Napísal som nejaký základný ukážkový kód v Pythone ako príklad, ktorý vyzerá takto: print ("Zadajte svoje meno") str (input ()) = názov print ("Zadajte umiestnenie tábora") str (input ()) = camp_location # predchádzajúca časť vytvára premenné, ktoré môžem teraz uložiť do zoznamu name_and_camp_location = [name, camp_location] #tento riadok ukladá meno a umiestnenie tábora do zoznamu toto je koniec mojej databázy príklad def reunite (name) if name == 'example name' return 'example camp_location' #to je môj základný príklad funkcie, ktorá by umožnila priniesť camp_location vašich blízkych do veľkého zariadenia alebo do inej oblasti, ak bude uložené meno a umiestnenie.
- Čo je to algoritmus na nájdenie priemerného veku skupiny 10 ľudí?Príklad kódu, ručne písaný algoritmus v tlači v Pythone („zadajte vek desiatich ľudí jeden po druhom, pokračujte zadaním v poriadku“) p1 = int (input (() print („next“) p2 = int (input (() print ("next") p3 = int (input (() print ("next") p4 = int (input (() print ("next") p5 = int (input (() print ("next") p6 = int (input (() print ("next") p7 = int (input (() print ("next") p8 = int (input (() print ("next") p9 = int (input (() print („ďalší“) p10 = int (vstup (() tlač („Prihlásených desať ľudí, vek skupiny je nasledujúci“ + (p1 + p2 + p3 + p4 + p5 + p6 + p7 + p8 + p9 + p10)/10) #Pravdepodobne by ste to mali ručne zadať do nečinnosti, nečinnosť nemá rada kopírovanie kódu na vkladanie.
- Ako vytvorím algoritmus súčtu dvoch čísel?Ak chcete pridať dve čísla v programovacom jazyku, použite medzi nimi "+". V Pythone (programovací jazyk) by to vyzeralo takto: x = 10, y = 13; tlač x + r.
- Čo mám urobiť, aby som vytvoril kód, ktorý vytvorí frázu „Ahoj, ako sa máš?“ sám?Python je ľahko použiteľný kód na vytváranie textu. Príklad: print: Ahoj, ako sa máš? Potom súbor uložte a po otvorení zobrazí daný text.
- Ako vytvorím algoritmus na pridanie dvoch zlomkov?Uvažujme dve zlomky, a/b a c/d. Ak ich chcete pridať, ich menovatelia musia byť rovnakí. Aby sme zaistili spoločného menovateľa, môžeme menovatele znásobiť a vytvoriť tak nového menovateľa, v tomto prípade b*d. Ale čímkoľvek vynásobíme spodnú časť zlomku, musíme vynásobiť aj hornú časť. Po dokončení týchto dvoch operácií teda frakcie, ktoré pridávame, sú: (a*d)/(b*d) a (c*b)/(d*b). Výsledkom sčítania týchto zlomkov je (a*d + c*b)/(d*b).
- Aký je rozdiel medzi algoritmom a pseudokódom?Algoritmus je postup pri riešení daného problému krok za krokom, zatiaľ čo pseudokód je spôsob písania algoritmu.
- Existuje nejaký spôsob, ako to pochopiť jednoduchšie? Mám 15 rokov a stále sa snažím porozumieť pojmom.Práve som začal s programovaním a moji vysokoškolskí profesori sú veľmi vágni a chápanie pojmov je veľmi ťažké. Najlepšie je, keď si budete naďalej hľadať podmienky na Googli, to je to, čo robím a do určitej miery to funguje.
- Ako napíšem algoritmus, ktorý 7 je väčší ako 5?Syntax sa môže v rôznych jazykoch líšiť, ale napísať podmienený 7 je väčší ako 5, by s najväčšou pravdepodobnosťou jednoducho bolo toto: 7> 5.
- Ako vyviniem algoritmus na zadanie ľubovoľného čísla a vytlačenie prvých piatich násobkov?Nie je to presne algoritmus vyžadujúci otázku, ale napíšem vám príklad kódu, ktorý by mohol dosiahnuť váš cieľ. (príklad kódu je v pythone): print ("Zadajte číslo!") int (input ()) = num print (num*1 + "" + num*2 + "" + num*3 + "" + num *4 + "" + počet*5)
Nezodpovedané otázky
- Aký je vývojový diagram koša na odpad, ktorý môže triediť odpadky na biologicky rozložiteľné alebo biologicky rozložiteľné?
- Do ktorého počítačového softvéru mám napísať svoj algoritmus, ak používam Windows 7?
- Ako napíšem algoritmus v programovacom jazyku?
- Ako napíšem algoritmus na prevod binárnej na desatinnú?