27
2010
Aprenda a programar #4 | Algoritmos – Estrutura do Portugol
Bem vindos algoritmizeiros (acabei de inventar essa expressão =x) a mais um post da série Aprenda a Programar.
Hoje, iremos nos aprofundar um pouco mais na pseudo-linguagem portugol, e a partir de agora será necessário para um melhor acompanhamento, que todos já tenham o VisualG instalado na máquina.
Se você é marinheiro de primeira viagem, de uma olhada nos outros posts da série:
Aprenda a programar #1 / Aprenda a programar #2 / Aprenda a programar #3
Então vamos ao que interessa!
Estrutura do portugol…
Todo e qualquer algoritmo, terá sempre um Nome, Declaração de variáveis, Início e Fim. Na estrutura abaixo:
Algoritmo “nome-do-seu-algoritmo”
VAR
nome-da-var: tipo
nome-da-var2: tipo
INICIO
|
|
|
|
FIMALGORITMO
Ok, entendi o “Nome” “Início” e “Fim” mas…
O que é declaração de variáveis?
A declaração de variáveis, é uma parte obrigatória no portugol, assim como em outras linguagens de programação como C por exemplo.
Ela é necessária para que o interpretador entenda que aquela palavra é uma variável, além de ser útil em muitos casos, para que não dê um erro em seu programa futuramente devido a um erro de digitação, acusando de imediato onde está o erro.
Na estrutura do Portugol, dentro da seção VAR, declaramos a variável da seguinte maneira:
Nome-da-var: tipo
ex:
meunome: caractere
Ainda sobre a questão de variáveis, não vou entrar em muitos detalhes, pois as mesmas foram explicadas no post anterior.
Vamos então criar nosso primeiro programa…!
Na tela Inicial do VisualG, já temos a estrutura de nosso portugol pronta, como expliquei no início do post.
algoritmo “olá mundo”
var
inicio
escreva(“Olá Mundo!”)
fimalgoritmo
Não entendi nada! o que é esse “escreva“?
O escreva é uma palavra reservada do portugol, como expliquei no Aprenda a programar #3.
Sua função é escrever na tela o texto entre ” ” (aspas)
Se você está utilizando o visualg, ao digitar este código e apertar F9, o código será executado, e você verá que estará escrito na tela apenas a frase: Olá Mundo!
E porquê não há nada no campo das variáveis?
Porque ainda não utilizamos nenhuma.
No código acima, como vocês podem ver, foi utilizado apenas um minúsculo pedaço do que podemos fazer em portugol.
No algoritmo a seguir, vamos fazer o uso da função leia() e de variáveis.
algoritmo “leianumero”
var
num: inteiro
inicio
escreva(“Digite um número: “)
leia(num)
escreva(“O número digitado é: “, num)
fimalgoritmo
Entendendo o algoritmo…
Foi declarado a variável num, como inteiro. Ou seja, poderá receber qualquer número não-fracionário (-2, -3, -20, 0, 1, 2, 40, 18…)
Em seguida, o algoritmo irá solicitar ao usuário que digite um número, escrevendo na tela a seguinte frase: Digite um número:
Se vocês notarem, há um espaço após os : e antes da “, isso é necessário para que o cursor dê o espaço desejado.
Como falei em um post anterior da série, o computador não é 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 usuário digite um número inteiro e tecle enter.
O num é a variável que declaramos no início do algoritmo, lembram?
E finalmente, o resultado.
escreva(“O número digitado é: “, num)
É importante notar, que no escreva, tudo o que estiver entre aspas, vai ser tratado como um texto qualquer, então para retornarmos o conteúdo de uma variável, fechamos primeiro as aspas, colocamos uma vírgula e digitamos o nome da variável, para só então fechar o parenteses.
Testem o algoritmo acima no VisualG, e vejam o resultado.
Treinem mais um pouco…
Galera, que tal treinar mais um pouco…
- Crie um algoritmo que leia 2 números e mostrem o resultado.
- Crie um algoritmo que leia o nome e a idade de alguém, e mostre na tela o que foi digitado.
Dica: no exercício 2, terá que ser declarado duas variáveis, uma do tipo inteiro e outra do tipo caractere. Se houver dúvidas, de uma olhada no post anterior.
Depois de criar o algoritmo, entrem na filosofia do Software Livre, compartilhe seu código conosco!
Porque não postar seu código nos comentários para ajudar quem tem dúvidas? Existem diversas maneiras de chegar a uma solução a partir de um algoritmo!
Dúvidas?!?!?
Postem nos comentários, que eu, o pedro e todos os leitores que souberem concerteza irão te ajudar!
Abraços e até o próximo post!1!

Artigo criado por














