Introdução a Linguagem Pascal 24.05.17 22:02
Olá a todos novamente!
Hoje, finalmente, iremos começar a programar de fato, e fazer o nosso primeiro programa! Quanto a linguagem, iremos utilizar a Linguagem Pascal num primeiro momento. Apesar de muitos não concordarem com o uso dela, eu a considero a melhor escolha para o ensino da programação, por ter uma sintaxe clara e fácil de ser entendida.
Para escrever e compilar (transformar o código escrito em um arquivo executável), utilizaremos o Pascal Zim, um ambiente criado pelo departamento de Ciência da Computação da Universidade de Brasília, para o auxílio no ensino da disciplina de Algoritmos. Atualmente, ele encontra-se na versão 5.01. O link para download você encontra aqui. Algumas pessoas podem preferir utilizar o Turbo Pascal, da Borland. Eu optei pelo Pascal Zim por dois motivos: a última versão do Turbo Pascal é de 1991 (ou seja, já tem 18 anos!!!) e também pelo fato do Pascal Zim ser brasileiro! (vamos valorizar os programadores do Brasil!). Caso queiram utilizar o Turbo Pascal, fiquem à vontade, pois a sintaxe é a mesma.
Após baixarem o Pascal Zim, descompacte-o utilizando o Winrar, PKZip, Winzip, 7Zip, enfim, qualquer um que você tenha aí. Logo após, vá até a pasta pascalzim e execute o Pzim.exe. Teremos a seguinte janela:
Esta é a tela de edição de um programa no Pascal Zim. É nela que escreveremos os comandos que irão compor o nosso programa. A seguir, temos um programa simples em algoritmo que iremos passar para a linguagem Pascal:
Este é um programa extremamente simples, que escreve o texto Olá, Mundo! Estou no blog do Striker07! na tela. Em Pascal, este programa ficaria dessa forma:
Vamos agora explicar passo-a-passo este primeiro programa. Na primeira linha, temos Program Ola_Mundo; Esta linha define o nome do nosso programa, da mesma forma que definimos o nome do nosso algoritmo na primeira linha dele. Perceba que, os comandos do Pascal terminam com ; e se você não colocá-los, ocorrerá um erro na hora de compilar. Logo em seguida temos o Begin, que significa o início do programa. Os comandos do nosso programa começarão a ser escritos a partir deste Begin. Ele não tem ; porque não é um comando, mas uma indicação de que a área de processamento está iniciando. A seguir, temos o comando write(‘Olá, Mundo! Estou no blog do Striker07!’); que corresponde ao Escreva(“Olá, Mundo! Estou no blog do Striker07!”). Perceba, basicamente, é a mesma coisa no algoritmo e no programa, com a diferença de que no Pascal os comandos são em inglês. Outra diferença é que na linguagem Pascal o texto deve vir entre aspas simples ‘ enquanto que no algoritmo ele vem entre aspas duplas “. Também não se deve esquecer de colocar o ponto e vírgula no final do comando. Encerrando o programa, temos End. que indica o final do programa. Este End deve sempre ser acompanhado do ponto final, indicando que o programa se encerra aí.
Caso você esteja utilizando o Turbo Pascal, precisará incluir a seguinte linha depois do título do programa:
Esta linha inclui a biblioteca padrão de comandos. Caso esteja utilizando a versão para DOS do Turbo Pascal, substitua wincrt por crt. No Pascal Zim, a biblioteca é incluída automaticamente, então não há a necessidade de colocar esta linha.
Vamos agora fazer um programa simples, que recebe dois números do usuário e os soma. Primeiro, vamos fazer o algoritmo deste programa:
algoritmo soma_dois_numeros
[Declaração de Variáveis]
numero1, numero2, resultado : inteiro
[Processamento]
escreva("Digite o primeiro número: ")
leia(numero1)
escreva("Digite o segundo número: ")
leia(numero2)
resultado ← numero1 + numero2
escreva("O resultado da soma é ", resultado)
[Fim]
Um algoritmo muito simples, onde lemos o valor de duas variáveis do tipo inteiro, e depois as somamos, armazenando na variável resultado, e mostramos na tela. Agora vamos fazer o mesmo programa em Pascal:
Este programa tem alguns elementos a mais que o outro não tinha. Na primeira linha, temos o título do programa, da mesma forma como estava no Olá Mundo. Após isso, temos a área Var, onde declaramos as variáveis do tipo Inteiro, no caso da linguagem Pascal, Integer. A seguir os tipos básicos e os seus respectivos nomes na linguagem Pascal:
Inteiro = Integer
Real = Real
Caracter = Char
Booleano = Boolean
Literal = String
Na linguagem Pascal, todas as variáveis devem ser declaradas nesta seção. Caso queira declarar variáveis de tipos diferentes, deve-se fazer igual a um algoritmo:
Uma coisa importante que eu tinha esquecido de falar é que a linguagem Pascal não distingue maiúsculas de minúsculas. Ou seja, Real é a mesma coisa que real ou rEaL ou reaL. Da mesma forma se você declarar uma variável Media, não poderá declarar outra com o nome de media.
Continuando o código, temos o início do programa. O primeiro comando escreve uma mensagem pedindo pra o usuário entrar com o primeiro número. Em programação, esse tipo de mensagem é conhecido como prompt. Em seguida, temos a função readln() que lê um valor do usuário e o armazena em uma variável. Depois, repetimos os dois comandos para ler o segundo número da soma. Em seguida, temos o cálculo da soma. Perceba que, na linguagem Pascal, o operador de atribuição é representado por := em vez da seta que representamos nos algoritmos. Na última linha, temos a apresentação do resultado na tela, através da função write(), onde colocamos entre os parênteses o texto e a variável que queremos exibir na tela.
Para concluir este primeiro post, vamos fazer um último programa que calcula a sua idade, baseando-se no seu ano de nascimento, utilizando o conceito de constantes. Teremos, então o seguinte algoritmo:
algoritmo calculo_idade
[Declaração de Constantes]
ano_atual = 2009
[Declaração de Variáveis]
ano_nascimento, idade : inteiro
nome : literal
[Processamento]
escreva("Olá! Poderia me dizer qual é o seu nome? ")
leia(nome)
escreva("Em que ano você nasceu? ")
leia(ano_Nascimento)
idade ← ano_atual - anoNascimento
escreva("Prazer em conhecê-lo, ", nome, ".")
escreva("Você tem ", idade, " anos.")
[Fim]
Passando este algoritmo para a linguagem Pascal, teremos o seguinte:
Basicamente, temos apenas um detalhe novo em relação ao último programa: a inclusão da área Const para a declaração de constantes. A declaração ocorre da mesma forma que nos algoritmos, ou seja, sem a definição do tipo, utilizando o operador = para indicar o valor da constante. Outro detalhe é a utilização da função writeln(). Mas qual a diferença entre write() e writeln()? Ao utilizar a função write(), o cursor ficará posicionado logo após o final do texto. Já na função writeln(), o cursor pulará para a próxima linha ao escrever o texto. O emprego dessas funções deve priorizar a estética na tela, deixando o programa com um visual mais “agradável”.
Qualquer dúvida, postem nos comentários.
Abraço a todos.
Hoje, finalmente, iremos começar a programar de fato, e fazer o nosso primeiro programa! Quanto a linguagem, iremos utilizar a Linguagem Pascal num primeiro momento. Apesar de muitos não concordarem com o uso dela, eu a considero a melhor escolha para o ensino da programação, por ter uma sintaxe clara e fácil de ser entendida.
Para escrever e compilar (transformar o código escrito em um arquivo executável), utilizaremos o Pascal Zim, um ambiente criado pelo departamento de Ciência da Computação da Universidade de Brasília, para o auxílio no ensino da disciplina de Algoritmos. Atualmente, ele encontra-se na versão 5.01. O link para download você encontra aqui. Algumas pessoas podem preferir utilizar o Turbo Pascal, da Borland. Eu optei pelo Pascal Zim por dois motivos: a última versão do Turbo Pascal é de 1991 (ou seja, já tem 18 anos!!!) e também pelo fato do Pascal Zim ser brasileiro! (vamos valorizar os programadores do Brasil!). Caso queiram utilizar o Turbo Pascal, fiquem à vontade, pois a sintaxe é a mesma.
Após baixarem o Pascal Zim, descompacte-o utilizando o Winrar, PKZip, Winzip, 7Zip, enfim, qualquer um que você tenha aí. Logo após, vá até a pasta pascalzim e execute o Pzim.exe. Teremos a seguinte janela:
Esta é a tela de edição de um programa no Pascal Zim. É nela que escreveremos os comandos que irão compor o nosso programa. A seguir, temos um programa simples em algoritmo que iremos passar para a linguagem Pascal:
algoritmo ola_mundo
[Processamento]
escreva("Olá, Mundo! Estou no blog do Striker07!")
[Fim]
[Processamento]
escreva("Olá, Mundo! Estou no blog do Striker07!")
[Fim]
Este é um programa extremamente simples, que escreve o texto Olá, Mundo! Estou no blog do Striker07! na tela. Em Pascal, este programa ficaria dessa forma:
program ola_mundo;
begin
write('Olá, Mundo! Estou no blog do Striker07!');
end.
begin
write('Olá, Mundo! Estou no blog do Striker07!');
end.
Vamos agora explicar passo-a-passo este primeiro programa. Na primeira linha, temos Program Ola_Mundo; Esta linha define o nome do nosso programa, da mesma forma que definimos o nome do nosso algoritmo na primeira linha dele. Perceba que, os comandos do Pascal terminam com ; e se você não colocá-los, ocorrerá um erro na hora de compilar. Logo em seguida temos o Begin, que significa o início do programa. Os comandos do nosso programa começarão a ser escritos a partir deste Begin. Ele não tem ; porque não é um comando, mas uma indicação de que a área de processamento está iniciando. A seguir, temos o comando write(‘Olá, Mundo! Estou no blog do Striker07!’); que corresponde ao Escreva(“Olá, Mundo! Estou no blog do Striker07!”). Perceba, basicamente, é a mesma coisa no algoritmo e no programa, com a diferença de que no Pascal os comandos são em inglês. Outra diferença é que na linguagem Pascal o texto deve vir entre aspas simples ‘ enquanto que no algoritmo ele vem entre aspas duplas “. Também não se deve esquecer de colocar o ponto e vírgula no final do comando. Encerrando o programa, temos End. que indica o final do programa. Este End deve sempre ser acompanhado do ponto final, indicando que o programa se encerra aí.
Caso você esteja utilizando o Turbo Pascal, precisará incluir a seguinte linha depois do título do programa:
program ola_mundo;
uses
wincrt;
begin
...
uses
wincrt;
begin
...
Esta linha inclui a biblioteca padrão de comandos. Caso esteja utilizando a versão para DOS do Turbo Pascal, substitua wincrt por crt. No Pascal Zim, a biblioteca é incluída automaticamente, então não há a necessidade de colocar esta linha.
Vamos agora fazer um programa simples, que recebe dois números do usuário e os soma. Primeiro, vamos fazer o algoritmo deste programa:
algoritmo soma_dois_numeros
[Declaração de Variáveis]
numero1, numero2, resultado : inteiro
[Processamento]
escreva("Digite o primeiro número: ")
leia(numero1)
escreva("Digite o segundo número: ")
leia(numero2)
resultado ← numero1 + numero2
escreva("O resultado da soma é ", resultado)
[Fim]
Um algoritmo muito simples, onde lemos o valor de duas variáveis do tipo inteiro, e depois as somamos, armazenando na variável resultado, e mostramos na tela. Agora vamos fazer o mesmo programa em Pascal:
- Código:
program soma_dois_numeros;
var
numero1, numero2, resultado : integer;
begin
write('Digite o primeiro número: ');
readln(numero1);
write('Digite o segundo número: ');
readln(numero2);
resultado := numero1 + numero2;
write('O resultado da soma é ', resultado);
end.
Este programa tem alguns elementos a mais que o outro não tinha. Na primeira linha, temos o título do programa, da mesma forma como estava no Olá Mundo. Após isso, temos a área Var, onde declaramos as variáveis do tipo Inteiro, no caso da linguagem Pascal, Integer. A seguir os tipos básicos e os seus respectivos nomes na linguagem Pascal:
Inteiro = Integer
Real = Real
Caracter = Char
Booleano = Boolean
Literal = String
Na linguagem Pascal, todas as variáveis devem ser declaradas nesta seção. Caso queira declarar variáveis de tipos diferentes, deve-se fazer igual a um algoritmo:
- Código:
// No Algoritmo
[Declaração de Variáveis]
soma : inteiro
inicial : caracter
media : real
{ Em Pascal }
var
soma : integer;
inicial : char;
media : real;
Uma coisa importante que eu tinha esquecido de falar é que a linguagem Pascal não distingue maiúsculas de minúsculas. Ou seja, Real é a mesma coisa que real ou rEaL ou reaL. Da mesma forma se você declarar uma variável Media, não poderá declarar outra com o nome de media.
Continuando o código, temos o início do programa. O primeiro comando escreve uma mensagem pedindo pra o usuário entrar com o primeiro número. Em programação, esse tipo de mensagem é conhecido como prompt. Em seguida, temos a função readln() que lê um valor do usuário e o armazena em uma variável. Depois, repetimos os dois comandos para ler o segundo número da soma. Em seguida, temos o cálculo da soma. Perceba que, na linguagem Pascal, o operador de atribuição é representado por := em vez da seta que representamos nos algoritmos. Na última linha, temos a apresentação do resultado na tela, através da função write(), onde colocamos entre os parênteses o texto e a variável que queremos exibir na tela.
Para concluir este primeiro post, vamos fazer um último programa que calcula a sua idade, baseando-se no seu ano de nascimento, utilizando o conceito de constantes. Teremos, então o seguinte algoritmo:
algoritmo calculo_idade
[Declaração de Constantes]
ano_atual = 2009
[Declaração de Variáveis]
ano_nascimento, idade : inteiro
nome : literal
[Processamento]
escreva("Olá! Poderia me dizer qual é o seu nome? ")
leia(nome)
escreva("Em que ano você nasceu? ")
leia(ano_Nascimento)
idade ← ano_atual - anoNascimento
escreva("Prazer em conhecê-lo, ", nome, ".")
escreva("Você tem ", idade, " anos.")
[Fim]
Passando este algoritmo para a linguagem Pascal, teremos o seguinte:
- Código:
program calculo_idade;
const
ano_atual = 2009;
var
ano_nascimento, idade : integer;
nome : string;
begin
write('Olá! Poderia me dizer qual é o seu nome? ');
readln(nome);
write('Em que ano você nasceu? ');
readln(ano_nascimento);
idade := ano_atual - ano_nascimento;
writeln('Prazer em conhecê-lo, ', nome, '.');
write('Você tem ', idade, ' anos.');
end.
Basicamente, temos apenas um detalhe novo em relação ao último programa: a inclusão da área Const para a declaração de constantes. A declaração ocorre da mesma forma que nos algoritmos, ou seja, sem a definição do tipo, utilizando o operador = para indicar o valor da constante. Outro detalhe é a utilização da função writeln(). Mas qual a diferença entre write() e writeln()? Ao utilizar a função write(), o cursor ficará posicionado logo após o final do texto. Já na função writeln(), o cursor pulará para a próxima linha ao escrever o texto. O emprego dessas funções deve priorizar a estética na tela, deixando o programa com um visual mais “agradável”.
Qualquer dúvida, postem nos comentários.
Abraço a todos.