{"id":360,"date":"2019-02-04T15:17:55","date_gmt":"2019-02-04T15:17:55","guid":{"rendered":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/?post_type=chapter&#038;p=360"},"modified":"2019-08-27T16:33:43","modified_gmt":"2019-08-27T16:33:43","slug":"ulesanne-kaugushupe","status":"publish","type":"chapter","link":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/chapter\/ulesanne-kaugushupe\/","title":{"raw":"\u00dclesanne. Kaugush\u00fcpe","rendered":"\u00dclesanne. Kaugush\u00fcpe"},"content":{"raw":"<p class=\"vspace\">Noorte kaugush\u00fcppe v\u00f5istlusel sai t\u00e4ita meistriv\u00f5istluste normatiivi. Juhtus aga, et m\u00f5\u00f5teseade muutis k\u00f5iki tulemusi \u00fche ja sama arvu sentimeetrite v\u00f5rra. \u00d5nneks olid tulemused faili salvestatud ja n\u00fc\u00fcd sai arvutades leida tegelikud tulemused.<\/p>\r\n<p class=\"vspace\">Selleks, et edaspidi saaks selliseid olukordi kiiremini lahendada, otsustati tellida programm, mis lisaks tulemuste korrigeerimisele leiab ka normatiivi t\u00e4itnud tegelike tulemuste arvu ning nende aritmeetilise keskmise.<\/p>\r\n<p class=\"vspace\">Koostada funktsioon <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">parandatud_tulemus<\/code>, mis v\u00f5tab argumentideks vigase tulemuse (meetrites) ja m\u00f5\u00f5teparanduse (sentimeetrites). Funktsioon arvutab tegeliku tulemuse (meetrites) ning tagastab selle.<\/p>\r\n<p class=\"vspace\"><code>tegelikTulemus = viganeTulemus + m\u00f5\u00f5teparandus \/ 100<\/code><\/p>\r\n<p class=\"vspace\">Koostada programm, mis k\u00fcsib kasutajalt<\/p>\r\n\r\n<ul>\r\n \t<li>failinime,<\/li>\r\n \t<li>m\u00f5\u00f5teparanduse (nt 35 n\u00e4itab, et igale tulemusele tuleb liita 35 sentimeetrit (e 0,35 meetrit)),<\/li>\r\n \t<li>meistriv\u00f5istluste normatiivi.<\/li>\r\n<\/ul>\r\n<p class=\"vspace\">Programm peab<\/p>\r\n\r\n<ul>\r\n \t<li>lugema failist vigased tulemused (meetrites);<\/li>\r\n \t<li>funktsiooniga <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">parandatud_tulemus<\/code> arvutama tegelikud tulemused ja v\u00e4ljastama need ekraanile (\u00fcmardatuna kahe k\u00fcmnendkohani p\u00e4rast koma);<\/li>\r\n \t<li>arvutama ja v\u00e4ljastama ekraanile normatiivi t\u00e4itnud tegelike tulemuste arvu ja nende keskmise (\u00fcmardatuna kahe k\u00fcmnendkohani p\u00e4rast koma).\r\n<ul>\r\n \t<li>Kui normatiivi t\u00e4itjaid ei ole, siis keskmist ei arvutata ega v\u00e4ljastata.<\/li>\r\n<\/ul>\r\n<\/li>\r\n<\/ul>\r\n<h3>N\u00e4ide programmi t\u00f6\u00f6st<\/h3>\r\n<p class=\"vspace\">Faili <code>kaugus.txt<\/code> sisu:<\/p>\r\n<p class=\"vspace\"><code>6.56<\/code>\r\n<code>5.76<\/code>\r\n<code>5.82<\/code>\r\n<code>5.23<\/code>\r\n<code>5.74<\/code>\r\n<code>6.14<\/code>\r\n<code>5.28<\/code>\r\n<code>5.77<\/code>\r\n<code>6.45<\/code>\r\n<code>6.02<\/code>\r\n<code>5.78<\/code><\/p>\r\n<p class=\"vspace\"><code><\/code>\r\nProgrammi t\u00f6\u00f6:<\/p>\r\n\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\">Sisestage failinimi: kaugus.txt\r\nSisestage parandus sentimeetrites: 35\r\nSisestage meistriv\u00f5istluste normatiiv meetrites: 6.45\r\nTegelikud tulemused\r\n6.91\r\n6.11\r\n6.17\r\n5.58\r\n6.09\r\n6.49\r\n5.63\r\n6.12\r\n6.8\r\n6.37\r\n6.13\r\nNormatiivi t\u00e4itis 3.\r\nT\u00e4itnute keskmine on 6.73.<\/pre>\r\n<h3 class=\"vspace\">N\u00e4idislahendus<\/h3>\r\nSellele \u00fclesandele anname ka n\u00e4idislahenduse. J\u00e4rgmistes \u00fclesannetes pead ilma selleta hakkama saama.\r\n\r\nVaata ka <a href=\"https:\/\/www.uttv.ee\/naita?id=23698\" target=\"_blank\" rel=\"noopener noreferrer\">lahenduse loomise videot<\/a>.\r\n<div class=\"vspace\">\r\n<pre class=\"EnlighterJSRAW\">def parandatud_tulemus(vigane_tulemus, parandus):\r\n    return vigane_tulemus + parandus \/ 100\r\n\r\nfailinimi = input(\"Sisestage failinimi: \")\r\nm\u00f5\u00f5teparandus = int(input(\"Sisestage parandus sentimeetrites: \"))\r\nnormatiiv = float(input(\"Sisestage meistriv\u00f5istluste normatiiv meetrites: \"))\r\n\r\nvigased_tulemused = []\r\nf = open(failinimi)\r\nfor rida in f:\r\n    vigased_tulemused += [float(rida)]\r\n\r\ntegelikud_tulemused = []\r\n\r\nprint(\"Tegelikud tulemused\")\r\nfor tulemus in vigased_tulemused:\r\n    tegelik_tulemus = parandatud_tulemus(tulemus, m\u00f5\u00f5teparandus)\r\n    print(round(tegelik_tulemus, 2))\r\n    tegelikud_tulemused += [tegelik_tulemus]\r\n\r\narv = 0\r\nsumma = 0\r\nfor tulemus in tegelikud_tulemused:\r\n    if tulemus &gt;= normatiiv:\r\n        arv += 1\r\n        summa += tulemus\r\n\r\nprint(\"Normatiivi t\u00e4itis \" + str(arv) + \".\")\r\nif arv &gt; 0:\r\n    print(\"T\u00e4itnute keskmine on \" + str(round(summa\/arv, 2)) + \".\")<\/pre>\r\n&nbsp;\r\n\r\n<\/div>\r\n<div>\r\n<div class=\"syntaxhighlighter nogutter python\"><\/div>\r\n<\/div>","rendered":"<p class=\"vspace\">Noorte kaugush\u00fcppe v\u00f5istlusel sai t\u00e4ita meistriv\u00f5istluste normatiivi. Juhtus aga, et m\u00f5\u00f5teseade muutis k\u00f5iki tulemusi \u00fche ja sama arvu sentimeetrite v\u00f5rra. \u00d5nneks olid tulemused faili salvestatud ja n\u00fc\u00fcd sai arvutades leida tegelikud tulemused.<\/p>\n<p class=\"vspace\">Selleks, et edaspidi saaks selliseid olukordi kiiremini lahendada, otsustati tellida programm, mis lisaks tulemuste korrigeerimisele leiab ka normatiivi t\u00e4itnud tegelike tulemuste arvu ning nende aritmeetilise keskmise.<\/p>\n<p class=\"vspace\">Koostada funktsioon <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">parandatud_tulemus<\/code>, mis v\u00f5tab argumentideks vigase tulemuse (meetrites) ja m\u00f5\u00f5teparanduse (sentimeetrites). Funktsioon arvutab tegeliku tulemuse (meetrites) ning tagastab selle.<\/p>\n<p class=\"vspace\"><code>tegelikTulemus = viganeTulemus + m\u00f5\u00f5teparandus \/ 100<\/code><\/p>\n<p class=\"vspace\">Koostada programm, mis k\u00fcsib kasutajalt<\/p>\n<ul>\n<li>failinime,<\/li>\n<li>m\u00f5\u00f5teparanduse (nt 35 n\u00e4itab, et igale tulemusele tuleb liita 35 sentimeetrit (e 0,35 meetrit)),<\/li>\n<li>meistriv\u00f5istluste normatiivi.<\/li>\n<\/ul>\n<p class=\"vspace\">Programm peab<\/p>\n<ul>\n<li>lugema failist vigased tulemused (meetrites);<\/li>\n<li>funktsiooniga <code class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">parandatud_tulemus<\/code> arvutama tegelikud tulemused ja v\u00e4ljastama need ekraanile (\u00fcmardatuna kahe k\u00fcmnendkohani p\u00e4rast koma);<\/li>\n<li>arvutama ja v\u00e4ljastama ekraanile normatiivi t\u00e4itnud tegelike tulemuste arvu ja nende keskmise (\u00fcmardatuna kahe k\u00fcmnendkohani p\u00e4rast koma).\n<ul>\n<li>Kui normatiivi t\u00e4itjaid ei ole, siis keskmist ei arvutata ega v\u00e4ljastata.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>N\u00e4ide programmi t\u00f6\u00f6st<\/h3>\n<p class=\"vspace\">Faili <code>kaugus.txt<\/code> sisu:<\/p>\n<p class=\"vspace\"><code>6.56<\/code><br \/>\n<code>5.76<\/code><br \/>\n<code>5.82<\/code><br \/>\n<code>5.23<\/code><br \/>\n<code>5.74<\/code><br \/>\n<code>6.14<\/code><br \/>\n<code>5.28<\/code><br \/>\n<code>5.77<\/code><br \/>\n<code>6.45<\/code><br \/>\n<code>6.02<\/code><br \/>\n<code>5.78<\/code><\/p>\n<p class=\"vspace\"><code><\/code><br \/>\nProgrammi t\u00f6\u00f6:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-linenumbers=\"false\">Sisestage failinimi: kaugus.txt\r\nSisestage parandus sentimeetrites: 35\r\nSisestage meistriv\u00f5istluste normatiiv meetrites: 6.45\r\nTegelikud tulemused\r\n6.91\r\n6.11\r\n6.17\r\n5.58\r\n6.09\r\n6.49\r\n5.63\r\n6.12\r\n6.8\r\n6.37\r\n6.13\r\nNormatiivi t\u00e4itis 3.\r\nT\u00e4itnute keskmine on 6.73.<\/pre>\n<h3 class=\"vspace\">N\u00e4idislahendus<\/h3>\n<p>Sellele \u00fclesandele anname ka n\u00e4idislahenduse. J\u00e4rgmistes \u00fclesannetes pead ilma selleta hakkama saama.<\/p>\n<p>Vaata ka <a href=\"https:\/\/www.uttv.ee\/naita?id=23698\" target=\"_blank\" rel=\"noopener noreferrer\">lahenduse loomise videot<\/a>.<\/p>\n<div class=\"vspace\">\n<pre class=\"EnlighterJSRAW\">def parandatud_tulemus(vigane_tulemus, parandus):\r\n    return vigane_tulemus + parandus \/ 100\r\n\r\nfailinimi = input(\"Sisestage failinimi: \")\r\nm\u00f5\u00f5teparandus = int(input(\"Sisestage parandus sentimeetrites: \"))\r\nnormatiiv = float(input(\"Sisestage meistriv\u00f5istluste normatiiv meetrites: \"))\r\n\r\nvigased_tulemused = []\r\nf = open(failinimi)\r\nfor rida in f:\r\n    vigased_tulemused += [float(rida)]\r\n\r\ntegelikud_tulemused = []\r\n\r\nprint(\"Tegelikud tulemused\")\r\nfor tulemus in vigased_tulemused:\r\n    tegelik_tulemus = parandatud_tulemus(tulemus, m\u00f5\u00f5teparandus)\r\n    print(round(tegelik_tulemus, 2))\r\n    tegelikud_tulemused += [tegelik_tulemus]\r\n\r\narv = 0\r\nsumma = 0\r\nfor tulemus in tegelikud_tulemused:\r\n    if tulemus &gt;= normatiiv:\r\n        arv += 1\r\n        summa += tulemus\r\n\r\nprint(\"Normatiivi t\u00e4itis \" + str(arv) + \".\")\r\nif arv &gt; 0:\r\n    print(\"T\u00e4itnute keskmine on \" + str(round(summa\/arv, 2)) + \".\")<\/pre>\n<p>&nbsp;<\/p>\n<\/div>\n<div>\n<div class=\"syntaxhighlighter nogutter python\"><\/div>\n<\/div>\n","protected":false},"author":12,"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-360","chapter","type-chapter","status-publish","hentry"],"part":343,"_links":{"self":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/pressbooks\/v2\/chapters\/360","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/pressbooks\/v2\/chapters"}],"about":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/wp\/v2\/types\/chapter"}],"author":[{"embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/wp\/v2\/users\/12"}],"version-history":[{"count":7,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/pressbooks\/v2\/chapters\/360\/revisions"}],"predecessor-version":[{"id":457,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/pressbooks\/v2\/chapters\/360\/revisions\/457"}],"part":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/pressbooks\/v2\/parts\/343"}],"metadata":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/pressbooks\/v2\/chapters\/360\/metadata\/"}],"wp:attachment":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/wp\/v2\/media?parent=360"}],"wp:term":[{"taxonomy":"chapter-type","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/pressbooks\/v2\/chapter-type?post=360"},{"taxonomy":"contributor","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/wp\/v2\/contributor?post=360"},{"taxonomy":"license","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/programmeerimine\/wp-json\/wp\/v2\/license?post=360"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}