Pseudocódigo ou Portugol (Lógica de Programação)

Preview:

Citation preview

Estácio Idez!

Lógica de Programação

PSEUDOCÓDIGO!

Pseudocódigo

❖  É uma forma de escrever algoritmo.!

❖  Assemelhar-se bastante à forma em que os programas são escritos!

❖  Suficiente para permitir a tradução do algoritmo nela representado em linguagem de programação.!

❖  http://siaiacad17.univali.br/webportugol/index.html!

❖  VISUALG!

Variáveis

Variáveis

❖  Uma variável, é um espaço da memória do computador que "reservamos" para guardar informações (dados) de um determinado tipo.!

Variáveis

Conteúdo

❖  Podem conter valores diferentes a cada instante de tempo, ou seja, seu conteúdo pode variar de acordo com as instruções do algoritmo!

❖  São referenciadas através de um nome (identificador) criado por você durante o desenvolvimento do algoritmo!

❖  Uma variável armazena um conteúdo de cada vez.!

Variáveis

Armazenamento de Variáveis

0 1 2 3 !

4 5 6 7!

SOMA = (NUMERO1 + NUMERO2)!

VARIÁVEIS!

VARIÁVEIS!

LOGIN = "GERCELIA"! SENHA = 12345!

(Conteúdo da variável)! (Conteúdo da variável)!

Constantes

É um valor fixo que não se modifica ao longo do tempo,!

durante a execução de um programa

Exemplo:!

dólar = 2,40!

π = 3,14!

Regras para nomes de variáveis e constantes! Não podem: •  Ter nomes de palavras reservadas (comandos de uma linguagem de

programação específica); •  Possuir espaços em branco; Podem ter como demais caracteres: •  Letras; •  Números; e •  Sublinhado.

Exemplo de variáveis

( ) valor!( ) a1b2c3!( ) km/h!( ) sala 215!( ) 123!( ) 3*4!( ) xyz!( ) “nota”!( ) nota*do*aluno!( ) Maria!( ) nome empresa!( ) ah!!

Verifique se os nomes abaixo podem ser usados na declaração de uma!variável. Marque S em caso afirmativo e N caso contrario.!

!

EXERCÍCIO

(S) valor!(S) a1b2c3!(N) km/h!(S) sala 215!(S) 123!(N) 3*4!(S) xyz!(N) “nota”!(N) nota*do*aluno!(S) Maria!(N) nome empresa!(N) ah!!

Tipos de Variáveis e Constantes

As variáveis e as constantes podem ser basicamente de quatro tipos: Numéricas, caracteres, Alfanuméricas ou lógicas.

Numéricas - Específicas para armazenamento de números, que posteriormente poderão ser utilizados para cálculos. Podem ser ainda classificadas como Inteiras ou Reais. As variáveis do tipo inteiro são para armazenamento de números inteiros e as reais são para o armazenamento de números que possuam casas decimais.

Caracteres - Específicas para armazenamento de conjunto de caracteres que não contenham números (literais). Ex: nomes.

Alfanuméricas Específicas para dados que contenham letras e/ou números. Pode em determinados momentos conter somente dados numéricos ou somente literais. Se usado somente para armazenamento de números, não poderá ser utilizada para operações matemáticas.

Lógicas Armazenam somente dados lógicos que podem ser Verdadeiro ou Falso.

TIPOS DE DADOS

Numéricos! Caracteres!Ex: "Gercelia"!

Lógicos!(tipo boolean)!

Ex: V ou F!

Real!Ex: 5,6!

Inteiro!Ex: 14!

A definição da variável no algoritmos!

se dará através da seguinte sintaxe:!

!

var <nome_da_variável> : <tipo_da_variável>

Exemplos:!

•  var media : real!•  var soma : inteiro!•  var funcionario : caractere!•  var sexo : caractere!•  var numero, idade : inteiro!

EXERCÍCIO

( ) 0.21!( ) 0.35!( ) “+3257”!( ) verdadeiro!( ) 1!( ) falso!( ) +3257!( ) “verdadeiro”!( ) -0.001!( ) “-0.0”!( ) 1%!( ) +3257.!( ) ± 3!( ) C!( ) 0.0!( ) “a”!( ) Maria!( ) “João” 1 !( ) 123.0!( ) 0!

Classifique os dados especificados abaixo de acordo com seu tipo, assinalando!com I os dados do tipo inteiro, com R os reais, com L os literais, com B os!lógicos (booleanos), e com N aqueles para os quais não e possível definir a!

priori um tipo de dado!

(R) 0.21!(R) 0.35!(L) “+3257”!(B) verdadeiro!(I) 1!(B) falso!(I) +3257!(L) “verdadeiro”!(R) -0.001!(L) “-0.0”!(N) 1%!(R) +3257.!(N) ± 3!(N) C!(R) 0.0!(L) “a”!(N) Maria!(N) “João” 1 !(R) 123.0!(I) 0!

ATRIBUIÇÃO

idade 18; (Lê-se: idade recebe 18)!

result a+b; (Lê-se: result recebe o resultado de a + b)!

texto “teste”; (Lê-se: texto recebe a palavra teste)!

A atribuição é uma notação utilizada para atribuir um valor a uma variável, ou seja, para armazenar um determinado conteúdo em uma variável. A operação de atribuição, normalmente, é representada por uma seta apontando para a esquerda!

Analise o algoritmo abaixo e diga o que será! impresso na tela ao ser executado:!

