{"id":207,"date":"2019-04-09T06:41:24","date_gmt":"2019-04-09T06:41:24","guid":{"rendered":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/?post_type=chapter&#038;p=207"},"modified":"2019-06-13T18:46:11","modified_gmt":"2019-06-13T18:46:11","slug":"naidisulesanne-2-parkla","status":"publish","type":"chapter","link":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/chapter\/naidisulesanne-2-parkla\/","title":{"raw":"Kontrollt\u00f6\u00f6 n\u00e4idis\u00fclesanne 2: Parkla","rendered":"Kontrollt\u00f6\u00f6 n\u00e4idis\u00fclesanne 2: Parkla"},"content":{"raw":"<h2>\u00dclesanne. Parkla<\/h2>\r\nFailis <em>parkla.txt<\/em> on kujutatud ristk\u00fclikukujulise parkla pealtvaade. Failis olevad m\u00e4rgid t\u00e4histavad parkimiskohtade staatust:\r\n\r\nX h\u00f5ivatud parkimiskoht (esialgu failis ei esine, tekib programmi t\u00f6\u00f6 k\u00e4igus)\r\n\r\nP vaba parkimiskoht\r\n\r\n- s\u00f5idutee, millel ei saa parkida\r\n\r\n&nbsp;\r\n\r\nN\u00e4ide faili sisust:\r\n<pre>PPPP-P\r\n-----P\r\nPPPP-P<\/pre>\r\nKirjuta programm, mis teeb j\u00e4rgnevat.\r\n\r\nK\u00f5igepealt koostab programm faili p\u00f5hjal kahem\u00f5\u00f5tmelise j\u00e4rjendi ning v\u00e4ljastab selle ekraanile. \u00dclaltoodud faili korral:\r\n<pre>[['P', 'P', 'P', 'P', '-', 'P'],\r\n['-', '-', '-', '-', '-', 'P'],\r\n['P', 'P', 'P', 'P', '-', 'P']]<\/pre>\r\nJ\u00e4rjend on siin mitmel real illustreerimiseks, programm v\u00f5ib selle \u00fchel real v\u00e4ljastada.\r\n\r\n\u00dclemises vasakus nurgas asuva parkimiskoha koordinaadid on (0, 0), selle parempoolse naabri koordinaadid (0, 1) jne.\r\n\r\nSeej\u00e4rel k\u00fcsib programm kasutajalt j\u00e4rjest tegevusi, kuni valitakse programmi sulgemine.\r\n\r\nV\u00f5imalikud valikud on j\u00e4rgmised:\r\n<ol>\r\n \t<li>Uus parkimine\r\n<ul>\r\n \t<li>Kasutaja sisestab parkija nime ning parkimiskoha koordinaadid (lahendaja enda valitud viisil).<\/li>\r\n \t<li>Kui parkimiskoht on vaba, siis j\u00e4etakse <strong>s\u00f5nastikku<\/strong> meelde, mis koht sellele parkijale kuulub ning kahem\u00f5\u00f5tmelises j\u00e4rjendis muudetakse vastav koht h\u00f5ivatuks.<\/li>\r\n \t<li>Kui koht on juba h\u00f5ivatud v\u00f5i sellel kohal on s\u00f5idutee, siis teavitatakse kasutajat, et parkida ei saa. S\u00f5nastikku ja kahem\u00f5\u00f5tmelist j\u00e4rjendit ei muudeta.<\/li>\r\n<\/ul>\r\n<\/li>\r\n \t<li>Parkija asukoha leidmine\r\n<ul>\r\n \t<li>Kasutaja sisestab parkija nime ning programm v\u00e4ljastab koordinaadid, kus parkija auto asub.<\/li>\r\n \t<li>V\u00f5ib eeldada, et sisestatud parkija on olemas ja igal parkijal on ainult \u00fcks koht h\u00f5ivatud.<\/li>\r\n<\/ul>\r\n<\/li>\r\n \t<li>Parkimise l\u00f5petamine\r\n<ul>\r\n \t<li>Kasutaja sisestab parkija nime.<\/li>\r\n \t<li>Nimele vastav parkimiskoht m\u00e4rgitakse kahem\u00f5\u00f5tmelises j\u00e4rjendis vabaks ning vastav kirje kustutatakse s\u00f5nastikust.<\/li>\r\n \t<li>V\u00f5ib eeldada, et sisestatud parkija on olemas.<\/li>\r\n<\/ul>\r\n<\/li>\r\n \t<li>Parkla seisu v\u00e4ljastamine\r\n<ul>\r\n \t<li>Kahem\u00f5\u00f5tmeline j\u00e4rjend v\u00e4ljastatakse ekraanile.<\/li>\r\n<\/ul>\r\n<\/li>\r\n \t<li>Programmi t\u00f6\u00f6 l\u00f5petamine\r\n<ul>\r\n \t<li>Kahem\u00f5\u00f5tmeline j\u00e4rjend v\u00e4ljastatakse ekraanile.<\/li>\r\n \t<li>Parkimisplatsi uus seis kirjutatakse faili <em>uus_parkla.txt<\/em><\/li>\r\n \t<li>Programm teatab t\u00f6\u00f6 l\u00f5petamisest ja l\u00f5petab t\u00f6\u00f6.<\/li>\r\n<\/ul>\r\n<\/li>\r\n<\/ol>\r\n<h3>N\u00e4ide<\/h3>\r\nValitud on viis, kus tegevused sisestatakse nende numbrite abil ja koordinaadid sisestatakse kahekaupa koma ja t\u00fchikuga eraldatult.\r\n<pre>[['P', 'P', 'P', 'P', '-', 'P'], ['-', '-', '-', '-', '-', 'P'], ['P', 'P', 'P', 'P', '-', 'P']]\r\nPalun valige tegevus: 1\r\nPalun sisestage parkija nimi: Kersti\r\nPalun sisestage parkimiskoha koordinaadid: 1, 0\r\nSellele kohale parkida ei saa.\r\nPalun valige tegevus: 1\r\nPalun sisestage parkija nimi: J\u00fcri\r\nPalun sisestage parkimiskoha koordinaadid: 0, 3\r\nPalun valige tegevus: 4\r\n['P', 'P', 'P', 'X', '-', 'P'], ['-', '-', '-', '-', '-', 'P'], ['P', 'P', 'P', 'P', '-', 'P']]\r\nPalun valige tegevus: 1\r\nPalun sisestage parkija nimi: Heiki\r\nPalun sisestage parkimiskoha koordinaadid: 0, 3\r\nSellele kohale parkida ei saa.\r\nPalun valige tegevus: 2\r\nPalun sisestage parkija nimi: J\u00fcri\r\n0, 3\r\nPalun valige tegevus: 3\r\nPalun sisestage parkija nimi: J\u00fcri\r\nPalun valige tegevus: 4\r\n[['P', 'P', 'P', 'P', '-', 'P'], ['-', '-', '-', '-', '-', 'P'], ['P', 'P', 'P', 'P', '-', 'P']]\r\nPalun valige tegevus: 1\r\nPalun sisestage parkija nimi: Toomas\r\nPalun sisestage parkimiskoha koordinaadid: 2, 0\r\nPalun valige tegevus: 5\r\n[['P', 'P', 'P', 'P', '-', 'P'], ['-', '-', '-', '-', '-', 'P'], ['X', 'P', 'P', 'P', '-', 'P']]\r\nProgramm kirjutas seisu faili ja l\u00f5petas t\u00f6\u00f6<\/pre>","rendered":"<h2>\u00dclesanne. Parkla<\/h2>\n<p>Failis <em>parkla.txt<\/em> on kujutatud ristk\u00fclikukujulise parkla pealtvaade. Failis olevad m\u00e4rgid t\u00e4histavad parkimiskohtade staatust:<\/p>\n<p>X h\u00f5ivatud parkimiskoht (esialgu failis ei esine, tekib programmi t\u00f6\u00f6 k\u00e4igus)<\/p>\n<p>P vaba parkimiskoht<\/p>\n<p>&#8211; s\u00f5idutee, millel ei saa parkida<\/p>\n<p>&nbsp;<\/p>\n<p>N\u00e4ide faili sisust:<\/p>\n<pre>PPPP-P\r\n-----P\r\nPPPP-P<\/pre>\n<p>Kirjuta programm, mis teeb j\u00e4rgnevat.<\/p>\n<p>K\u00f5igepealt koostab programm faili p\u00f5hjal kahem\u00f5\u00f5tmelise j\u00e4rjendi ning v\u00e4ljastab selle ekraanile. \u00dclaltoodud faili korral:<\/p>\n<pre>[['P', 'P', 'P', 'P', '-', 'P'],\r\n['-', '-', '-', '-', '-', 'P'],\r\n['P', 'P', 'P', 'P', '-', 'P']]<\/pre>\n<p>J\u00e4rjend on siin mitmel real illustreerimiseks, programm v\u00f5ib selle \u00fchel real v\u00e4ljastada.<\/p>\n<p>\u00dclemises vasakus nurgas asuva parkimiskoha koordinaadid on (0, 0), selle parempoolse naabri koordinaadid (0, 1) jne.<\/p>\n<p>Seej\u00e4rel k\u00fcsib programm kasutajalt j\u00e4rjest tegevusi, kuni valitakse programmi sulgemine.<\/p>\n<p>V\u00f5imalikud valikud on j\u00e4rgmised:<\/p>\n<ol>\n<li>Uus parkimine\n<ul>\n<li>Kasutaja sisestab parkija nime ning parkimiskoha koordinaadid (lahendaja enda valitud viisil).<\/li>\n<li>Kui parkimiskoht on vaba, siis j\u00e4etakse <strong>s\u00f5nastikku<\/strong> meelde, mis koht sellele parkijale kuulub ning kahem\u00f5\u00f5tmelises j\u00e4rjendis muudetakse vastav koht h\u00f5ivatuks.<\/li>\n<li>Kui koht on juba h\u00f5ivatud v\u00f5i sellel kohal on s\u00f5idutee, siis teavitatakse kasutajat, et parkida ei saa. S\u00f5nastikku ja kahem\u00f5\u00f5tmelist j\u00e4rjendit ei muudeta.<\/li>\n<\/ul>\n<\/li>\n<li>Parkija asukoha leidmine\n<ul>\n<li>Kasutaja sisestab parkija nime ning programm v\u00e4ljastab koordinaadid, kus parkija auto asub.<\/li>\n<li>V\u00f5ib eeldada, et sisestatud parkija on olemas ja igal parkijal on ainult \u00fcks koht h\u00f5ivatud.<\/li>\n<\/ul>\n<\/li>\n<li>Parkimise l\u00f5petamine\n<ul>\n<li>Kasutaja sisestab parkija nime.<\/li>\n<li>Nimele vastav parkimiskoht m\u00e4rgitakse kahem\u00f5\u00f5tmelises j\u00e4rjendis vabaks ning vastav kirje kustutatakse s\u00f5nastikust.<\/li>\n<li>V\u00f5ib eeldada, et sisestatud parkija on olemas.<\/li>\n<\/ul>\n<\/li>\n<li>Parkla seisu v\u00e4ljastamine\n<ul>\n<li>Kahem\u00f5\u00f5tmeline j\u00e4rjend v\u00e4ljastatakse ekraanile.<\/li>\n<\/ul>\n<\/li>\n<li>Programmi t\u00f6\u00f6 l\u00f5petamine\n<ul>\n<li>Kahem\u00f5\u00f5tmeline j\u00e4rjend v\u00e4ljastatakse ekraanile.<\/li>\n<li>Parkimisplatsi uus seis kirjutatakse faili <em>uus_parkla.txt<\/em><\/li>\n<li>Programm teatab t\u00f6\u00f6 l\u00f5petamisest ja l\u00f5petab t\u00f6\u00f6.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h3>N\u00e4ide<\/h3>\n<p>Valitud on viis, kus tegevused sisestatakse nende numbrite abil ja koordinaadid sisestatakse kahekaupa koma ja t\u00fchikuga eraldatult.<\/p>\n<pre>[['P', 'P', 'P', 'P', '-', 'P'], ['-', '-', '-', '-', '-', 'P'], ['P', 'P', 'P', 'P', '-', 'P']]\r\nPalun valige tegevus: 1\r\nPalun sisestage parkija nimi: Kersti\r\nPalun sisestage parkimiskoha koordinaadid: 1, 0\r\nSellele kohale parkida ei saa.\r\nPalun valige tegevus: 1\r\nPalun sisestage parkija nimi: J\u00fcri\r\nPalun sisestage parkimiskoha koordinaadid: 0, 3\r\nPalun valige tegevus: 4\r\n['P', 'P', 'P', 'X', '-', 'P'], ['-', '-', '-', '-', '-', 'P'], ['P', 'P', 'P', 'P', '-', 'P']]\r\nPalun valige tegevus: 1\r\nPalun sisestage parkija nimi: Heiki\r\nPalun sisestage parkimiskoha koordinaadid: 0, 3\r\nSellele kohale parkida ei saa.\r\nPalun valige tegevus: 2\r\nPalun sisestage parkija nimi: J\u00fcri\r\n0, 3\r\nPalun valige tegevus: 3\r\nPalun sisestage parkija nimi: J\u00fcri\r\nPalun valige tegevus: 4\r\n[['P', 'P', 'P', 'P', '-', 'P'], ['-', '-', '-', '-', '-', 'P'], ['P', 'P', 'P', 'P', '-', 'P']]\r\nPalun valige tegevus: 1\r\nPalun sisestage parkija nimi: Toomas\r\nPalun sisestage parkimiskoha koordinaadid: 2, 0\r\nPalun valige tegevus: 5\r\n[['P', 'P', 'P', 'P', '-', 'P'], ['-', '-', '-', '-', '-', 'P'], ['X', 'P', 'P', 'P', '-', 'P']]\r\nProgramm kirjutas seisu faili ja l\u00f5petas t\u00f6\u00f6<\/pre>\n","protected":false},"author":17,"menu_order":3,"template":"","meta":{"pb_show_title":"on","pb_short_title":"","pb_subtitle":"","pb_authors":[],"pb_section_license":""},"chapter-type":[],"contributor":[],"license":[],"class_list":["post-207","chapter","type-chapter","status-publish","hentry"],"part":54,"_links":{"self":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/pressbooks\/v2\/chapters\/207","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/pressbooks\/v2\/chapters"}],"about":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/wp\/v2\/types\/chapter"}],"author":[{"embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/wp\/v2\/users\/17"}],"version-history":[{"count":4,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/pressbooks\/v2\/chapters\/207\/revisions"}],"predecessor-version":[{"id":238,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/pressbooks\/v2\/chapters\/207\/revisions\/238"}],"part":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/pressbooks\/v2\/parts\/54"}],"metadata":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/pressbooks\/v2\/chapters\/207\/metadata\/"}],"wp:attachment":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/wp\/v2\/media?parent=207"}],"wp:term":[{"taxonomy":"chapter-type","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/pressbooks\/v2\/chapter-type?post=207"},{"taxonomy":"contributor","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/wp\/v2\/contributor?post=207"},{"taxonomy":"license","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/wp-json\/wp\/v2\/license?post=207"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}