Académique Documents
Professionnel Documents
Culture Documents
No sou matemtico, muito menos especialista em estatstica, mas acredito que 7 em cada 10 pessoas apaixonadas por tecnologia, j tiveram vontade de desenvolver seu prprio software, ou melhorar um outro cdigo em um software livre. pensando nisso que o Algoritmizando estria hoje uma nova seo! Toda tera-feira, iremos postar uma matria ensinando esse fantstico mundo de programao. comeando a partir de algoritmos, e dependendo da participao do pessoal, nos comentrios, dvidas, etc, poderemos ir bem mais longe, e quem sabe, realmente formar alguns bons programadores Como hoje apenas uma introduo do que h por vim, estarei dando um breve conceito sobre o que uma linguagem de programao.
Porque programar?
Voc pode programar para alcanar inmeros objetivos, como por exemplo, desenvolver um software, para automatizar tarefas, quem sabe vende-lo e ficar rico! ou melhor ainda, j pensou em criar um jogo de computador? ficar famoso e. rico! Voc tambm pode programar para web, desenvolver aplicativos e se fizer sucesso, hmm pode ficar rico! rsrs Sim, a rea de tecnologia um mercado em constante crescimento e com salrios iniciais relativamente altos. Se voc tem uma paixo em especial por computadores, por que no entender sua linguagem e se comunicar melhor com eles ^^
O computador entende apenas a linguagem binrio, ou seja, 1 e 0, ligado ou desligado, tenso alta ou tenso baixa No tem meio termo Quer dizer que tenho que aprender a programar em 0 e 1? Negativo. Hoje em dia, temos o que chamamos de compiladores e interpretadores. So eles que fazem essa traduo de nossa linguagem para linguagem de mquina.
Ouvi dizer, que existem linguagens de baixo e alto nvel, qual a diferena?
Resumidamente, as linguagens de baixo nvel, so aquelas que possuem contato direto com o hardware do computador, geralmente linguagens compiladas, como por exemplo C, C++, Assembly Enquanto as linguagens de alto nvel o contato com o software, exemplos so linguagens interpretadas como Python, PHP, JavaScript, Pasca...
Bem vindos ao segundo post da srie: Aprenda a Programar No primeiro post da srie, abordamos alguns conceitos sobre linguagem de programao. A partir de hoje, iremos aprender uma pseudo-linguagem, para facilitar o entendimento futuro e adiquirir certa lgica de programao. Mas por onde comear? Para maioria dos seres mortais, a base de tudo, est nos Algoritmos
O que um algoritmo?
Segundo a Wikipdia Um algoritmo uma sequncia finita de instrues bem definidas e no ambguas, cada uma das quais pode ser executada mecanicamente num perodo de tempo finito e com uma quantidade de esforo finita. Ok Bruno Agora traduz!!! O algoritmo, uma instruo, ou uma ordem que voc dar ao computador, para que ele realize determinada tarefa. Ao contrrio do que a maioria das pessoas pensam, o computador no inteligente, quem inteligente, o programador!
Simplificando
Para que o computador entenda algo, necessrio que voc o ensine passo-a-passo, como deve proceder. Como em uma receita de bolo. Um exemplo: Em nossa linguagem, se eu fosse criar um algoritmo explicando o que acontece quando acordo at o momento que entro no chuveiro, seria mais ou menos o seguinte: Inicio Bruno Barbosa desperta
abre os olhos senta na cama coloca o primeiro p no cho pe o segundo fica de p anda at a sala de estar chuta com o mindinho do p a ponta do sof diz algumas palavras de baixo calo devido ter machucado muito continua caminhando entra no banheiro fica nu (ui) entra em baixo do chuveiro liga o chuveiro toma banho FIM Pode-se perceber ento, que tudo um algoritmo. O sistema de buscas do Google, tem um algoritmo por trs dele, o msn que vocs tanto gostam, tambm tem um algoritmo, e assim sucessivamente. Para aprendermos melhor sobre isto, antes de passar para qualquer tipo de linguagem de programao propriamente dita, iremos aprender a programar em uma pseudolinguagem, conhecida como Portugol ou Portugus Estruturado.
Portugol
O portugol, uma pseudo-linguagem criada para facilitar o aprendizado de algoritmos e lgica de programao, ela possui suas particularidades como qualquer outra linguagem, e a partir do prximo post, iremos passar a programar nesta linguagem, utilizando a ajuda do software VisualG. Ento no percam e nos acompanhem, que toda tera, um post novo para voc aprender a programar!
Posted by Bruno Barbosa on abr 20, 2010 in Algoritmos, Desenvolvimento | 193 comments
aprenda a programar Desenvolvimento portugol tipos de variaveis variaveis
Combo!
Isso mesmo, devido ao sucesso do aprenda a programar #1 e mais alguns outros fatores no to importantes, nesta tera-feira, um presente do algoritmizando para vocs! Dois posts da srie Aprenda a programar em um nico dia! Para quem perdeu os outros posts anteriores, est aqui uma lista do que j foi passado: Aprenda a programar #1 Introduo a linguagem de programao e explicao de alguns conceitos importantes. Aprenda a programar #2 Introduo a algoritmos, portugol e conceitos. Ento vamos ao que interessa
Variveis
Sim, variveis. E para quem ainda no sabe, em programao, o uso da matemtica relativamente alto e importante tambm, que voc possua um bom raciocnio lgico. Sabe aquela matria de lgica matemtica, que voc aprendeu no ensino mdio, fundamental, ou qualquer que seja pois, ela bastante til aqui!
Desenho de como seria uma varivel Vamos entender varivel, como uma caixa, na qual voc pode dar o nome que lhe achar conveniente, e guardar o contedo que desejar. Ou seja, toda varivel tem um nome, valor e tipo.
Mas voc no falou de tipo, o que isso?
numrica (numeros reais ou inteiros); caracteres (sequncias de texto); booleanas (verdadeiro ou falso);
Sim e No! Como assim? Certas palavras, so reservadas para o uso da linguagem, ou seja, essas palavras no podem ser utilizadas como um nome para sua varivel, pois haveria um conflito na hora de interpretar o cdigo. Abaixo, uma tabela sobre as palavras reservadas do portugol:
Palavras reservadas do Portugol No se preocupe em decorar essa tabela, no necessrio! A medida em que voc for aprendendo a programar em portugol, voc saber exatamente qual palavra , e qual no reservada pela linguagem. Outras restries para o nome de sua varivel :
O primeiro caractere de sua varivel, deve ser necessariamente letra ou underline _. No pode comear em nmeros Nomes de variveis no podem ter espaos em branco. Nada de Coca Cola por exemplo. Uma varivel correta seria ArgoHost, tudo junto e sem espaos. Essa aqui chega a ser difcil No permitido variveis com mais de 127 caracteres (pasmem! quem criaria uma varivel desse tamanho?) E por fim, em Portugol, diferente de outras linguagens de programao, as variveis no so case sensivity, ou seja, elas no diferenciam maisculas de minsculas. Logo, BrUnO = bruno.
Tipos de variveis do portugol Galera, isso a, qualquer dvida, sugestes, deixeem comentrioos!!!
Somente aqui no algoritmizando, voc tem um curso completo para aprender a programar para no dizer de graa, com o custo de apenas UM COMENTRIO. Ento, vamos participar! Quanto mais participao, mais posts para vocs!!! Um forte abrao e at a prxima tera-feira. Mas enquanto no chega, acessem diariamente o algoritmizando, pois sempre tem um post novo para voc!
Bem vindos algoritmizeiros (acabei de inventar essa expresso =x) a mais um post da srie Aprenda a Programar. Hoje, iremos nos aprofundar um pouco mais na pseudo-linguagem portugol, e a partir de agora ser necessrio para um melhor acompanhamento, que todos j tenham o VisualG instalado na mquina. Se voc marinheiro de primeira viagem, de uma olhada nos outros posts da srie: Aprenda a programar #1 / Aprenda a programar #2 / Aprenda a programar #3 Ento vamos ao que interessa!
Estrutura do portugol
Todo e qualquer algoritmo, ter sempre um Nome, Declarao de variveis, Incio e Fim. Na estrutura abaixo:
Algoritmo nome-do-seu-algoritmo
O escreva uma palavra reservada do portugol, como expliquei no Aprenda a programar #3. Sua funo escrever na tela o texto entre (aspas) Se voc est utilizando o visualg, ao digitar este cdigo e apertar F9, o cdigo ser executado, e voc ver que estar escrito na tela apenas a frase: Ol Mundo!
Porque ainda no utilizamos nenhuma. No cdigo acima, como vocs podem ver, foi utilizado apenas um minsculo pedao do que podemos fazer em portugol. No algoritmo a seguir, vamos fazer o uso da funo leia() e de variveis. algoritmo leianumero var num: inteiro inicio escreva(Digite um nmero: ) leia(num) escreva(O nmero digitado : , num) fimalgoritmo
Entendendo o algoritmo
Foi declarado a varivel num, como inteiro. Ou seja, poder receber qualquer nmero no-fracionrio (-2, -3, -20, 0, 1, 2, 40, 18) Em seguida, o algoritmo ir solicitar ao usurio que digite um nmero, escrevendo na tela a seguinte frase: Digite um nmero: Se vocs notarem, h um espao aps os : e antes da , isso necessrio para que o cursor d o espao desejado. Como falei em um post anterior da srie, o computador no inteligente, ou seja, voc tem que explicar tudo a ele, passo a passo. o leia(num) ir aguardar com o cursor na tela at que o usurio digite um nmero inteiro e tecle enter. O num a varivel que declaramos no incio do algoritmo, lembram? E finalmente, o resultado. escreva(O nmero digitado : , num)
importante notar, que no escreva, tudo o que estiver entre aspas, vai ser tratado como um texto qualquer, ento para retornarmos o contedo de uma varivel, fechamos primeiro as aspas, colocamos uma vrgula e digitamos o nome da varivel, para s ento fechar o parenteses. Testem o algoritmo acima no VisualG, e vejam o resultado.
Dica: no exerccio 2, ter que ser declarado duas variveis, uma do tipo inteiro e outra do tipo caractere. Se houver dvidas, de uma olhada no post anterior. Depois de criar o algoritmo, entrem na filosofia do Software Livre, compartilhe seu cdigo conosco! Porque no postar seu cdigo nos comentrios para ajudar quem tem dvidas? Existem diversas maneiras de chegar a uma soluo a partir de um algoritmo!
Ol algoritmizeiros Bem vindo ao quinto post da srie Aprenda a programar Hoje, passaremos a vocs como atribuir valor a uma varivel, sem utilizar a interao com o leitor, ou seja, sem a utilizao do comando leia(variavel), e tambm aprenderemos sobre os operadores matemticos, para que em breve, possamos comear a fazer algoritmos de verdade! O resultado dos desafios que passei no post anterior, estaro nos comentrios do mesmo. Ento vamos comear. Mas antes
e se por acaso, eu precisar atribuir um valor uma varivel sem a interao do leitor Bruno?
Atribuio
Utilizaremos este smbolo/sinal/setinha, para atribuir um valor a uma varivel: < Exemplo: numero <- 10 id <- 18 e tambm, podemos atribuir a uma varivel, o valor de outra varivel.
No entendi nada
Por exemplo, eu tenho a varivel x, que possui o valor 20, e tambm a varivel id, que pode conter, ou no algum valor. A questo que eu quero atribuir a varivel id, o valor da varivel x como seria? simples id <- x
Resumindo
Para atribuir um valor qualquer a uma varivel, basta digitar o nome da varivel, seguida de uma seta para esquerda, seguido do valor que voc quer que ela tenha
Bruno, entendi essa parte, mas quero fazer mais do que escrever e ler dados em meu algoritmo
Ok, vocs quem mandam! Nem tudo na vida, sequencial, ou seja, possvel resolver apenas de uma maneira. As vezes, preciso haver condies para executar determinada tarefa, assim como efetuar operaes matemticas, e outros Nesse caso, utilizaremos operaes matemticas, condicionais, laos de repeties, etc. No se assustem, veremos cada um passo-a-passo, no difcil!
A princpio, neste post, ficaremos apenas nos operadores aritmticos, e vermos o restante a partir da prxima tera-feira.
Operadores aritmticos
Para se realizar clculos com variveis, ou nmeros definidos pelo programador, utilizaremos alguns sinais j bastante conhecidos por todos vocs: Para entender os operadores aritmticos, importante ressaltar, antes de mais nada, que como estamos ensinando algo para o computador, no podemos e no temos como passar para ele do jeito que escrevemos Por exemplo, em uma frmula matemtica, teramos que passar tudo para uma linha apenas. o que chamamos de linearizao. Vocs iro entender melhor ao visualizar a imagem abaixo:
Calma galera, de uma olhada na tabela abaixo, dos operadores aritmticos, e ficar mais fcil o entendimento
Cada um desses, sero explicados mais detalhadamente a medida em que iremos utilizando-os
Ol queridos algoritmizeiros, como de costume, toda semana tem posts para vocs da srie: Aprenda a Programar. No quinto post, concluimos falando dos operadores aritmticos e creio eu que no deve haver nenhuma dvida, j que no vi manifestaes nos comentrios Ento hoje iremos abordar mais alguns tipos de operadores Ento. est esperando o que para comear a aprender? ^^
Operadores relacionais
Os operadores relacionais, servem para realizar a comparao entre duas expresses, e resultam apenas um valor Verdadeiro ou Falso. Observem a tabela abaixo:
Tem sim! as comparaes, no so nenhuma novidade do que aprendemos na escola por exemplo:
Simples no?
Os operadores lgicos
Temos ainda mais 3 operadores, o E, OU e o NAO, esses so chamados de operadores lgicos, e tambm iro resultar apenas um valor, podendo ser Verdadeiro ou Falso.
No desenvolvimento de um programa, nem tudo so flores, ou seja, vamos colocar nossa cabea para pensar As vezes necessrio juntar, dois ou mais operadores diferentes para conseguir um resultado Por exemplo: (2 + 2 < 5) e (18 <> 18) resulta FALSO, pois como podemos observar na tabela verdade acima, Verdadeiro e Falso resulta Falso.
No operador E: Ser verdadeiro quando as duas expresses forem verdadeiras. No operador Ou: Ser verdadeiro quando qualquer uma das expresses forem verdadeiras.
Logo,
Se houver UMA expresso falsa no operador E, o resultado sempre ser FALSO. No operador OU, ser FALSO apenas quando as duas expresses forem FALSAS.
Que tal responder alguns desafios? retornando o resultado da expresso, sendo ele, Verdadeiro ou Falso.
1. 2. 3. 4. 5. ((3 + 5) / 2) > 0) : (3 * 3 > 10) ou (2 + 2 < 10) : (10 <> 5) ou (1 + 1 = 0) : (2 + 3 >= 5) e (18 / 3 < 7) : (1 + 1 = 0) e (0 1 > 0) :
O resultado dos desafios sair aqui mesmo nesse post, na seo de comentrios na data de lanamento do prximo post da srie.
Estrutura condicional
Vejamos Se o Flamengo vencer entao . ele ser campeo da libertadores fimse =D Sim, na vida, as vezes nos deparamos em situaes na qual precisamos escolher algo somente se outra coisa acontecer Chamamos isso de condio.
Nos algoritmos, tambm utilizaremos isto, como vocs notaram no comeo do post, o que utilizei ali, foi uma estrutura condicional. Observem bem, o que est em negrito, as palavras se, entao, fimse. Elas sero importantssimas em nosso algoritmo ento, poderia basicamente dizer que em um algoritmo a sintaxe seria a seguinte: se <condio> entao . <aes a serem realizadas se a condio for verdadeira> //pode ser uma ou mais fimse
Eu sei que o computador no entenderia se eu colocasse simplesmente ele ser campeo da libertadores, ento como ficaria isso em um algoritmo?
Esse foi um exemplo bem didtico, mas em portugol, seria mais ou menos o seguinte: se (vencedor = Flamengo) entao . escreva(Flamengo ser o campeo da Libertadores!!!) fimse
Esse espao, o que chamamos de identao, que alm de ser uma questo de tica entre os programadores, ele vai servir para que seu cdigo tenha uma melhor aparncia, e fique mais fcil para entend-lo e dar manuteno.
5. 6. 7. 8.
se dinheiro < 30 entao . ir_ao_cinema <- falso . assistir_tv <- verdadeiro fimse
Observem que agora na linha quatro, apareceu uma palavrinha nova para ns O senao
Agora, um algoritmo facin facin, para que vocs entendam por vez, como funciona a estrutura condicional se.
Tentem entender o algoritmo acima sem copia-lo no VisualG. E caso no tenham conseguido entender, pode postar nos comentrios que explicarei linha por linha E mais dois desafios extras =)
1. Faa um algoritmo que receba um nmero e mostre uma mensagem caso este nmero seja maior que 10. 2. Faa um algoritmo que receba um nmero, e informe se este nmero est no intervalo de 100 a 200.
Escolha caso
Ol algoritmizeiros, chegamos hoje ao oitavo post de nosso curso/srie/aula (como queiram chamar =) sobre algoritmos. Para quem no conhece ainda, o Aprenda a Programar, uma srie de posts lanados toda semana, geralmente na tera ou quarta-feira, ensinando uma linguagem de cunho didtico para que se possa iniciar no fantstico mundo da programao. Essa linguagem chama-se Portugol. Voc pode ver todos os posts j lanados clicando aqui, ou no menu lateral do site. Ento vamos ao que interessa!!! No ltimo post, aprendemos sobre estrutura condicional, quando e como utilizar o operador SE-ENTAO-SENAO, porm, dependendo da ocasio, quando se h muitas escolhas diferentes, nosso cdigo pode ficar grande, e de difcil leitura Nesse caso, entra mais uma funo em nosso querido algoritmo, o ESCOLHA CASO CASO OUTROCASO =) Ele to simples quanto o SE, e acredito que no deve haver tantas dvidas.
Abaixo tem um algoritmo, sobre a classificao de atletas pela sua faixa etria, este exemplo, poderia ter sido feito utilizando a estrutura condicional se ento, mas aqui utilizarei o escolha caso, para que vocs entendam como funciona o mesmo. Mas antes do algoritmo
Comentrios
Comentrios de que Bruno?
Futebol, religio, fofoca No, no nada disso! os comentrios que direi agora, so trechos no cdigo em que podemos escrever algo sem que o interpretador ache que isso uma linha de cdigo. Em portugol, nossos comentrios so tudo aquilo precedido por // (duas barras)
Para que serve os comentrios?
Os comentrios em um cdigo, serve para facilitar o entendimento por outros programadores. No podemos ser egostas em pensar que apenas voc que o escreveu deve entende-lo, outras pessoas mais cedo ou mais tarde, precisaro ter acesso ao cdigo para dar manuteno ao mesmo, seja ele software livre ou no.
E finalmente o Algoritmo
algoritmo Classificao de Atletas var nome, categoria: caractere idade: inteiro inicio escreva(Digite o nome do atleta: ) leia(nome) escreva(Informe a idade do atleta: ) leia(idade) // At aqui tudo bem, ele pede o nome e idade, l os valores e joga nas respectivas variveis escolha idade // A funo escolha ir interpretar os casos abaixo em cima da varivel idade caso 5,6,7,8,9,10
// Caso a varivel idade receba os valores de 5 a 10, ir atribuir na varivel categoria o valor: infantil . categoria <- infantil caso 11,12,13,14,15 // Caso a varivel idade receba os valores de 11 a 15, ir atribuir na varivel categoria o valor: juvenil . categoria <- juvenil caso 16,17,18,19,20 // Caso a varivel idade receba os valores de 16 a 20, ir atribuir na varivel categoria o valor: junior . categoria <- junior caso 21,22,23,24,25 // Caso a varivel idade receba os valores de 21 a 25, ir atribuir na varivel categoria o valor: profissional . categoria <- profissional outrocaso // E se a varivel idade no receber nenhum dos valores acima mencionados, vamos atribuir a varivel categoria o valor: invlido . categoria <- INVALIDO fimescolha // O fimescolha finaliza a funo que abrimos anteriormente escreva(Categoria: ,categoria) // E este ltimo escreva, serve para que possamos mostrar o resultado ao usurio fimalgoritmo Caso vocs prefiram, disponibilizei o arquivo .alg para ser aberto no VisualG do algoritmo acima, o link para download est logo abaixo:
Estruturas de repetio
Bem vindo algoritmizeiros Parece que foi ontem que comeamos nossa srie de posts sobre algoritmos, na tentativa de fazer esse mundo melhor com mais programadores =D Agora, no nono post da srie, vamos aprender sobre estruturas de repetio.
Mas porqu?
Primeiramente foi declarado a varivel i como inteiro, logo em seguida utilizamos uma estrutura de repetio, o repita-ate, pedimos para escrever o valor de i e acrescentamos ao seu valor mais uma unidade, ou seja, i + 1.
e at quando isso ser repetido?
At que o valor de i seja maior que 10 Ento quando o valor de i chegou a 11, ele perguntou se i era maior que 10, como a resposta foi verdadeira, ele encerrou a repetio e foi para o prximo comando Como no temos mais nada, encerramos nosso algoritmo.
Agora, o algoritmo da mdia dos alunos
No! Agora que j sabemos utilizar uma estrutura de repetio, vamos poupar trabalho e resumir nosso algoritmo!
Por enquanto isso galera Semana que vem, aprenderemos mais sobre estruturas de repetio, no percam
Enquanto isso, treinem mais um pouco sobre a estrutura de repetio repita-ate, isso ser importante em toda a vida de programador de vocs
Enquanto Faa
Ol algoritmizeiros! Primeiramente queria pedir desculpas pelo atraso no post dessa semana, mas a correria trabalho-trabalho-faculdade-casa grande, e as vezes o tempo pouco Dando prosseguimento ao post anterior, sobre estruturas de repetio, hoje vamos aprender sobre o comando enquanto faca. Diferentemente do repita-ate, onde todos os comandos so interpretados, para s ento haver uma expresso lgica verificando se deve ou no continuar a repetio, o enquanto-faca ir avaliar uma expresso lgica e, enquanto esta for verdadeira, ir executar os comandos
Neste exemplo, vou criar um algoritmo utilizando o repita-ate e depois o mesmo algoritmo, s que dessa vez utilizando a estrutura enquanto faca, explicando passo-apasso a vocs, para que possam entender a diferena entre ambos.
- Faa um algoritmo que solicite que o usurio digite um nmero, e informe se este nmero maior que 10. O programa s pode parar de solicitar o nmero quando este for igual a 0 (zero) Utilizando a estrutura de repetio repita .. ate
Nesse exemplo, comeamos nosso algoritmo atribuindo o valor 1 a varivel nmero, para que possamos comear a utilizar nossa estrutura de repetio, conforme podem ver na linha 9; E na linha 10, nossa condio para que o lao continue sendo executado, ou seja, enquanto a varivel numero for diferente de 0 (zero), continuaremos executando o programa, e o usurio digitando nmeros para descobrir se maior ou menor que zero (como se fosse necessrio um programa para isso rsrsrs) claro, claro, apenas um exemplo didtico Mas que tal ver se realmente aprendeu? Deixo aqui ento um desafio a vocs
1. Crie dois algoritmos, um utilizando a estrutura de repetio repita .. ate e outro utilizando o enquanto .. faca. 2. Uma loja est vendendo trs modelos de carro, o algoritmo deve ler o nome e o valor (R$) dos seguinte automveis: GOL, PALIO, CORSA 3. Ao final, informar quantos carros de cada modelo foram vendidos e o valor total arrecadado em reais. 4. O programa s pode encerrar quando o valor do veculo for igual a zero.
Ol algoritmizeiros de planto, nada melhor do que comear a semana com post novo sobre algoritmos. No comeo desse ms, comeamos a falar sobre estruturas de repetio, as estruturas repita .. ate e enquanto .. faca. Hoje para finalizar essa parte, iremos abordar a estrutura PARA .. FACA.
Para .. Faa
A sintaxe geral da estrutura de repetio para .. faca a seguinte:
Explicando
O X a varivel que deve ser previamente declarada, o N o nmero que comear a contagem, M at onde vai essa contagem, e o passo Y s ser necessrio se voc no quiser que seja de 1 em 1 Sei que no entenderam nada, ento vou mostrar um exemplo de uma estrutura de repetio utilizando enquanto .. faca e aps, um utilizando o para .. faca, voc ver que ir ficar bem mais simples!
Nesse algoritmo, foi utilizado a estrutura de repetio enquanto .. faca, como vocs podem notar, foi declarado a varivel num para servir como condio para execuo do lao, e ao mesmo tempo, imprimimos o valor da mesma na tela atravs do comando escreva.
Essa estrutura vai imprimir o seguinte resultado na tela do usurio: 1 2 3 4 5 6 7 8 9 10 Agora, a mesma estrutura, agora utilizando o para .. faca.
Esse algoritmo, tem a mesma funo do algoritmo acima, porm dessa vez utilizando a estrutura para .. faca.
O Comando PASSO N:
Passo 2
Vocs devem estar se perguntando de onde surgiu esse passo 2 agora Lembram que na sintaxe do para .. faca expliquei que ele no obrigatrio, mas poderia surgir? ento! por padro no portugol, ele sempre acrescentar +1 a varivel que agente est utilizando no lao, mas nesse exemplo, eu preciso pegar apenas os nmeros pares, ou seja, de 2 em 2. Bingo! Est explicado ento, o porqu do passo 2, assim em cada iterao, ele acrescentar +2 na varivel num, esta que sempre ser um valor par, que o que queremos nesse exemplo.