{"id":235,"date":"2016-05-04T10:40:45","date_gmt":"2016-05-04T13:40:45","guid":{"rendered":"http:\/\/just.pro.br\/blog\/?p=235"},"modified":"2016-05-04T10:40:45","modified_gmt":"2016-05-04T13:40:45","slug":"4a-avaliacao-de-aspectos-teoricos-da-computacao","status":"publish","type":"post","link":"https:\/\/just.pro.br\/blog\/2016\/05\/04\/4a-avaliacao-de-aspectos-teoricos-da-computacao\/","title":{"rendered":"4\u00aa avalia\u00e7\u00e3o de Aspectos Te\u00f3ricos da Computa\u00e7\u00e3o"},"content":{"rendered":"<p>4\u00aa avalia\u00e7\u00e3o da disciplina EXA858 \u2013 Aspectos Te\u00f3ricos da Computa\u00e7\u00e3o.<br \/>\nValor: 10,0 na 3\u00aa unidade.<br \/>\nPrazo: 15\/05\/2016, 23:59 (via e-mail).<br \/>\nEm dupla.<\/p>\n<p>Crie um programa que implemente uma m\u00e1quina de Turing descrita em arquivo. O arquivo ter\u00e1 o formato abaixo:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">alfabeto\r\nn\u00famero de transi\u00e7\u00f5es\r\ntransi\u00e7\u00e3o1\r\ntransi\u00e7\u00e3o2\r\n...<\/pre>\n<p>Os itens do alfabeto devem ser separados por espa\u00e7o. O estado inicial \u00e9 o primeiro estado a aparecer na lista de transi\u00e7\u00f5es. O n\u00famero de transi\u00e7\u00f5es \u00e9 um inteiro e cada transi\u00e7\u00e3o deve estar na forma:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">qi,fi,qj,fo,M<\/pre>\n<ul>\n<li>qi = estado atual<\/li>\n<li>fi = caractere lido da fita<\/li>\n<li>qj = pr\u00f3ximo estado<\/li>\n<li>fo = caractere gravado na fita<\/li>\n<li>M = movimento da fita, que pode ser S (fique onde est\u00e1), L (esquerda) ou R (direita)<\/li>\n<\/ul>\n<p>Os \u00edtens da transi\u00e7\u00e3o est\u00e3o separados por v\u00edrgula para facilitar a inser\u00e7\u00e3o de espa\u00e7os em branco na fita, al\u00e9m de que a inser\u00e7\u00e3o de elementos na fita \u00e9 opcional e pode ser omitita. O estado de aceita\u00e7\u00e3o deve se chamar sempre &#8216;qA&#8217; e o de rejei\u00e7\u00e3o \u00e9 &#8216;qR&#8217;. Exemplo de arquivo:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">0\r\n15\r\nq0, ,qR,,R\r\nq0,x,qR,,R\r\nq0,0,q1, ,R\r\nq1, ,qA,,R\r\nq1,x,q1,,R\r\nq1,0,q2,x,R\r\nq2,x,q2,,R\r\nq2,0,q3,,R\r\nq2, ,q4,,L\r\nq3, ,qR,,R\r\nq3,x,q3,,R\r\nq3,0,q2,x,R\r\nq4,0,q4,,L\r\nq4,x,q4,,L\r\nq4, ,q1,,R\r\n<\/pre>\n<p>O exemplo acima implementa a m\u00e1quina de Turing que decide A = {0^2^n | n >= 0} (veja a imagem abaixo). Ap\u00f3s ler o arquivo, o programa dever\u00e1 solicitar uma string ao usu\u00e1rio, essa string ser\u00e1 a fita da m\u00e1quina. Em seguida, o programa dever\u00e1 informar se a string na fita \u00e9 aceita ou rejeitada pela m\u00e1quina.<\/p>\n<figure id=\"attachment_238\" aria-describedby=\"caption-attachment-238\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/just.pro.br\/blog\/wp-content\/uploads\/2016\/05\/TM02n.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/just.pro.br\/blog\/wp-content\/uploads\/2016\/05\/TM02n-300x300.png\" alt=\"A = {0^2^n | n &gt;= 0}\" width=\"300\" height=\"300\" class=\"size-medium wp-image-238\" srcset=\"https:\/\/just.pro.br\/blog\/wp-content\/uploads\/2016\/05\/TM02n-300x299.png 300w, https:\/\/just.pro.br\/blog\/wp-content\/uploads\/2016\/05\/TM02n-150x150.png 150w, https:\/\/just.pro.br\/blog\/wp-content\/uploads\/2016\/05\/TM02n-100x100.png 100w, https:\/\/just.pro.br\/blog\/wp-content\/uploads\/2016\/05\/TM02n-200x200.png 200w, https:\/\/just.pro.br\/blog\/wp-content\/uploads\/2016\/05\/TM02n-450x449.png 450w, https:\/\/just.pro.br\/blog\/wp-content\/uploads\/2016\/05\/TM02n.png 485w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-238\" class=\"wp-caption-text\">A = {0^2^n | n >= 0}<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>4\u00aa avalia\u00e7\u00e3o da disciplina EXA858 \u2013 Aspectos Te\u00f3ricos da Computa\u00e7\u00e3o. Valor: 10,0 na 3\u00aa unidade. Prazo: 15\/05\/2016, 23:59 (via e-mail). Em dupla. Crie um programa que implemente uma m\u00e1quina de Turing descrita em arquivo. O arquivo ter\u00e1 o formato abaixo: &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"more-link\" href=\"https:\/\/just.pro.br\/blog\/2016\/05\/04\/4a-avaliacao-de-aspectos-teoricos-da-computacao\/\"> <span class=\"screen-reader-text\">4\u00aa avalia\u00e7\u00e3o de Aspectos Te\u00f3ricos da Computa\u00e7\u00e3o<\/span> Read More &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21],"tags":[],"class_list":["post-235","post","type-post","status-publish","format-standard","hentry","category-aspectos-teoricos-da-computacao"],"_links":{"self":[{"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/posts\/235","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/comments?post=235"}],"version-history":[{"count":6,"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/posts\/235\/revisions"}],"predecessor-version":[{"id":242,"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/posts\/235\/revisions\/242"}],"wp:attachment":[{"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/media?parent=235"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/categories?post=235"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/just.pro.br\/blog\/wp-json\/wp\/v2\/tags?post=235"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}