{"id":230,"date":"2020-01-14T16:33:56","date_gmt":"2020-01-14T14:33:56","guid":{"rendered":"https:\/\/www.legon.sk\/wp\/?p=230"},"modified":"2020-01-15T12:32:46","modified_gmt":"2020-01-15T10:32:46","slug":"python-zoznam","status":"publish","type":"post","link":"https:\/\/www.legon.sk\/wp\/?p=230","title":{"rendered":"Python: zoznam &#8211; h\u013eadanie maxima, h\u013eadanie prvku."},"content":{"rendered":"<p>zoznam je indexovan\u00e1 \u0161trukt\u00fara, to znamen\u00e1 ka\u017ed\u00fd prvok m\u00e1 svoju poz\u00edciu (adresu) kde sa nach\u00e1dza, je to ako poradov\u00e9 \u010d\u00edslo. Index za\u010d\u00edna na hodnote 0 tz. nie 1 ako by sa n\u00e1m mo\u017eno zdalo logickej\u0161ie<\/p>\n<p>p=[9,5,7,8,6,14,78,2,98] &#8211; vytvorenie 9 \u010dlenn\u00e9ho zoznamu s n\u00e1zvom p<br \/>\np[0] na nultej poz\u00edcii je \u010d\u00edslo 9<br \/>\np[5] na piatej poz\u00edcii je 14<\/p>\n<p>Existuje funkcia max(), ktor\u00e1 vr\u00e1ti najv\u00e4\u010d\u0161\u00ed prvok zoznamu, ale v algoritme si uk\u00e1\u017eeme ako n\u00e1js\u0165 maximum bez tejto funkcie.<\/p>\n<h4>Zistenie najv\u00e4\u010d\u0161ej hodnoty v zozname<\/h4>\n<p>Do pomocnej premennej najvac si d\u00e1me prv\u00fd \u010dlen zoznamu &#8211;<em>p<\/em>. Dan\u00fa premenn\u00fa <em>najvac<\/em> porovn\u00e1vame s \u010fal\u0161\u00edmi \u010dlenmi zoznamu <em>p<\/em>, ak n\u00e1jdeme \u010dlena v zozname <em>p<\/em> v\u00e4\u010d\u0161ieho ako je <em>najvac<\/em>, tak do <em>najvac<\/em> vlo\u017e\u00edme n\u00e1jden\u00fa v\u00e4\u010d\u0161iu hodnotu. Takto pokra\u010dujeme a\u017e do konca zoznamu.<\/p>\n<p>import random #importujeme n\u00e1hodn\u00e9 \u010d\u00edsla<br \/>\np=[] # vytvor\u00edme pr\u00e1zdny zoznam prvkov s n\u00e1zvom p<br \/>\nn=int(input(&#8218;zadaj pocet prvkov&#8216;))<br \/>\nfor i in range(n): # ko\u013eko sme si zvolili prvkov n , to\u013eko kr\u00e1t budeme prid\u00e1va\u0165<\/p>\n<p style=\"padding-left: 30px;\">p.append(random.randrange(100)) #do zoznamu n\u00e1hodn\u00e9 \u010d\u00edslo do ve\u013ekosti 100<\/p>\n<p>print(p) # vyp\u00ed\u0161eme zoznam p<br \/>\nnajvac=p[0] # vytvor\u00edme si premenn\u00fa do ktorej d\u00e1me prv\u00fd \u010dlen zoznamu<br \/>\npn=0 #poz\u00edcia najv\u00e4\u010d\u0161ieho \u010d\u00edsla<\/p>\n<p>for i in range(1, len(p)): #prejdeme v\u0161etk\u00fdmi prvkami zoznamu<\/p>\n<p style=\"padding-left: 30px;\">if najvac &lt; p[i]: #ka\u017ed\u00fd prvok pola porovn\u00e1me s najvac a ak je v\u00e4\u010d\u0161\u00ed ako najvac<\/p>\n<p style=\"padding-left: 60px;\">najvac=p[i] # do najvac d\u00e1me prvok zoznamu, ktor\u00fd je v\u00e4\u010d\u0161\u00ed ako najvac<br \/>\npn=i # do pn d\u00e1me poz\u00edciu, kde sme v\u00e4\u010d\u0161ie \u010d\u00edslo ako najvac na\u0161li<\/p>\n<p>print(&#8218;najvacsia hodnota je {} na pozicii {}&#8216;.format(najvac,pn))<\/p>\n<p>&nbsp;<\/p>\n<h4>H\u013eadanie prvku v zozname<\/h4>\n<p>Zad\u00e1me si krit\u00e9rium h\u013eadania, vytvor\u00edme pomocn\u00fa premenn\u00fa ktor\u00fa nastav\u00edme mimo rozsah indexov zoznamu aktu\u00e1lne na z\u00e1porn\u00fa hodnotu.<\/p>\n<p>Zadan\u00e9 krit\u00e9rium budeme porovn\u00e1va\u0165 so v\u0161etk\u00fdmi prvkami zoznamu, ak n\u00e1jdeme zhodu s niektor\u00fdm prvkom, odlo\u017e\u00edme si index poz\u00edcie kde pri\u0161lo k zhode.<\/p>\n<p>Dan\u00fd algoritmus pokra\u010duje \u010falej a tak n\u00e1jde vlastne v\u00fdskyt poslednej zhody, nie prvej.<\/p>\n<p>Ak n\u00e1m sta\u010d\u00ed prvej zhody, cyklus preh\u013ead\u00e1vania ukon\u010d\u00edme v mieste zhody.<\/p>\n<p>Existuje met\u00f3da zoznamu &#8211; index() t\u00e1to vr\u00e1ti hodnotu indexu prv\u00e9ho v\u00fdskytu.<\/p>\n<p>import random #importujeme n\u00e1hodne \u010d\u00edsla<br \/>\np=[]# vytvor\u00edme pr\u00e1zdny zoznam prvkov s n\u00e1zvom p<br \/>\nn=int(input(&#8218;zadaj pocet prvkov&#8216;))<\/p>\n<p>for i in range(n): # ko\u013eko sme si zvolili prvkov n , to\u013eko kr\u00e1t budeme prid\u00e1va\u0165<\/p>\n<p style=\"padding-left: 30px;\">p.append(random.randrange(100)) #do zoznamu n\u00e1hodn\u00e9 \u010d\u00edslo do ve\u013ekosti 100<\/p>\n<p>print(p)<br \/>\nhl=int(input(&#8218;zadaj kriterium na hladanie &#8211; cislo&#8216;))<br \/>\nphl=-1 #poz\u00edcia h\u013eadan\u00e9ho na za\u010diatok mimo rozsah<\/p>\n<p>for i in range(len(p)):#prejdeme v\u0161etk\u00fdmi prvkami zoznamu<\/p>\n<p style=\"padding-left: 30px;\">if hl == p[i]:# ak sa niektor\u00fd prvok v zozname p rovn\u00e1 h\u013eadan\u00e9mu prvku hl- krit\u00e9rium<\/p>\n<p style=\"padding-left: 60px;\">phl=i # do phl odlo\u017e\u00edm poz\u00edciu kde sa na\u0161la zhoda s h\u013eadan\u00fdm prvkom<\/p>\n<p>if phl &gt;= 0: # ak je poz\u00edcia h\u013eadan\u00e9ho v\u00e4\u010d\u0161ia alebo rovn\u00e1 0, tak sa prvok na\u0161iel a v phl m\u00e1me poz\u00edciu kde sa nach\u00e1dza h\u013eadan\u00fd prvok<\/p>\n<p style=\"padding-left: 30px;\">print(&#8218;nachadza sa na pozicii {}&#8216;.format(phl))<\/p>\n<p>else:<\/p>\n<p style=\"padding-left: 30px;\">print(&#8218;nenachadza sa &#8218;)<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>zoznam je indexovan\u00e1 \u0161trukt\u00fara, to znamen\u00e1 ka\u017ed\u00fd prvok m\u00e1 svoju poz\u00edciu (adresu) kde sa nach\u00e1dza, je to ako poradov\u00e9 \u010d\u00edslo. Index za\u010d\u00edna na hodnote 0 tz. nie 1 ako by sa n\u00e1m mo\u017eno zdalo logickej\u0161ie p=[9,5,7,8,6,14,78,2,98] &#8211; vytvorenie 9 \u010dlenn\u00e9ho zoznamu s n\u00e1zvom p p[0] na nultej poz\u00edcii je \u010d\u00edslo 9 p[5] na piatej poz\u00edcii &hellip; <a href=\"https:\/\/www.legon.sk\/wp\/?p=230\" class=\"more-link\">Pokra\u010dova\u0165 v \u010d\u00edtan\u00ed: <span class=\"screen-reader-text\">Python: zoznam &#8211; h\u013eadanie maxima, h\u013eadanie prvku.<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[16],"tags":[21,20,11,17,19],"class_list":["post-230","post","type-post","status-publish","format-standard","hentry","category-python","tag-hladanie","tag-maximum","tag-pole","tag-python","tag-zoznam"],"_links":{"self":[{"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=\/wp\/v2\/posts\/230","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=230"}],"version-history":[{"count":8,"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=\/wp\/v2\/posts\/230\/revisions"}],"predecessor-version":[{"id":239,"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=\/wp\/v2\/posts\/230\/revisions\/239"}],"wp:attachment":[{"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=230"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=230"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.legon.sk\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=230"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}