Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Algoritmia

Elaborar Algoritmos em pseudocódigo
by

Júlia Melo

on 29 January 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Algoritmia

B
A
S
I
C

Procedimentos
Subrotinas - Funções e Procedimentos
INTEIRO FUNCAO PotCub (x:INTEIRO);
INTEIRO pot;
INICIO
pot <-- x*x*x;
RETURN (pot);
FIM.

Esta função calcula a potência cúbica de um número (recebido como parâmetro da função), retornando um valor (número inteiro) relativo ao resultado de tal cálculo.
Funções
A principal diferença entre estes dois tipos de subprogramas é que a
função
devolve um resultado. Para chamar uma função é necessário incluí-la numa instrução de atribuição ou escrita enquanto que para chamar um
procedimento
basta escrever o seu nome.
Um subprograma é um conjunto de instruções que é definido uma vez e que pode ser utilizado as vezes que for necessário dentro do programa.
Os subprogramas podem assumir duas formas:
Procedimentos / Funções
Funções e Procedimentos
Subrotinas
2. Elabore um Algoritmo em pseudocódigo que leia os valores de uma matriz, determine e imprima o maior deles.
Matrizes
1. Elabore um Algoritmo em pseudocódigo que leia as notas de 10 alunos e imprima-as ordenadamente.

14. Elabore um Algoritmo em pseudocódigo que leia N pares de números inteiros, determine e imprima os pares amigos.
Dois números inteiros são amigos quando cada um deles é igual à soma dos divisores próprios do outro (os divisores próprios de um número inteiro são os divisores positivos do número à excepção do próprio número).
7. Elabore um Algoritmo em pseudocódigo que leia N números, calcule e imprima: a soma de todos os números, o maior número lido, o menor número lido, a soma dos positivos e a contagem do números negativos.
5. Elabore um Algoritmo em pseudocódigo que calcule e imprima a tabuada de um número N.

6. Elabore um Algoritmo em pseudocódigo que calcule e imprima os salários dos vendedores de uma empresa, sabendo que: a empresa paga aos seus funcionários 600€ por mês, mais a comissão de 250€ por cada carro vendido, mais a comissão de 5% do valor total das vendas. Todos os meses são recebidos os seguintes dados de cada vendedor: Nome, Nº de carros vendidos e Valor total das vendas.
y <-- 1
DO FOR X=8 TO 2 STEP -2
Y <-- Y + 1
PRINT(Y)

Neste exemplo, o valor inicial de Y é 1. A instrução Y <-- Y + 1 vai ser executada 4 vezes, ou seja, o ciclo é executado para a variável X assumir valores de 8 a 2.
Y <-- 0
DO FOR X=1 TO 5
READ(N)
Y <-- Y + N
PRINT(Y)

Neste exemplo, o valor inicial de Y é 0. A instrução Y <-- Y + N vai ser executada 5 vezes, ou seja, o ciclo é executado para a variável X assumir valores de 1 a 5.



<bloco-comandos1>

<bloco-comandos2>

Esta estrutura repete o bloco-comandos1 um determinado número de vezes com base na variável de controlo, a qual parte de um valor inicial e é incrementada ou decrementada até atingir o valor final. Quando o ciclo terminar será executado o bloco-comandos2. (Step é opcional, se não for indicado o acréscimo é de uma unidade).
X <-- 1
Y <-- 0
DO UNTIL (X >5)
READ(N)
Y <-- Y + N
X <-- X + 1
PRINT(Y)
DO UNTIL <condição>

<bloco-comandos1>

<bloco-comandos2>

Esta estrutura repete o bloco-comandos1 até a condição ser verdadeira. Quando a condição for verdadeira será executado o bloco-comandos2.
X <-- 1
Y <-- 0
DO WHILE (X <=5)
READ(N)
Y <-- Y + N
X <-- X + 1
PRINT(Y)

Neste exemplo, o valor inicial de X é 1 e de Y é 0. Enquanto o valor de X for menor ou igual a 5 os comandos

Y <-- Y + N e X <-- X + 1
serão executados. Quando X passa a ser 6 a repetição será encerrada e o comando PRINT(Y) será executado.
DO WHILE <condição>

<bloco-comandos1>

<bloco-comandos2>

