{"id":1963,"date":"2022-07-04T18:18:26","date_gmt":"2022-07-04T21:18:26","guid":{"rendered":"https:\/\/liag.ft.unicamp.br\/act\/?p=1963"},"modified":"2023-02-03T21:05:39","modified_gmt":"2023-02-04T00:05:39","slug":"logica-de-programacao-e-github-no-act-aula-6","status":"publish","type":"post","link":"https:\/\/liag.ft.unicamp.br\/act\/2022\/07\/04\/logica-de-programacao-e-github-no-act-aula-6\/","title":{"rendered":"Programa\u00e7\u00e3o e Github &#8211; Aula 6"},"content":{"rendered":"\n<h2 class=\"has-text-align-center wp-block-heading\">L\u00f3gica de programa\u00e7\u00e3o e GitHub no ACT &#8211; Aula 6<\/h2>\n\n\n\n<p>At\u00e9 agora aprendemos a criar vari\u00e1veis, atribuir valores a elas e fazer opera\u00e7\u00f5es. Apenas com isso j\u00e1 \u00e9 poss\u00edvel fazer diversos programas, como uma pequena calculadora, por exemplo. Entretanto, ainda n\u00e3o \u00e9 poss\u00edvel fazer programas que tenham comandos condicionais.<\/p>\n\n\n\n<div style=\"height:26px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Comandos condicionais<\/h2>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"Aprendendo Programa\u00e7\u00e3o e GitHub com Portugol Studios - Aula 6\" width=\"630\" height=\"354\" src=\"https:\/\/www.youtube.com\/embed\/vXPpXOe1j0s?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Inscreva-se no <a href=\"https:\/\/www.youtube.com\/channel\/UCCYzDDWYhHEt9-NODBosjqg\/\" target=\"_blank\" rel=\"noreferrer noopener\">canal!<\/a><\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Tal qual na l\u00edngua portuguesa, um comando condicional \u00e9 um comando que, para acontecer ou n\u00e3o, depende de alguma coisa.<\/p>\n\n\n\n<p>Exemplo: vou ao cinema hoje, se n\u00e3o estiver chovendo<\/p>\n\n\n\n<p>Aqui temos 2 possibilidades: ir ao cinema caso o dia esteja limpo ou n\u00e3o ir em caso de chuva. Logo, a ida ao cinema est\u00e1 condicionada ao tempo.<\/p>\n\n\n\n<p>Pensando nisso, o Portugol tamb\u00e9m se preocupou em oferecer uma forma dos programadores escreverem com condicionais.<\/p>\n\n\n\n<p>Uma Estrutura Condicional Simples executa um comando ou v\u00e1rios comandos se a condi\u00e7\u00e3o for verdadeira. Se a condi\u00e7\u00e3o for falsa, a estrutura \u00e9 finalizada sem executar os comandos. O comando que define a estrutura \u00e9 representado pela palavra \u201cse\u201d<\/p>\n\n\n\n<p>Comando se<\/p>\n\n\n\n<p>A sintaxe b\u00e1sica desse comando \u00e9 se (condi\u00e7\u00e3o) { escopo da condi\u00e7\u00e3o<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>Exemplo:<\/p>\n\n\n\n<p>Ainda pensando na situa\u00e7\u00e3o do cinema, vamos desenvolver um programa com a condi\u00e7\u00e3o e responda se a ida no cinema acontecer\u00e1 ou n\u00e3o.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"941\" height=\"319\" src=\"https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-9.png\" alt=\"\" class=\"wp-image-1965\" srcset=\"https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-9.png 941w, https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-9-300x102.png 300w, https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-9-768x260.png 768w\" sizes=\"(max-width: 941px) 100vw, 941px\" \/><\/figure>\n\n\n\n<p>Perceba que caso a vari\u00e1vel tempo armazenasse algo diferente de \u201csol\u201d, o resultado seria diferente:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"941\" height=\"369\" src=\"https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-10.png\" alt=\"\" class=\"wp-image-1966\" srcset=\"https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-10.png 941w, https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-10-300x118.png 300w, https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-10-768x301.png 768w\" sizes=\"(max-width: 941px) 100vw, 941px\" \/><\/figure>\n\n\n\n<p>Nesse caso n\u00e3o temos nenhuma resposta, pois n\u00e3o programamos para receber alguma resposta caso a condi\u00e7\u00e3o fosse dada como falsa. \u00c9 a\u00ed que entra o comando \u201csenao\u201d<\/p>\n\n\n\n<p>Comando senao<\/p>\n\n\n\n<p>Se a express\u00e3o no comando \u201cse\u201d n\u00e3o \u00e9 verdadeira, o comando \u201csenao\u201d ser\u00e1 executado. Vamos fazer um programa que utilize os dois comandos. Al\u00e9m disso, o usu\u00e1rio poder\u00e1 dizer se est\u00e1 sol ou chuva:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"941\" height=\"577\" src=\"https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-11.png\" alt=\"\" class=\"wp-image-1967\" srcset=\"https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-11.png 941w, https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-11-300x184.png 300w, https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-11-768x471.png 768w\" sizes=\"(max-width: 941px) 100vw, 941px\" \/><\/figure>\n\n\n\n<p>Utilizar os comandos se e senao para casos simples \u00e9 muito \u00fatil! Mas e se voc\u00ea quiser fazer mais que duas escolhas? Para esses casos, temos o comando \u201cescolha\u201d. Comando escolha<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Sintaxe: escolha (op\u00e7\u00e3o) { caso 1:\nescopo pare\ncaso 2: escopo pare\ncaso 3: escopo pare\ncaso contrario: escopo pare\n}\n<\/code><\/pre>\n\n\n\n<p>Esse comando vai utilizar uma vari\u00e1vel e test\u00e1-la em v\u00e1rios casos. Caso em um desses casos a condi\u00e7\u00e3o seja verdadeira, ele ir\u00e1 executar o escopo dentro desse caso. O \u201cpare\u201d \u00e9 utilizado logo ap\u00f3s esse comando para que ele n\u00e3o entre em outro casos e literalmente, pare quando encontrar a resposta esperada.<\/p>\n\n\n\n<p>Para ficar mais claro, segue um exemplo:<\/p>\n\n\n\n<p>Vamos escrever um programa que verifica o dia da semana. O usu\u00e1rio vai digitar um n\u00famero e o programa vai retornar o dia da semana equivalente a esse n\u00famero (se for o 1, domingo, o 2, segunda, etc):<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"941\" height=\"777\" src=\"https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-12.png\" alt=\"\" class=\"wp-image-1968\" srcset=\"https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-12.png 941w, https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-12-300x248.png 300w, https:\/\/liag.ft.unicamp.br\/act\/wp-content\/uploads\/sites\/27\/2022\/07\/image-12-768x634.png 768w\" sizes=\"(max-width: 941px) 100vw, 941px\" \/><\/figure>\n\n\n\n<div style=\"height:48px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Bibliografia<\/h2>\n\n\n\n<p><a href=\"http:\/\/www.decom.ufop.br\/guillermo\/BCC201\/slides\/Portugol_BCC201_2.pdf\">http:\/\/www.decom.ufop.br\/guillermo\/BCC201\/slides\/Portugol_BCC201_2.pdf<\/a><\/p>\n\n\n\n<p><a href=\"http:\/\/fabrica.ms.senac.br\/2013\/06\/algoritmo-estruturas-condicionais\/#:~:text=A%20Estrutura%20Condicional%20possibilita%20a,pode%20ser%20Simples%20ou%20Composta.&amp;text=A%20Estrutura%20Condicional%20Simples%20executa,se%20a%20condi%C3%A7%C3%A3o%20for%20verdadeira\">http:\/\/fabrica.ms.senac.br\/2013\/06\/algoritmo-estruturas-condicionais\/#:~:text=A%20Estrutura <\/a><a href=\"http:\/\/fabrica.ms.senac.br\/2013\/06\/algoritmo-estruturas-condicionais\/#:~:text=A%20Estrutura%20Condicional%20possibilita%20a,pode%20ser%20Simples%20ou%20Composta.&amp;text=A%20Estrutura%20Condicional%20Simples%20executa,se%20a%20condi%C3%A7%C3%A3o%20for%20verdadeira\">%20Condicional%20possibilita%20a,pode%20ser%20Simples%20ou%20Composta.&amp;text= <\/a><a href=\"http:\/\/fabrica.ms.senac.br\/2013\/06\/algoritmo-estruturas-condicionais\/#:~:text=A%20Estrutura%20Condicional%20possibilita%20a,pode%20ser%20Simples%20ou%20Composta.&amp;text=A%20Estrutura%20Condicional%20Simples%20executa,se%20a%20condi%C3%A7%C3%A3o%20for%20verdadeira\">A%20Estrutura%20Condicional%20Simples%20executa,se%20a%20condi%C3%A7%C3% <\/a><a href=\"http:\/\/fabrica.ms.senac.br\/2013\/06\/algoritmo-estruturas-condicionais\/#:~:text=A%20Estrutura%20Condicional%20possibilita%20a,pode%20ser%20Simples%20ou%20Composta.&amp;text=A%20Estrutura%20Condicional%20Simples%20executa,se%20a%20condi%C3%A7%C3%A3o%20for%20verdadeira\">A3o%20for%20verdadeira<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-blogson wp-block-embed-blogson\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"Tg1kFQhpFV\"><a href=\"https:\/\/www.blogson.com.br\/estrutura-condicional-se-senao\/\">Estrutura condicional SE SEN\u00c3O<\/a><\/blockquote><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Estrutura condicional SE SEN\u00c3O&#8221; &#8212; Blogson\" src=\"https:\/\/www.blogson.com.br\/estrutura-condicional-se-senao\/embed\/#?secret=aKy4ncuD7V#?secret=Tg1kFQhpFV\" data-secret=\"Tg1kFQhpFV\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>L\u00f3gica de programa\u00e7\u00e3o e GitHub no ACT &#8211; Aula 6 At\u00e9 agora aprendemos a criar vari\u00e1veis, atribuir valores a elas e fazer opera\u00e7\u00f5es. Apenas com isso j\u00e1 \u00e9 poss\u00edvel fazer diversos programas, como uma pequena calculadora, por exemplo. Entretanto, ainda n\u00e3o \u00e9 poss\u00edvel fazer programas que tenham comandos condicionais. Comandos condicionais Tal qual na l\u00edngua [&hellip;]<\/p>\n","protected":false},"author":52,"featured_media":2853,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[1],"tags":[],"class_list":["post-1963","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sem-categoria"],"wps_subtitle":"","_links":{"self":[{"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/posts\/1963","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/users\/52"}],"replies":[{"embeddable":true,"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/comments?post=1963"}],"version-history":[{"count":8,"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/posts\/1963\/revisions"}],"predecessor-version":[{"id":2670,"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/posts\/1963\/revisions\/2670"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/media\/2853"}],"wp:attachment":[{"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/media?parent=1963"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/categories?post=1963"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/liag.ft.unicamp.br\/act\/wp-json\/wp\/v2\/tags?post=1963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}