{"id":466,"date":"2020-07-24T20:00:27","date_gmt":"2020-07-24T23:00:27","guid":{"rendered":"http:\/\/sites.usp.br\/ltsi\/?page_id=466"},"modified":"2020-07-24T21:33:21","modified_gmt":"2020-07-25T00:33:21","slug":"variaveis","status":"publish","type":"page","link":"https:\/\/sites.usp.br\/ltsi\/variaveis\/","title":{"rendered":"VARI\u00c1VEIS"},"content":{"rendered":"<p>As vari\u00e1veis s\u00e3o estruturas importantes em qualquer programa\u00e7\u00e3o, independentemente da linguagem que se utilize para implementar os c\u00f3digos ou programas. Elas podem ser entendidas como uma caixinha, onde os dados s\u00e3o armazenados temporariamente ou em definitivo e que s\u00e3o manipuladas durante a execu\u00e7\u00e3o do programa. As vari\u00e1veis devem ser inicializadas antes de usadas, mas, cabe aqui uma ressalva, dependendo da linguagem de programa\u00e7\u00e3o isso n\u00e3o \u00e9 necess\u00e1rio, o compilador da linguagem pode fazer isso automaticamente. Neste caso, onde ser\u00e3o implementados os c\u00f3digos em linguagem C\/C++ isso n\u00e3o ocorre, ou seja, deve-se iniciar as vari\u00e1veis sempre que utilizadas pela primeira vez.<\/p>\n<p>As vari\u00e1veis s\u00e3o inicializadas quanto ao tipo e quanto ao valor, isso significa que ter\u00e1 de ser definida qual o uso que iremos atribuir a ela. As vari\u00e1veis podem ser do tipo inteira, decimal, caractere, string, data e somente decimal positiva, assim, dependendo do tipo de dados que ser\u00e3o armazenados, tem-se um tipo definido para ela. Assim, as vari\u00e1veis podem ser (TABELA 1).<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc25758763\"><\/a>Tabela 1 &#8211; Tipo de vari\u00e1veis<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter size-full wp-image-468\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/8.jpg\" alt=\"\" width=\"407\" height=\"283\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/8.jpg 407w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/8-300x209.jpg 300w\" sizes=\"(max-width: 407px) 100vw, 407px\" \/><\/p>\n<p>Fonte: Autoria pr\u00f3pria<\/p>\n<p>Isso define que tipos de dados a vari\u00e1vel poder\u00e1 armazenar. Agora, as vari\u00e1veis tamb\u00e9m podem ser inicializadas quanto aos valores. Exemplos:<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436905\"><\/a>Figura 1 &#8211; Tipo de vari\u00e1veis<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-469\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/9.jpg\" alt=\"\" width=\"248\" height=\"76\" \/><\/p>\n<p>Fonte: Autoria pr\u00f3pria<\/p>\n<p>Uma outra forma de definir uma vari\u00e1vel \u00e9 com o comando #define.<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436906\"><\/a>Figura 2 \u2013 Comando Define<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-470\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/10.jpg\" alt=\"\" width=\"185\" height=\"31\" \/><\/p>\n<p>Fonte: Autoria pr\u00f3pria<\/p>\n<p>Desta forma, fica compreendido que sempre que se usar uma vari\u00e1vel devemos saber com clareza o que vamos armazenar em seu interior.<\/p>\n<p>&nbsp;<\/p>\n<ul>\n<li><a name=\"_Toc26352484\"><\/a><strong>Comandos e estruturas b\u00e1sicas usadas nas atividades a serem implementadas neste livro.<\/strong><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>A seguir, ser\u00e3o apresentados os comandos b\u00e1sicos e a estrutura de programa\u00e7\u00e3o do Arduino e, que ser\u00e3o usados nas atividades de 1 a 15, implementadas para que os alunos possam aprender e exercitar a programa\u00e7\u00e3o e a eletr\u00f4nica b\u00e1sica.<\/p>\n<p>Basicamente, o Arduino possui a seguinte estrutura de blocos:<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436907\"><\/a>Figura 3 \u2013 C\u00f3digo Fonte<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-471\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/11.jpg\" alt=\"\" width=\"498\" height=\"302\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/11.jpg 498w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/11-300x182.jpg 300w\" sizes=\"(max-width: 498px) 100vw, 498px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Esta \u00e9 uma estrutura b\u00e1sica de implementa\u00e7\u00e3o com a IDE (Arduino). Ela possui dois blocos padr\u00f5es, uma \u00e9 a fun\u00e7\u00e3o void setup(), que permite a configura\u00e7\u00e3o do ambiente relacionado \u00e0s entradas e sa\u00eddas de dados, em rela\u00e7\u00e3o as portas anal\u00f3gicas e digitais. A outra, \u00e9 a fun\u00e7\u00e3o <strong>void loop()<\/strong>, que executa em loop eterno os comandos e estruturas que estiverem em seu bloco de comando <strong>{<\/strong> comando <strong>}<\/strong> e, representa in\u00edcio e fim de bloco.<\/p>\n<p>A primeira linha do c\u00f3digo \u00e9 reservada para a identifica\u00e7\u00e3o do nome do programa e o que ele faz, as <strong>\/\/ <\/strong>indicam linha de coment\u00e1rio, o que vier ap\u00f3s elas n\u00e3o ser\u00e1 executado pelo programa. Essas <strong>\/\/ <\/strong>podem ser usadas durante todo o c\u00f3digo, como forma de documentar o que cada comando ou fun\u00e7\u00e3o faz.<\/p>\n<p>Ap\u00f3s a primeira linha \u00e9 poss\u00edvel inserir bibliotecas que permitir\u00e3o ao compilador gerenciar outras fun\u00e7\u00f5es. Essas bibliotecas s\u00e3o carregadas no IDE do Arduino para manipula\u00e7\u00e3o de Display, Sensores e Atuadores, dependendo da aplica\u00e7\u00e3o.<\/p>\n<p>Entre a primeira linha e a fun\u00e7\u00e3o void setup(), ser\u00e3o inseridas as vari\u00e1veis que ser\u00e3o utilizadas no durante o programa, ou seja, as vari\u00e1veis s\u00e3o inicializadas quanto ao tipo e, se necess\u00e1rio, quanto ao valor, conforme discutido anteriormente.<\/p>\n<p>Agora, ser\u00e3o tratadas as estruturas de condi\u00e7\u00e3o, em C\/C++ com em outras existem 2 estruturas b\u00e1sicas que s\u00e3o o if simples ou conjugado com if&#8230;else e a estrutura switch&#8230;case. Cada estrutura tem a sua aplica\u00e7\u00e3o pr\u00f3pria, mas depende sempre do analista ou programador o seu uso. Muitos programadores preferem a estrutura switch&#8230;case para tratar com menus, sendo a estrutura if&#8230;else para tratamento com condi\u00e7\u00f5es especificas, como intervalos, e sele\u00e7\u00f5es mais complexas.<\/p>\n<p>Ser\u00e1 iniciada pela mais simples: switch&#8230;case. A estrutura switch&#8230;case controla o fluxo dentro do programa, permitindo que os programadores especifiquem comandos diferentes para serem executados em situa\u00e7\u00f5es diferentes, de acordo com os objetivos espec\u00edficos. Essas especificidades ser\u00e3o tratadas individualmente na condi\u00e7\u00e3o case. Em particular, uma instru\u00e7\u00e3o switch compara o valor de uma vari\u00e1vel com os valores especificados nas suas instru\u00e7\u00f5es case.<\/p>\n<p>Quando uma condi\u00e7\u00e3o for verdadeira na estrutura case ela \u00e9 executada, ou seja, uma s\u00e9rie de comandos correspondentes \u00e0quela condi\u00e7\u00e3o verdadeira \u00e9 executada e ao t\u00e9rmino a estrutura finalizada. Portanto, essa estrutura executa somente uma op\u00e7\u00e3o dentre as poss\u00edveis existentes.<\/p>\n<p>Estrutura de condi\u00e7\u00e3o SWITCH&#8230;CASE:<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436908\"><\/a>Figura 4 \u2013 Estrutura de condi\u00e7\u00e3o\/case<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-474\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/12.jpg\" alt=\"\" width=\"609\" height=\"241\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/12.jpg 609w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/12-300x119.jpg 300w\" sizes=\"(max-width: 609px) 100vw, 609px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Entendendo os par\u00e2metros existentes na estrutura:<\/p>\n<ul>\n<li>var: uma vari\u00e1vel cujo valor ser\u00e1 comparado com v\u00e1rias condi\u00e7\u00f5es (cases).\u00a0Permitem dados do tipo: int ou char.<\/li>\n<li>label1,\u00a0label2: constantes.\u00a0Permitem dados do tipo: int, char.<\/li>\n<li>var: vari\u00e1vel a ser comparada com os diferentes casos,\u00a0case.<\/li>\n<li>label1, label 2, &#8230;: um valor a ser comparado com a vari\u00e1vel\u00a0var.<\/li>\n<li>default: instru\u00e7\u00e3o padr\u00e3o caso nenhum caso seja verificado.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>Exemplo da estrutura switch&#8230;case:<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436909\"><\/a>Figura 5 \u2013 Exemplo de estrutura de decis\u00e3o switch<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-475\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/13.jpg\" alt=\"\" width=\"521\" height=\"206\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/13.jpg 521w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/13-300x119.jpg 300w\" sizes=\"(max-width: 521px) 100vw, 521px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Observa\u00e7\u00e3o: o comando break interrompe o case e o switch ap\u00f3s todos os comandos serem executados para aquela condi\u00e7\u00e3o verdadeira.<\/p>\n<p>A pr\u00f3xima estrutura de repeti\u00e7\u00e3o que iremos abordar \u00e9 o <strong><u>if&#8230;else <\/u><\/strong>e suas varia\u00e7\u00f5es. Essa estrutura \u00e9 muito utilizada em programa\u00e7\u00e3o por programadores experientes, uma vez que sua estrutura apesar de parecer complicada, \u00e9 bem simples de implementar.<\/p>\n<p>Ser\u00e1 iniciado com a estrutura mais simples que \u00e9 somente o <strong><u>if.<\/u><\/strong> A instru\u00e7\u00e3o <strong><u>if<\/u><\/strong> verifica uma condi\u00e7\u00e3o e executa um comando ou uma s\u00e9rie de comandos (instru\u00e7\u00e3o ou conjunto de instru\u00e7\u00f5es), se a condi\u00e7\u00e3o for &#8216;verdadeira&#8217;. A sua estrutura \u00e9 bem simples:<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436910\"><\/a>Figura 6 \u2013 Estrutura IF<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-477\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/14.jpg\" alt=\"\" width=\"531\" height=\"127\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/14.jpg 531w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/14-300x72.jpg 300w\" sizes=\"(max-width: 531px) 100vw, 531px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Os colchetes podem ser omitidos ap\u00f3s uma instru\u00e7\u00e3o <strong>if<\/strong>. Se isso ocorrer, a pr\u00f3xima linha (definida pelo ponto e v\u00edrgula) se tornar\u00e1 a \u00fanica instru\u00e7\u00e3o condicional. Mas, para evitar problemas de sintaxe, principalmente quando se est\u00e1 aprendendo \u00e9 interessante colocar os colchetes.<\/p>\n<p>Exemplo:<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436911\"><\/a>Figura 7 \u2013 Exemplo de estrutura IF<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-478\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/15.jpg\" alt=\"\" width=\"385\" height=\"143\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/15.jpg 385w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/15-300x111.jpg 300w\" sizes=\"(max-width: 385px) 100vw, 385px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Operadores de compara\u00e7\u00e3o:<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436912\"><\/a>Figura 8 \u2013 Operadores de Compara\u00e7\u00e3o<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-480\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/16.jpg\" alt=\"\" width=\"442\" height=\"161\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/16.jpg 442w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/16-300x109.jpg 300w\" sizes=\"(max-width: 442px) 100vw, 442px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Agora, aprimorando a fun\u00e7\u00e3o <strong><u>if,<\/u><\/strong> utilizaremos o comando <strong><u>else. <\/u><\/strong>O comando else sempre deve vir acompanhado do comando <strong><u>if<\/u><\/strong>.<\/p>\n<p>A estrutura <strong>if &#8230; else<\/strong> permite maior controle sobre o fluxo de c\u00f3digo (comandos), do que a instru\u00e7\u00e3o <strong>if<\/strong> b\u00e1sica, permitindo assim, que v\u00e1rios testes sejam agrupados. Uma cl\u00e1usula <strong>else<\/strong> (caso exista) ser\u00e1 executada se, e somente se, a condi\u00e7\u00e3o na instru\u00e7\u00e3o <strong>if<\/strong> for falsa, caso contr\u00e1rio ela n\u00e3o ser\u00e1 executada, ou seja, se isso faz um conjunto de comandos, caso contr\u00e1rio, faz outra sequ\u00eancia de comandos.<\/p>\n<p>Ap\u00f3s, um <strong>else<\/strong> pode-se continuar com outras estruturas <strong>if&#8230;else<\/strong>, de modo que v\u00e1rios testes possam ser executados ao mesmo tempo. Cada teste prosseguir\u00e1 para o pr\u00f3ximo, at\u00e9 que uma condi\u00e7\u00e3o seja verdadeira. Quando um teste verdadeiro \u00e9 encontrado, seu bloco de instru\u00e7\u00e3o \u00e9 executado e o programa pula para a linha seguindo toda a constru\u00e7\u00e3o <strong>if &#8230; else<\/strong>. Se nenhuma condi\u00e7\u00e3o for verdadeira, o bloco padr\u00e3o, caso existe ser\u00e1 executado, caso contr\u00e1rio a estrutura <strong><u>if&#8230;else <\/u><\/strong>ser\u00e1 finalizada.<\/p>\n<p><strong>Exemplo 1: Estrutura simples IF&#8230;ELSE<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436913\"><\/a>Figura 9 \u2013 Exemplo de estrutura IF &#8211; ELSE<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-482\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/16-1.jpg\" alt=\"\" width=\"437\" height=\"164\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/16-1.jpg 437w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/16-1-300x113.jpg 300w\" sizes=\"(max-width: 437px) 100vw, 437px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p><strong>Exemplo 2: Estrutura composta IF&#8230;ELSE<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436914\"><\/a>Figura 10 \u2013 Exemplo de estrutura IF &#8211; ELSE<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-485\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/18.jpg\" alt=\"\" width=\"526\" height=\"259\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/18.jpg 526w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/18-300x148.jpg 300w\" sizes=\"(max-width: 526px) 100vw, 526px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Agora, ser\u00e1 trabalhado o comando de repeti\u00e7\u00e3o <strong>for<\/strong>, este comando traz em seu escopo uma facilidade de implementa\u00e7\u00e3o, quando comparado com outras estruturas de repeti\u00e7\u00e3o.<\/p>\n<p>O comando <strong>for<\/strong> \u00e9 usado para repetir um bloco de comandos existentes entre chaves (delimita\u00e7\u00e3o do escopo do <strong>for<\/strong>). Um contador de incremento \u00e9 geralmente usado para incrementar e finalizar o loop (a repeti\u00e7\u00e3o). A instru\u00e7\u00e3o <strong>for<\/strong> \u00e9 \u00fatil para qualquer opera\u00e7\u00e3o repetitiva e \u00e9 frequentemente usada em combina\u00e7\u00e3o com vetores e matrizes, para manipula\u00e7\u00e3o com muitos dados.<\/p>\n<p>Estrutura b\u00e1sica do <strong>for<\/strong>:<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436915\"><\/a>Figura 11 \u2013 Estrutura FOR<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-487\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/19.jpg\" alt=\"\" width=\"609\" height=\"124\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/19.jpg 609w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/19-300x61.jpg 300w\" sizes=\"(max-width: 609px) 100vw, 609px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Exemplo de uma estrutura <strong>for<\/strong>:<\/p>\n<p style=\"text-align: center;\"><a name=\"_Toc37436916\"><\/a>Figura 12 \u2013 Exemplo de estrutura FOR<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-491\" src=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/20-1.jpg\" alt=\"\" width=\"609\" height=\"129\" srcset=\"https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/20-1.jpg 609w, https:\/\/sites.usp.br\/ltsi\/wp-content\/uploads\/sites\/248\/2020\/07\/20-1-300x64.jpg 300w\" sizes=\"(max-width: 609px) 100vw, 609px\" \/><\/p>\n<p>Fonte: Autoria Pr\u00f3pria<\/p>\n<p>Se necess\u00e1rio podem existir v\u00e1rios for, um dentro do outro, desde que, o programador tenho a l\u00f3gica estruturada.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As vari\u00e1veis s\u00e3o estruturas importantes em qualquer programa\u00e7\u00e3o, independentemente da linguagem que se utilize para implementar os c\u00f3digos ou programas. Elas podem ser entendidas como uma caixinha, onde os dados s\u00e3o armazenados temporariamente ou em definitivo e que s\u00e3o manipuladas durante a execu\u00e7\u00e3o do programa. As vari\u00e1veis devem ser inicializadas antes de usadas, mas, cabe<a href=\"https:\/\/sites.usp.br\/ltsi\/variaveis\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":21741,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":"","_links_to":"","_links_to_target":""},"class_list":["post-466","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/sites.usp.br\/ltsi\/wp-json\/wp\/v2\/pages\/466","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sites.usp.br\/ltsi\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sites.usp.br\/ltsi\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sites.usp.br\/ltsi\/wp-json\/wp\/v2\/users\/21741"}],"replies":[{"embeddable":true,"href":"https:\/\/sites.usp.br\/ltsi\/wp-json\/wp\/v2\/comments?post=466"}],"version-history":[{"count":4,"href":"https:\/\/sites.usp.br\/ltsi\/wp-json\/wp\/v2\/pages\/466\/revisions"}],"predecessor-version":[{"id":495,"href":"https:\/\/sites.usp.br\/ltsi\/wp-json\/wp\/v2\/pages\/466\/revisions\/495"}],"wp:attachment":[{"href":"https:\/\/sites.usp.br\/ltsi\/wp-json\/wp\/v2\/media?parent=466"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}