Esta estrutura repete o bloco-comandos1 enquanto a condição for verdadeira. Quando a condição for falsa será executado o bloco-comandos2.
Estruturas
de
Repetição
Estruturas de Controlo
A repetição permite que tarefas individuais sejam repetidas um número determinado de vezes ou tantas vezes quantas uma condição lógica permita.

a) vou atirar pedras no vidro
até

quebrá-lo;
b) baterei
cinco
pênaltis;
c)
enquanto
tiver saúde e dinheiro, vou desfrutar a vida.
Tem-se uma sequenciação de n comandos na qual os comandos serão executados na
ordem em que aparecem
, isto é, o comando de ordem i+1 só será executado após a execução do de ordem i (o 3º só será executado após o 2º).
Os comandos do algoritmo fazem parte de uma sequência, onde
é relevante a ordem
na qual se encontram os mesmos, pois serão executados um de cada vez, estritamente, de acordo com essa ordem.

De uma forma genérica, poderíamos expressar uma seqüência da seguinte forma:
Estrutura
Sequencial
3. Elabore um Algoritmo em pseudocódigo que leia os dois catetos de um triângulo rectângulo, calcule e imprima o valor da hipotenusa (raiz quadrada da soma dos quadrados dos catetos) e do perímetro (soma dos três lados do triângulo rectângulo).
Como verificar se o algoritmo faz o que realmente se pretende? Uma forma é executar o algoritmo manualmente, a isto designa-se por
Traçagem.

A traçagem consiste na simulação das instruções constituintes do algoritmo, de modo a verificar se este resolveu o problema enunciado. Constroi-se uma tabela onde se colocam as variáveis, as condições e as saídas.
Traçagem
de
Algoritmos
Um algoritmo é normalmente constituído por um
título
,
uma
descrição
da função do algoritmo e a sequência de
passos
para a resolução do problema. Cada
passo
do algoritmo deverá ter uma
descrição
e se um passo for composto por mais do que uma instrução estas serão executadas pela ordem que aparecem. O Algoritmo termina com a palavra
EXIT.
Estrutura de
um Algoritmo
É responsável por receber os dados do meio externo e enviá-los para a memória de trabalho do computador;
Necessita referenciar uma variável, para que o dado possa ser armazenado nessa variável;
O dado deve ser compatível com a variável, caso contrário ocorrerá erros.
Instrução de Entrada
As variáveis e as constantes pertencentes a um programa estão sujeitas às operações possíveis de acordo com o tipo de dados que representam e do objectivo para o qual se constrói o programa. Constituem-se assim
expressões
, que não são mais do que
conjuntos de variáveis, constantes e operadores
passíveis de tratamento informático.
Expressões
Prioridade dos Operadores
Relativamente aos
Operadores Lógicos
, são também considerados três níveis de hierarquia, mantendo-se a relação de prioridade mais alta, quanto menor o nível.
A prioridade dos operadores é mais alta quanto menor a hierarquia a que pertencem.
Em programação são considerados três níveis de hierarquia dos
Operadores Aritméticos.
Os operadores possuem uma prioridade uns relativamente aos outros, isto é, existe uma hierarquia de operadores o que implica que as operações sejam realizadas segundo uma determinada ordem, a não ser que essa
ordem seja alterada pela utilização de parêntesis.
Operadores Funcionais
Noções de Lógica
Exemplos:
A variável X possui a partir deste momento o valor 25. Se à variável X tivesse anteriormente sido atribuído outro valor, ele era destruído aquando da atribuição do valor 25, isto é, uma operação de atribuição destrói um eventual valor que essa variável tivesse armazenado anteriormente.
Numéricos
Inteiro: 10 -5 -128
Real: 1.34 13.4 -5.0

Caracteres: “A”

Lógicos: Verdadeiro Falso

