Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

baseado em material elaborado por: 
Marcelo Zanchetta do Nascimento, 
Rodrigo P. Ramos, Aline Neves
BC0501 – Linguagens de Programação - 2008t2
Pseudolinguagem
Prof. Alysson Ferrari
alysson.ferrari @ ufabc.edu.br
http://fma.if.usp.br/~alysson
Aula 11
BC0501 – Linguagens de Programação - 2008/01
  Ao  pensar  a  solução  de  um  determinado  problema, 
produzimos um algoritmo que leva a sua solução.
  Feito  isso,  resta  a  escolha  de  uma  particular  linguagem  de 
programação para implementar o referido algoritmo.  
 Um mesmo algoritmo pode ser  implementado em muitas  linguagens 
de  programação  diferentes.  A  escolha  da  linguagem  é,  muitas  vezes, 
vem da conveniência, ou mesmo gosto pessoal do programador (ou do 
seu chefe!).
 É útil saber representar um algoritmo de uma forma independente de 
uma  escolha  de  linguagem  de  programação  –  daí  surge  a  idéia  do 
PSEUDOCÓDIGO ou PSEUDOLINGUAGEM.
PROBLEMA ALGORITMO PROGRAMA
PSEUDOLINGUAGEM
BC0501 – Linguagens de Programação - 2008/01
Problema
Pseudo
linguagem
se...
então...
senão...
Linguagem 
de 
progra­
mação
Java, C,
Pascal, etc
Linguagem 
de 
máqui­
na
Zeros e 
uns...
PSEUDOLINGUAGEM
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM é uma linguagem de 
programação simplificada,
É usada para escrever algoritmos, sem se preocupar com
todos os detalhes de uma linguagem de programação real...
BC0501 – Linguagens de Programação - 2008/01
  Nesta  disciplina,  não  iremos  cobrar  o  uso  da 
PSEUDOLINGUAGEM,  mas  ela  pode  ser  útil  para  o  estudante 
esboçar  seus  algoritmos,  antes  de  efetivamente  escrevê­los  em 
Java.
  PSEUDOLINGUAGEM  é  uma  linguagem  de  programação, 
logo  tem  sua  sintaxe  e  sua  semântica.  Estas  são,  contudo, 
bastante simplificadas. Comandos de entrada e saída de dados, 
por  exemplo,  não  consideram  a  forma  particular  de  entrada  ou 
exibição de dados:  isto é deixado para a fase de implementação 
efetiva do programa na linguagem de programação escolhida.
Adotaremos  uma  PSEUDOLINGUAGEM  “traduzida”  para  o 
Português.
PSEUDOLINGUAGEM
Na definição de uma 
linguagem, precisamos fixar:
 Sua sintaxe: como 
escrever os comandos e 
seus componentes 
(tipos, variáveis, etc)
 Sua semântica: o 
significado de cada 
comando e conceito
 Inicialmente veremos:
 Tipos
 Constantes e Variáveis
 Comando de declaração
 Comando de atribuição
 Comandos de entrada e de 
saída
 Bloco de execução seqüencial
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
Os  tipos  básicos,  elementares,  de  informação,  são  os 
utilizados  com  mais  freqüência,  e  são  praticamente 
obrigatórios em qualquer linguagem de programação.
Os tipos básicos são geralmente os seguintes:
 Inteiro
 Real
 Caracter
 String
 Lógico
PSEUDOLINGUAGEM
TIPOS PRIMITIVOS/BÁSICOS DE DADOS
BC0501 – Linguagens de Programação - 2008/01
Inteiro: Toda e qualquer informação numérica 
que pertence ao conjunto dos números inteiros 
(Z). Pode assumir os valores nulo, positivo ou 
negativo
     Exemplos: 15, 0, 20, 4434
 Real: Toda e qualquer informação numérica que 