algoritmo “Leia dados”
var
nome:caractere
inicio
escreva(“qual seu nome? “)
leia(nome)
escreva(“hm legal e ai muitos amigos??”)
leia(nome)
escreva(“tu é muito gato”)
leia(nome)
fimalgoritmo
[Reply]
Eduardo Reply:
April 15th, 2012 at 02:32
forever alone usahausasuasuhsa
não entendi o segundo exercicio primeiro dos numeros eu fiz mas mandei esse ai pra descontrair
[Reply]
algoritmo,numero
var
n1,n2:inteiro
inicio
escreva(digite o primeiro numero”);
leia(n1)
escreva(“digite o segundo numero”)
leia(n2)
escreva(n1)
escreva(n2)
quero saber se ta certo,fiz no visual g e funcionou
[Reply]
johnatas martins Reply:
April 25th, 2012 at 21:23
Amigo está correto
[Reply]
algoritmo,idadenome
var
nom:caracter;
id:inteiro;
inicio
escreva(“digite o nome”);
leia(nom);
escreva(“digite a idade”)
leia(id);
escreva(o nome é:’,nom,’a idade será:”,id)
fimalgoritmo
rodou no visual g
[Reply]
Oláa, Boa Noite ..Uma coisa: ao invés de aparecer o “Olá Mundo” aparece uma tela preta com:
*** Fim da execução.
*** Feche esta janela para retornar ao Visualg.
O que que eu estou fazendo errado? xD
Belo Post.
Grato!
[Reply]
Sei que muita gente já Postou o Algoritmo mais vou postar o meu !
vai que alguém precisa…
algoritmo “Exercício 1″
// Função :
// Autor :
// Data : 24/04/2012
// Seção de Declarações
var
num1:real
num2:real
inicio
// Seção de Comandos
escreval(“Digite um Número”)
leia(num1)
escreval(“digite um número”)
leia(num2)
escreval(” Os Números Digitados Foram:”, num1, ” e “,num2)
fimalgoritmo
[Reply]
Segundo Exercício.
algoritmo “Nome e Idade”
// Função :
// Autor :
// Data : 24/04/2012
// Seção de Declarações
var
nome:caracter
idade:real
inicio
// Seção de Comandos
Escreval(“Digite Seu Nome”)
leia(nome)
escreval(“Digite Sua Idade”)
leia(idade)
Escreval (“Seu Nome é “,nome)
Escreval(“Sua Idade é “,idade)
fimalgoritmo
[Reply]
algoritmo “primeiroteste”
// Função :testeparanossaalgria
// Autor : johnatas martins
// Data : 25/04/2012
// Seção de Declarações
var
nota1: inteiro
nota2: inteiro
inicio
escreva (“digite sua primeira nota”)
leia (nota1)
escreva (“digite sua segunda nota”)
leia (nota2)
escreva (” O resultado da sua nota é:”,nota1+nota2)
// Seção de Comandos
fimalgoritmo
Eu vou postar só esse, mais tenho um dúvida. Na hora que a pessoa tem que digitar o número ele é colocado do lado da letra, eu sei que tem um comando que pode fazer com que o número ou qual quer coisa digitada apareça na linha de baixo, alguém sabe me explicar qual é e como utiliza – lo ?
[Reply]
eduardo alvarez Reply:
April 29th, 2012 at 13:13
escreval(“Texto”)
assim aparecerá o proximo texto na linha de baixo.
[Reply]
algoritmo “exibir dois numeros”
// Função :
// Autor : marcella ingrid moura
// Data : 27/04/2012
// Seção de Declarações
var
n1,n2:inteiro
inicio
escreva(“digite um numero: “)
leia(n1)
escreva(“digite outro numero: “)
leia(n2)
escreva(“os numeros digitados foram:”, n1 ,” e “, n2)
fimalgoritmo
[Reply]
algoritmo “leianumero”
// Função :
// Autor :
// Data : 06/05/2012
// Seção de Declarações
var
n1, n2: inteiro
inicio
escreva(“digite um numero numero”)
leia(n1)
escreva(“digite outro numero”)
leia (n2)
escreva(“os numeros digitados são: “, n1,” e”, n2)
fimalgoritmo
[Reply]
Todos já fizeram mas, só para contribuir:
algoritmo “Exibindo Números”
// Autor : Bella Felix
// Data : 06/05/2012
// Seção de Declarações
var
n1,n2:inteiro
inicio
escreva(“Digite o primeiro número, mané:”)
leia(n1)
escreva(“Digite o segundo número, mané:”)
leia(n2)
escreva(“Aê mané, os números foram:”, n1 ,” e”, n2)
fimalgoritmo
[Reply]
algoritmo “soma”
// Função :
// Autor :
// Data : 07/05/2012
// Seção de Declarações
var
num1:real
num2:real
inicio
escreval(“Digite um número: “)
leia(num1)
escreval(“Digite um outro numero: “)
leia(num2)
escreval(“O resultado dos dois numeros é:”,num1+num2)
escreval(“SOU MUITO INTELIGENTE *_____*”)
// Seção de Comandos
fimalgoritmo
[Reply]
Hahahahaah nossa é extraordinário oque a imaginação é capaz de fazer ^^ ‘-’
algoritmo “idadenome”
// Função :
// Autor :
// Data : 07/05/2012
// Seção de Declarações
var
nome:caractere
id:inteiro
inicio
escreval(“Digite seu nome: “)
leia(nome)
escreval(“Digite sua idade: “)
leia(id)
escreval(“Você se chama:”,nome , ” e tem”, id, ” anos de idade”)
escreval(“SOU MUITO INTELIGENTE *_____*”)
// Seção de Comandos
fimalgoritmo
[Reply]
Como faço para mostrar os números em um intervalo [A,B] ?
[Reply]