String: “quarta-feira” 'Abril'
Tipos de Dados
Um algoritmo é uma
sequência finita de instruções
bem definidas e não ambíguas,
cada uma das quais pode ser executada mecanicamente num período de tempo finito
e com uma quantidade de esforço finita.
Algoritmo
Um programa escrito numa linguagem de programação de alto nível, pode ser convertido, ou traduzido, em código de máquina por compilação ou interpretação, que juntas podem ser chamadas de tradução.
Uma das principais metas das linguagens de programação é permitir que os programadores tenham uma maior produtividade, permitindo expressar as suas intenções mais facilmente do que quando comparado com a linguagem que um computador entende, código máquina.
Linguagens Naturais
O termo língua natural é usado para distinguir as línguas faladas por seres humanos e usadas como instrumento de comunicação, daquelas que são linguagens formais construídas.
O resultado da impressão da variável num será 4, porque o parâmetro x foi passado por referencia.
Isto é, não foi copiado o valor de num para uma nova variável x, mas sim foi passada referencia relativa ao endereço de memória de num, sendo todas as modificações do valor de x operadas sobre num.
Por defeito, o Visual Basic efectua passagem de argumentos por referência.
POR REFERÊNCIA
ALGORITMO USO_FUNCAO
Este Algoritmo, lê um número, determina e imprime a potência cúbica desse número recorrendo a uma função.
U10[ Ler o valor de N]
READ (NUM)
U20[ Imprimir o valor da potência]
PRINT (POTENCIA3(NUM));
U30[Terminar]
EXIT

INTEIRO FUNCAO POTENCIA3 (X:INTEIRO);
INTEIRO POT;
INICIO
POT <-- X*X*X;
RETURN(POT);
FIM
Como usar Funções
PROCEDIMENTO
<Nome> (lista de parâmetros)
<declarações locais a este procedimento>
INICIO
<corpo do procedimento: sequência de comandos>
FIM.

<tipo de dado do valor retornado>

FUNCAO
<Nome> (lista de parâmetros)
<declarações locais a este procedimento>
INICIO
<corpo da função: sequência de comandos>
FIM.
Funções e Procedimentos
Subrotinas
índice


As variáveis do tipo array armazenam vários valores em posições ou índices bem definidos.
(Todos os elementos de um array são do mesmo tipo de dados)

Uma matriz unidimensional é apenas composta por um eixo, segundo um perfil linear.

Arrays - Vectores
Há a subordinação da execução de um ou mais comandos à veracidade de uma condição.

IF <condição>
THEN <bloco-comandos1>
ELSE <bloco-comandos2>

Se a <condição> for verdadeira será executado o <bloco-comandos1> e, em caso contrário, teremos a execução do <bloco-comandos2>. O ELSE é opcional.
Estruturas Condicionais
Algoritmo Área Quadrado
Dado o comprimento do lado de um quadrado este algoritmo determina e imprime a sua área.

A10[Ler o comprimento do lado do quadrado]
READ(LADO)
A20[Determinar a área]
AREA<--LADO*LADO
A30[Imprimir a área]
PRINT(‘A área do quadrado com lado ’,LADO, ‘ é ’, AREA)
A40[Terminar]
EXIT
Supondo que o lado do quadrado tem como medida 5, então no passo 10 à variável LADO será atribuído o valor 5.
No passo 20 é calculada a área, assim à variável AREA será atribuído o valor 25, resultante do cálculo do LADO*LADO (5*5). No passo 30 é mostrado o resultado na coluna Saída.
1. Elabore um Algoritmo em pseudocódigo que leia o comprimento do lado de um quadrado, calcule e imprima o valor da área desse quadrado.

2. Elabore um Algoritmo em pseudocódigo que leia três números, calcule e imprima a média desses números.
Expressões como:

2ab+3c
têm de ser sujeitas a alterações, de modo a poderem ser entendidas pelo computador e utilizadas em programação.
A
utilização de parêntesis
, mesmo que não sejam estritamente necessários pode e
deve ser aplicada com o intuito de aumentar a clareza
nas expressões tratadas e diminuir o erro.

As operações sucessivas dentro de um grupo efectuam-se da
esquerda para a direita
. A prioridade destes operadores pode ser alterada utilizando parêntesis, sendo as operações delimitadas pelos parêntesis realizadas primeiro.
Prioridade dos Operadores
Noções de Lógica
NOME "Ana"
MEDIA (N1+N2)/2
Identificadores
Para se utilizar uma variável num algoritmo é necessário criar essa variável, estabelecendo-lhe um nome (identificador).
Declaração de Variáveis
X
SA
SOMA
XYZ_3
VALOR_DA_IDADE
SOMAIDADES
Em programação, as constantes podem ser escritas sob a forma de dados directos ou de identificadores.
As variáveis, por sua vez, são sempre associadas a identificadores.

Identificadores

são nomes que se atribuem a variáveis, constantes ou outros elementos com que se opera dentro de um programa.
Identificadores
Pseudocódigo

Sintaxe mais simples que a de uma Linguagem de Programação.

Ênfase nas idéias e não nos detalhes.

Facilita construir um programa em Linguagem de Programação.