pertence ao conjunto dos números reais (R)
    Exemplos: ­234.4, 45, 98, 45
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
TIPOS PRIMITIVOS/BÁSICOS DE DADOS
Caracter:  Toda  e  qualquer  informação  composta 
por  um  único  caracter  numérico  (0,1,..,9), 
alfanumérico  (A,B,..,Z,a,b,..,z)  ou  especial 
(@,#,!,...)
    Exemplos: ‘D’, ‘@’, ‘1’
  String:  Toda  e  qualquer  informação  composta 
por  um  conjunto  de  caracteres  numéricos 
(0,1,..,9),  alfanuméricos  (A,B,..,Z,a,b,..,z)  ou 
especiais (@,#,!,...)
    Exemplos: “Não pise na grama”, “José da Silva”
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
TIPOS PRIMITIVOS/BÁSICOS DE DADOS
 Lógico: Toda e qualquer informação que pode 
assumir apenas os valores: verdadeiro (1) ou 
falso (0) 
     Exemplos: true, false
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
TIPOS PRIMITIVOS/BÁSICOS DE DADOS
Na definição de uma 
linguagem, precisamos fixar:
 Sua sintaxe: como 
escrever os comandos e 
seus componentes 
(tipos, variáveis, etc)
 Sua semântica: o 
significado de cada 
comando e conceito
 Inicialmente veremos:
 Tipos
 Constantes e Variáveis
 Comando de declaração
 Comando de atribuição
 Comandos de entrada e de 
saída
 Bloco de execução seqüencial
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
Uma  variável  é  um  endereço  da memória  de 
acesso randômico (RAM), representada por um 
nome  (rótulo  ou  identificador)  e  pela 
especificação  do  tipo  de  dado  que  ali  será 
armazenado
nome
 Ao lidar com uma variável, é fundamental não confundir,
 seu identificador: nome dado pelo programador à 
variável
 seu conteúdo: valor atual da variável
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM ­ VARIÁVEIS
nome
idade
nacionalidade
profissao
Maria Carla
nomeIdentificador
17
idadeIdentificador
brasileira
nacionalidadeIdentificador
estudante
profissaoIdentificador
Uma variável assume 
apenas UM valor por 
vez 
PSEUDOLINGUAGEM ­ VARIÁVEIS
BC0501 – Linguagens de Programação - 2008/01
O primeiro caracter deve ser uma letra
Pode  ser  seguido  de  mais  caracteres  alfabéticos  ou 
numéricos
Não devem ser usados caracteres especiais (#,@,%,?)
Não  pode  haver  espaços  em  branco  entre  os 
caracteres
Os nomes dos  identificadores não podem ser os mesmos 
das palavras reservadas da linguagem de programação
Os  nomes  escolhidos  devem  ser  explicativos  do  seu 
conteúdo
PSEUDOLINGUAGEM ­ IDENTIFICADORES
BC0501 – Linguagens de Programação - 2008/01
 Exemplos de identificadores válidos: alpha, notas, FGTS, K7
 Exemplos de identificadores inválidos: 6X, E(13), a:B, awq&
 É um dado que não sofre alteração no transcorrer 
do tempo.
 Sua utilização é praticamente idêntica à das 
variáveis, com a diferença de que, na inicialização, 
deve ser fornecido um valor, que será o mesmo 
durante toda a execução do programa.
PI
3,14...
pi
PSEUDOLINGUAGEM ­ CONSTANTES
BC0501 – Linguagens de Programação - 2008/01
EXEMPLO
Na definição de uma 
linguagem, precisamos fixar:
 Sua sintaxe: como 
escrever os comandos e 
seus componentes 
(tipos, variáveis, etc)
 Sua semântica: o 
significado de cada 
comando e conceito
 Inicialmente veremos:
 Tipos
 Constantes e Variáveis
 Comando de declaração
 Comando de atribuição
 Comandos de entrada e de 
saída
 Bloco de execução seqüencial
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
Em Java:
double numero;
String mensagem;
int j;
O comando de declaração cria uma variável ou 
constante 
  Quando  se  declara/cria  uma  variável  é  feita 
uma  reserva  de  uma  área  da  memória  RAM, 
que  irá  receber  o  nome  do  identificador  da 
variável
  Para  se  criar  uma  variável é  necessário  dizer 
de qual tipo ela será
BC0501 – Linguagens de Programação - 2008/01
COMANDO DE DECLARAÇÃO DE VARIÁVEIS/CONSTANTES
 Em pseudocódigo uma variável é declarada, e portanto, 
criada, através da seguinte sintaxe:
<tipo>: <nome_Da_Variavel>;
inteiro: <nome_Da_Variavel>;
real: <nome_Da_Variavel>;
caracter: <nome_Da_Variavel>;
string: <nome_Da_Variavel>;
logico: <nome_Da_Variavel>;
BC0501 – Linguagens de Programação - 2008/01
COMANDO DE DECLARAÇÃO DE VARIÁVEIS/CONSTANTES
Na definição de uma 
linguagem, precisamos fixar:
 Sua sintaxe: como 
escrever os comandos e 
seus componentes 
(tipos, variáveis, etc)
 Sua semântica: o 
significado de cada 
comando e conceito Inicialmente veremos:
 Tipos
 Constantes e Variáveis
 Comando de declaração
 Comando de atribuição
 Comandos de entrada e de 
saída
 Bloco de execução seqüencial
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
Em Java:
numero = 4.7;
mensagem = “Ola”;
j = 10;
 Comando de atribuição é o comando que indica 
o que a variável vai receber em seu conteúdo em 
determinado momento
 Para colocar/atribuir um valor em uma variável 
é usado o comando de atribuição:
COMANDO DE ATRIBUIÇÃO
BC0501 – Linguagens de Programação - 2008/01
<nome_Da_Variavel> ← <Valor_Da_Variavel>;
Sua sintaxe é:
10.6
soma
Verde
cor
real: soma;
soma ← 10.6;
string: cor;
cor ← “Verde”;
COMANDO DE ATRIBUIÇÃO
BC0501 – Linguagens de Programação - 2008/01
Na definição de uma 
linguagem, precisamos fixar:
 Sua sintaxe: como 
escrever os comandos e 
seus componentes 
(tipos, variáveis, etc)
 Sua semântica: o 
significado de cada 
comando e conceito
 Inicialmente veremos:
 Tipos
 Constantes e Variáveis
 Comando de declaração
 Comando de atribuição
 Comandos de entrada e de 
saída
 Bloco de execução seqüencial
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
Em Java: Classe Scanner, métodos println,
printf, etc... 
Comandos de entrada permitem que dados sejam 
inseridos no algoritmo. Sua sintaxe é:
leia (<lista_de_identificadores>); 
leia (a,b,nome);
leia (nota,num);
leia (rg);
Exemplos:
COMANDOS DE ENTRADA
BC0501 – Linguagens de Programação - 2008/01
Comandos de saída permitem que dados seja 
passados do algoritmo para outros dispositivos. 
Sua sintaxe é:
escreva(<lista_de_identificadores>); 
escreva (media,n1);
escreva (soma);
Exemplos:
BC0501 – Linguagens de Programação - 2008/01
COMANDOS DE SAÍDA
Na definição de uma 
linguagem, precisamos fixar:
 Sua sintaxe: como 
escrever os comandos e 
seus componentes 
(tipos, variáveis, etc)
 Sua semântica: o 
significado de cada 
comando e conceito
 Inicialmente veremos:
 Tipos
 Constantes e Variáveis
 Comando de declaração
 Comando de atribuição
 Comandos de entrada e de 
saída
 Bloco de execução 
seqüencial
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM
 Bloco de execução é um conjunto de ações que 
possui uma função bem definida
 Num bloco sequencial, os comandos são 
executados em seqüência, um a um
 Corresponde à forma mais simples de execução 
de comandos...
BLOCO DE EXECUÇÃO SEQUENCIAL
BC0501 – Linguagens de Programação - 2008/01
 Bloco de execução sequencial, sintaxe em 
pseudolinguagem:
início
 <declaração de variáveis>
 <comandos>
fim
BLOCO DE EXECUÇÃO SEQUENCIAL
BC0501 – Linguagens de Programação - 2008/01
O corpo de um método é um bloco de execução... o início e o 
fim são marcados pelas chaves!
BC0501 – Linguagens de Programação - 2008/01
BLOCO DE EXECUÇÃO SEQUENCIAL: em Java
public class Pessoa {
 // .... 
public void gastar(double quantia)
{
dinheiroNaCarteira = 
dinheiroNaCarteira - quantia;
System.out.printf(“Carteira: %.2f.”,
dinheiroNaCarteira);
}
}
O corpo de um método é um bloco de execução... o início e o 
fim são marcados pelas chaves!
BC0501 – Linguagens de Programação - 2008/01
BLOCO DE EXECUÇÃO SEQUENCIAL: em Java
public class Pessoa {
 // .... 
public void gastar(double quantia)
{
dinheiroNaCarteira = 
dinheiroNaCarteira - quantia;
System.out.printf(“Carteira: %.2f.”,
dinheiroNaCarteira);
}
}
Inicio
    Real: dinheiroNaCarteira, valor;
    dinheiroNaCarteira ←  dinheiroNaCarteira  ­ valor;
    escreva (dinheiroNaCarteira); 
fim
Escreva um algoritmo para somar dois números quaisquer
1. Leia o número X
2. Leia o número Y
3. Some X e Y
4. Mostre o resultado da soma 
Entrada SaídaProcessamento
Número X
Número Y Somar X e Y
Resultado 
da soma
BC0501 – Linguagens de Programação - 2008/01
BLOCO DE EXECUÇÃO SEQUENCIAL: exercício
 Assim, o algoritmo de SOMA, escrito em pseudocódigo ficaria:
Algoritmo Soma
início
 inteiro: x,y,soma;
 leia (x, y);
 soma ← x + y;
 escreva (soma); 
fimalgoritmo.
BC0501 – Linguagens de Programação - 2008/01
BLOCO DE EXECUÇÃO SEQUENCIAL: exercício
 
 Estes foram os elementos básicos da linguagem, 
correspondente ao que já aprendemos da sintaxe 
Java até agora...
 Conforme novas estruturas da linguagem Java 
forem introduzidas, as correspondentes construções 
em pseudolinguagem serão apresentadas... seu uso 
na disciplina, porém, será opcional.
BC0501 – Linguagens de Programação - 2008/01
PSEUDOLINGUAGEM...
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32

Mais conteúdos dessa disciplina