A <- 10!B <- 20!escreva B!B <- 5!escreva A,B!

20!!10 5!

A <- 30!B <- 20!C <- A + B!escreva C!B <- 10!escreva B,C!C <- A + B!escreva A,B,C!

50!!10  50!!30 10 40!

algoritmo <nome_do_algoritmo>!

!<declaração_de_variáveis>!

!!

inicio!

!<corpo do algoritmo>!

fimalgoritmo!

❖  Algoritmo é uma palavra que indica o início da definição de um algoritmo em forma de pseudocódigo.!

❖  <nome_do_algoritmo> é um nome simbólico dado ao algoritmo com a finalidade de distingui-los dos demais.!

❖  <declaração_de_variáveis> consiste em uma porção opcional onde são declaradas as variáveis globais usadas no algoritmo principal.!

❖  Início e Fim são respectivamente as palavras que delimitam o início e o término do conjunto de instruções do corpo do algoritmo.!

ESCREVENDO UM ALGORITIMO EM PSEUDOCÓDIGO

1!

INSTRUÇÕES ESCREVA!

LEIA!

A instrução escrever (ou escreva) é utilizada quando deseja-se mostrar informações na tela do computador, ou seja, é um comando de saída de dados.!

A instrução ler (ou leia) é utilizada quando deseja-se obter informações do teclado do computador, ou seja, é um comando de entrada de dados.!

Leia (identificador);!

escreva        escreve  o  conteúdo  na  mesma  linha  

 

escreval        escreve  o  conteúdo  na  próxima  linha  

OBS.:

l  =  linha/line  

INSTRUÇÕES

algoritmo “PrimeiraEscrita"!!!var idade: inteiro;!

!inicio!!!idade <- 18;!!Escreva (“A idade é: ”, idade)!

!fimalgoritmo!

Como será o resultado desse algoritmo na tela do computador ?!

EXEMPLO DE ALGORITMO EM PSEUDOCÓDIGO

algoritmo “PrimeiroAlgoritmo"!!!var nome : caractere!

!inicio!!!Escreva (“Digite seu nome: ”)!!Leia (nome)!

!!Escreva (“Seja bem vindo ”, nome)!

!fimalgoritmo!

EXEMPLO DE ALGORITMO EM PSEUDOCÓDIGO

EXEMPLO DE ALGORITMO EM PSEUDOCÓDIGO

algoritmo "MediaAluno" var nome_aluno : caracter n1,n2,n3,n4 : real soma : real media : real inicio escreva("Digite o Nome do Aluno: ") leia(nome_aluno) escreva("Digite a primeira nota: ") leia(n1) escreva("Digite a segunda nota: ") leia(n2) escreva("Digite a terceira nota: ") leia(n3) escreva("Digite a quarta nota: ") leia(n4) soma <-(n1+n2+n3+n4) media<-(soma/4) escreva("A média de " + nome_aluno + " é: ", media) fimalgoritmo

ALGORITMO

Criar um Algoritmo que:!

•  O nome seja: “PrimeiroAlgoritmo”;!

•  Ele deve imprimir:!

•  Nome!

•  Matrícula!

•  Curso!

algoritmo "PrimeiroAlgoritmo"!!var!! ! nome : caractere!

! matricula: inteiro!! curso: caractere!

!inicio!!

!escreval ("Digite seu nome: ")!!leia (nome)!!escreval ("Digite sua matricula: ")!!leia (matricula)!!escreval ("Digite seu curso")!!leia (curso)!

!!escreva (nome, matricula, curso)!

!fimalgoritmo!

OPERADORES

MOD è Retorna o resto da divisão entre 2 números inteiros.!!> ! è !Maior que!< ! è !Menor que!>= ! è !Maior ou Igual!<= ! è !Menor ou Igual!= ! è !Igual!<> ! è !Diferente!e ! ! !RETORNA VERDADEIRO SE AMBAS AS PARTES FOREM VERDADEIRAS. !ou ! ! !BASTA QUE UMA PARTE SEJA VERDADEIRA PARA RETORNAR VERDADEIRO. !Nao ! !INVERTE O ESTADO, DE VERDADEIRO PASSA PARA FALSO E VICE-VERSA. !!!

Considere a seguinte atribuição de valores para as variáveis:!A <- 3, B <- 4 e C <- 8!!Informe se as expressões são verdadeiras ou falsas:!!A > 3 e C = 8!A <> 2 ou B <= 5!A = 3 ou B>=2 e C = 8!A <> 8 ou B = 4 e C > 2!A > B ou B > A e C <> B!

Falso! Verdadeiro! Falso! Verdadeiro! Verdadeiro !!

ESTRUTURA DE CONDIÇÃO

Executa uma seqüência de comandos de acordo com o resultado de um teste.!!A estrutura de decisão pode ser Simples ou Composta, baseada em um resultado lógico.!!

Exemplos: !!Descriçao Narrativa:!�§Se houver aula entao eu irei ao colegio!!§Se minha media for maior ou igual a sete entao entro de ferias!�§Se eu ficar rico entao compro uma Ferrari !!

Simples:!SE <<CONDIÇÃO>>!!ENTÃO <<COMANDO1>> !

Composta 1:!SE <<CONDIÇÃO>>!!ENTÃO <<COMANDO1>>!!!

SENÃO <<COMANDO1>> !

SIMPLES!

COMPOSTA!

Recommended