Permite solucionar um problema de maneira padronizada (estruturada).
Programa / Algoritmo
Um programa é essencialmente um algoritmo que diz ao computador os passos específicos e em que ordem eles devem ser executados.
Fases de Elaboração
de um Programa
Apresentação e análise do problema;
Formulação e representação de um algoritmo;
Codificação do algoritmo numa linguagem de programação;
Compilação ou interpretação do programa-fonte;
Testes do programa de forma a verificar erros de lógica;
Se o método utilizado traduz todas as instruções de alto nível para um programa em código máquina, então diz-se que o programa foi
compilado
e que o mecanismo utilizado para a tradução é um
compilador
(que por sua vez nada mais é do que um programa).
Linguagens de Alto nível / Baixo nível
Linguagens de
Programação
Uma linguagem de programação é um método padronizado para expressar instruções para um computador. É um
conjunto de regras sintácticas e semânticas usadas para definir um programa de computador.
POR REFERÊNCIA
É passado um endereço de memória (referência a uma posição de memória);

Toda alteração de valor nas variáveis que representam os parâmetros reflecte nas variáveis de chamada (a posição de memória passada como parâmetro pode ser acedida pelo procedimento).

POR VALOR
É passado um valor que é utilizado no procedimento;
O procedimento (ou função) recebe o conteúdo da variável e este conteúdo não pode ser alterado.
Passagem de Parâmetros

15. Elabore um Algoritmo em pseudocódigo que leia N números naturais, determine e imprima o factorial de cada um deles.
o factorial de um número natural n, representado por n!, é o produto de todos os inteiros positivos menores ou iguais a n.
Exemplos
Operador de Texto
Exemplos:
Definem a natureza do dado
,
as operações que podem ser realizadas com o dado

e o espaço a ser ocupado na memória.
Unidade
1

Introdução à Programação
Dim num As Integer
. . .
num=3
Incremento(num)
Print num
Sub Incremento(ByVal x As Integer)
x=x+1
End Sub
POR VALOR
Passagem de Parâmetros
Subrotinas - Funções e Procedimentos
3. Elabore um Algoritmo em pseudocódigo que leia os N elementos de um vector, determine o maior e o menor deles e imprima em que posição do vector eles se encontram .

4. Elabore um Algoritmo em pseudocódigo que leia os elementos de uma matriz com N linhas e N colunas e imprima a palavra gerada pela concatenação das letras da diagonal.
Expressão pode ser uma variável, um cálculo, uma expressão Matemática ou um comentário.
É responsável pelo envio das informações para o meio externo, como forma de apresentar algum resultado.
Instrução de Saída
A expressão pode ser uma variável, um cálculo matemático, etc.
O resultado da expressão deve ser do mesmo tipo da variável indicada no lado esquerdo da ATRIBUIÇÃO
Expressão
Nome da variável
O Operador Atribuição, é utilizado para atribuir um Conteúdo a uma variável
Operador Atribuição
índice


As variáveis do tipo array armazenam vários valores em posições ou índices bem definidos.
(Todos os elementos de um array são do mesmo tipo de dados)

As matrizes multidimensionais mais utilizadas são as bidimensionais.

1,1 1,2 1,3 1,4 1,5 1,6 1,7

Notas

2,1 2,2 2,3 2,4 2,5 2,6 2,7
Programa fonte
– é o programa original, escrito numa qualquer linguagem de programação evoluída.
Programa objecto
– é o programa gerado após o programa fonte ter sido compilado, por um compilador e escrito em linguagem máquina.
Saídas
Entradas
Programa Fonte
Saídas
Entradas
Programa Objecto
Programa Fonte
Interpretador
Compilador
Linguagens Formais
Entre estas últimas contam-se as
linguagens de programação

de computadores e as linguagens usadas pela lógica formal ou lógica matemática.

Uma linguagem permite que um programador especifique precisamente sobre que dados um computador vai actuar, como estes dados serão armazenados ou transmitidos e quais acções devem ser tomadas sob várias circunstâncias.
Linguagens de Programação
Assim, linguagens de programação são projectadas para adoptar uma
sintaxe de nível mais alto
, que pode ser mais facilmente entendida por programadores humanos.
Linguagens de Programação
Linguagens de
Programação
Linguagens de Programação
Linguagens de
Programação
Linguagens de
Programação
Interpretadores e Compiladores
Interpretadores e Compiladores
Interpretadores

e

Compiladores
Constantes e Variáveis
Constantes
Variáveis
Os dados num programa podem ser utilizados sob a forma de constantes ou variáveis:


São valores que permanecem inalterados num programa.

São entidades que podem assumir diferentes valores ao longo da execução do programa.
Elementos básicos de um Algoritmo
Elementos básicos de um Algoritmo
Elementos básicos
de um Algoritmo
Tipos de Dados
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Identificadores
Identificadores
Tipos de Dados
Simples


Cadeia de carateres (String)
Numéricos
Carateres
Lógicos
Inteiro
Real
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Operador Atribuição
X 25
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo

Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Prioridade dos Operadores
Prioridade dos Operadores
Prioridade dos Operadores
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Expressões
Exemplos:
( )
2*A*B+3*C
2*A*B+3*C
Sintaxe: READ (variáveis)
READ(NOME)
READ(IDADE,PESO)

Sintaxe: PRINT (expressão)
PRINT("O artigo pesa ",PESO," Kg")
PRINT(NOME)
PRINT(N1*N2)
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Estruturas

de Controlo
Estruturas de Controlo
Estruturas de Controlo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Estruturas de Controlo
Estruturas de Controlo
Estruturas de Controlo
Estruturas de Controlo
Estruturas de Controlo
Estruturas de Controlo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Arrays - Vectores
Subrotinas
Funções e Procedimentos
Subrotinas
Subrotinas
Subrotinas
Subrotinas - Funções e Procedimentos
Subrotinas - Funções e Procedimentos
Passagem de Parâmetros
Elementos básicos
de um Algoritmo
Alternativamente à passagem por referencia podemos indicar que a passagem de um determinado parâmetro é feita por valor, através da clausula ByVal.
Desta forma, uma cópia da variável original é passada ao parâmetro, não sofrendo o valor original alterações por eventuais operações realizadas no procedimento.
O resultado da impressão da variável num será 3.
Características
NOME / IDADE / PESO / MEDIA
<Comando-1>
<Comando-2>
<Comando-3>
. . .
<Comando-n>
DO FOR <variável> = <valor inicial> TO <valor final> STEP
<valor do incremento ou decremento>
Imprime a soma de
cinco números lidos
Imprime a soma de
cinco números lidos
Imprime a soma de
cinco números lidos
10. Elabore um Algoritmo em pseudocódigo que imprima a sucessão dos números primos menores que um dado valor N.


Um nº diz-se primo se for divisível apenas por si e pela unidade.

11. Elabore um Algoritmo em pseudocódigo que leia N pares de números inteiros, determine e imprima o máximo divisor comum de cada um dos pares.
12. Elabore um Algoritmo em pseudocódigo que imprima os N primeiros termos da série de Fibonacci.
Nota: A série de Fibonacci caracteriza-se por cada elemento que a compõe ser igual à soma dos 2 elementos imediatamente anteriores:

1, 1, 2, 3, 5, 8, 13, 21, 34, 55, …
Exercícios de Algoritmia
Exercícios de Algoritmia
Exercícios de Algoritmia
12 13 9 11 7 17 12
15 11 6 18 4 19 14
Exercícios de Algoritmia
Exercícios de Algoritmia
Exercícios de Algoritmia
Exemplo: para N=3
Resultado: ANA
Dim num As Integer
num=3
Incremento(num)
Print num
Sub Incremento(x As Integer)
x=x+1
End Sub
e Compiladores
Interpretadores
A versão compilada do programa (executável, .EXE) é armazenada, de forma que este pode ser executado autónoma ou independentemente do software que faz a compilação.
Se as instruções do programa são traduzidos à medida que o programa vai sendo lido e executado, num processo de tradução de instruções seguidas da sua execução imediata, então diz-se que o programa foi
interpretado
e que o mecanismo utilizado para a tradução é um
interpretador.
Os programas interpretados ficam dependentes do software que executa a interpretação.
Uma forma de criar um algoritmo, com a finalidade de o analisar, é através da implementação por pseudocódigo.
Algoritmo
Elementos básicos
de um Algoritmo
Não pode conter nomes de palavras reservadas
(Array, Read, IF, etc)
Exercícios de Algoritmia
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos

básicos
de um

Algoritmo
Elementos

básicos
de um
Algoritmo
Elementos básicos
de um Algoritmo
Ele
mentos básicos
de
um Algoritmo
Elementos
básicos
de um Algorit
mo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Traçagem
de
Algoritmos
Exercícios de Algoritmia
Estruturas
de
Repetição
Estruturas
de
Decisão
ou Selecção
Estruturas de Controlo
Estrutura
Sequencial
Estruturas
de
Repetição
Estruturas
de
Repetição
Estruturas
de
Repetição
Estruturas
de
Repetição
Estruturas
de
Repetição
Estruturas
de
Repetição
Exercícios de Algoritmia
Exercícios de Algoritmia
Exercícios de Algoritmia
4. Elabore um Algoritmo em pseudocódigo que calcule e imprima as duas raízes de uma equação de 2º grau dados os coeficientes a, b e c.
Neste exemplo, o valor inicial de X é 1 e de Y é 0. Enquanto o valor de X for menor ou igual a 5 os comandos


serão executados. Quando X passa a ser 6 (maior que 5) a repetição será encerrada e o comando PRINT(Y) será executado.
Y <-- Y + N e X <-- X + 1

8. Elabore um Algoritmo em pseudocódigo que leia os pesos de uma série de artigos, calcule e imprima a média desses pesos. A série de valores a introduzir termina quando se atingir o máximo de 10 artigos ou se o somatório dos pesos ultrapassar 5000.
9. Elabore um Algoritmo em pseudocódigo que leia um número, determine e imprima os
divisores desse número.
13 Elabore um Algoritmo em pseudocódigo que imprima os números de Armstrong inferiores a N.
Nota: Os números de Armstrong são números naturais que verificam a condição seguinte: a soma dos cubos dos algarismos componentes desse número ser igual ao próprio número:

153 = 1 3 + 5 3 + 33
220 e 284 são números amigos


Os divisores próprios de 220 são: 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 e 110, cuja soma é 284:
1 + 2 + 4 + 5 + 10 + 11 + 20 + 22 + 44 + 55 + 110 = 284

Os divisores próprios de 284 são: 1, 2, 4, 71 e 142, cuja soma é 220:
1 + 2 + 4 + 71 + 142 = 220
Exemplo: Notas 10 12 8 9 10 15 17

1 2 3 4 5 6 7
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
Elementos básicos
de um Algoritmo
PROCEDIMENTO PotCub (x:INTEIRO);
INTEIRO pot;
INICIO
pot <-- x*x*x;
FIM

Este procedimento calcula a potência cúbica de um número (recebido como parâmetro do procedimento).
Quando uma variável é declarada na parte do programa principal, diz-se que a
variável é global

e desta forma pode ser usada tanto no programa principal como dentro de qualquer subprograma.

Quando uma variável é declarada na parte declarativa de um subprograma, diz-se que a
variável é local

o que implica que essa variável só tem significado dentro desse subprograma em que foi declarada.
Elementos básicos
de um Algoritmo
Subrotinas - Funções e Procedimentos
Variáveis Locais e Globais
Quando se torna necessário efectuar o mesmo conjunto de instruções em diferentes pontos de um programa, deve-se recorrer à utilização de subprogramas, mas quando se pretende utilizar esses subprogramas com dados diferentes deve-se utilizar
parâmetros
(elementos inseridos no cabeçalho do subprograma e que são usados nas chamadas a esses subprogramas). Quando se faz uma chamada a um subprograma com parâmetros os valores indicados chamam-se
argumentos
.
Elementos básicos
de um Algoritmo
Parâmetros e Argumentos
Matrizes
Elementos básicos
de um Algoritmo
Arrays Multidimensionais
Arrays Unidimensionais
Elementos básicos
de um Algoritmo
O conceito de algoritmo é frequentemente ilustrado pelo exemplo de uma
receita
.
Um algoritmo pode
repetir passos
ou necessitar de
decisões até que a tarefa seja completada
.
Pseudocódigo

é uma forma genérica de escrever um algoritmo, utilizando uma
lin
guagem simples
sem
necessidade de
c
onhecer a sintaxe de nenhuma linguagem de programação.
O primeiro carater é sempre uma letra
Os seguintes carateres podem ser letras, algarismos e underline (_)
Não pode conter espaços nem acentos
SALÁRIO REAL
VALOR?IDADE
SOMA*NOTAS
MÉDIA
Identificadores inválidos
Identificadores válidos
(espaço e acento)
(?)
(*)
(acento)
-4*A*C/(2*A)
Full transcript