Você está na página 1de 20

UNIÃO EDUCACIONAL DO NORTE – UNINORTE

FACULDADE BARÃO DO RIO BRANCO – FAB


CURSO DE SISTEMAS DE INFORMAÇÃO
DOCENTE: LUIZ AUGUSTO MATOS DA SILVA

DISCENTE: _______________________

MATERIAL DE APOIO DA DISCIPLINA

ALGORITMOS
2º. Período / 2006.2

Rio Branco, Agosto de 2006.


APRESENTAÇÃO

Este material é direcionado a você, aluno do Curso de Sistemas de Informação, de


maneira que sirva como fonte de pesquisa e apoio à disciplina Algoritmos.

O conteúdo apresentado é resultado de referencial teórico extraído das fontes


bibliográficas recomendadas sobre o tema, com o apoio de artigos técnicos e
demais publicações.

Na primeira parte objetiva-se a abordagem dos princípios básicos inerentes à Lógica


de Programação, dando ênfase às formas de representação e o processo de
programação. No capítulo 2, o conteúdo apresentado traz os conceitos de variáveis,
constantes, tipos primários de dados com o desenvolvimento de algoritmos através
da técnica do Português Estruturado. O capítulo 3 trata dos comandos de entrada,
saída, estruturas de controle (simples, condicionais e repetição). O quarto capítulo,
lida com o tratamento das estruturas de dados homogêneos: vetores e matrizes,
além de métodos de busca e ordenação em tais estruturas. Finalmente, a última
parte deste material aborda os conceitos de modularização em algoritmos, com
ênfase nas técnicas de análise e desempenho.

Ao término deste curso o aluno deverá ter, além de um raciocínio lógico apurado
para a resolução de problemas envolvendo a lógica de programação, o domínio
teórico-prático dos conceitos básicos de análise e desenvolvimento de algoritmos,
de maneira crítica e sistemática.

Bom estudo!
luizmatos.eti.br

O conteúdo deste material é destinado ao ensino acadêmico, sendo reservados os direitos autorais de patentes,
aplicativos, marcas, imagens e outros de propriedade intelectual utilizados.
CAPÍTULO I
Conceitos de Lógica
de Programação

1.1 – Introdução
Lógica de programação
Solucionando os problemas
1.2 – Formas de representação
Linguagem Narrativa
Fluxograma
Diagrama de Chapin
Português Estruturado
Definindo uma forma de representação

1.3 – Processo de Programação


Tipos e etapas da programação

1.4 – Exercícios Propostos

“Toda aritmética pode ser


compreendida pelo mecanismo
de um pequeno motor analítico.”
(Babbage)
1.1 – Introdução

A lógica faz parte de nosso o Projeto lógico. Serve como


cotidiano, do nosso pensar, fazer, base para a fase de
decidir. Entende-se por lógico o desenvolvimento. Divide-se o
que não permite questionamento; sistema em subsistemas e
o que tem coerência, é óbvio, representa-os em diagramas, no
certo. intuito de tornar o projeto mais
claro e possibilitar uma melhor
Lógica é a “ciência do
raciocínio e da demonstração”. codificação.
o Projeto físico. A lógica do
Lógica de programação programa é representada através
de ALGORITMOS, etapa por
A lógica de programação é a etapa, após os devidos testes até
maneira pela qual se representa a codificação.
em linguagem convencional
(compreensível), instruções que Finalmente, realiza-se a devida
compõem um programa1 a ser documentação, implantação e
executado por um computador. É testes do programa.
o raciocínio lógico do
2
programador que vai influenciar Solucionando os problemas
diretamente o seu produto final, o
Para solucionar com precisão
programa.
os problemas de programação
devemos ter em mente os
Um programa, antes de seu
seguintes passos:
pleno funcionamento, passa pelas
o Interpretar o problema
seguintes etapas:
proposto;
o Levantamento e análise de
o Identificar os dados disponíveis
dados. Diante da necessidade do
para a sua resolução;
usuário de informatização,
o Dividi-lo em partes menores,
realiza-se o levantamento de
mediante a sua complexidade;
dados e análise das informações,
o Definir seu objetivo. Pergunte-
com o objetivo de fazer um
se: “Qual o resultado que se
projeto de viabilidade.
deseja alcançar?”;
o Se mesmo assim não encontrar
1
a solução, reveja os passos
Conjunto de instruções feitas para
serem executadas por um computador. anteriores.
2
Responsável pela(s) etapa(s) de
criação de um programa de computador.
5

1. encha de água a chaleira;


2. coloque a chaleira para ferver;
enquanto não ENTENDEU faça
se VEZES <= 4 entao 3. prepare o porta-filtro com o
escreva “Leia a especificação!”; filtro sobre o bule;
VEZES  VEZES + 1; 4. coloque duas colheres de sopa
senão
escreva “Pergunte ao professor!”; de pó de café no filtro;
ENTENDEU  verdadeiro; 5. após a água ter fervido,
fim se;
acrescente aos poucos meio litro
fim enquanto;
de água sobre o filtro;
6. aguarde coar;
1.2 – Formas de representação 7. adoce a gosto.
São diversas as formas de
representação da lógica de Sendo esses passos seguidos
programação. Devendo ser todo corretamente, o objetivo de “fazer
problema analisado antes de se café” será alcançado. Mas, se um
encontrar a solução, uma das dos componentes faltasse?
técnicas mais utilizada é o Certamente, a seqüência seria
ALGORITMO e suas formas de descrita de outra forma.
representação. 1. encha de água a chaleira;
2. coloque a chaleira para ferver;
Linguagem Narrativa 3. enquanto a chaleira está no
Pode-se considerar o algoritmo fogo;
como uma “seqüência de 4. prepare o porta-filtro com o
procedimentos finitos, que filtro sobre o bule;
sendo executados em 5. se houver café, coloque duas
determinado período de colheres de sopa de pó no filtro;
tempo, chegará ao seu 6. senão, desligue a chaleira, vá
objetivo”. até o mercado comprar café;
Ou em outras palavras: “Um 7. repita os itens 2, 3 e 5;
algoritmo é a descrição de um 8. após a água ter fervido,
padrão de comportamento, acrescente aos poucos meio litro
expressado em termos bem de água sobre o filtro;
definidos, finito de ações 9. aguarde coar;
executáveis”. 10. adoce a gosto.
Imaginemos, por exemplo, a Algoritmo é uma “seqüência
seqüência que tem por objetivo finita e lógica de instruções”.
“fazer café”.
6

Concluímos que: iii) Identificar as saídas de


o Todo algoritmo é composto por dados a serem geradas como
instruções (comandos) finitas e resultado da solução;
bem definidas, com a finalidade iv) Determinar o que deve ser
de solucionar um problema feito para transformar as
proposto. entradas nas saídas desejadas.
A construção de um algoritmo (processamento)
segue os passos abaixo: v) Construir o algoritmo,
fazendo uso de uma forma de
i) Interpretar o enunciado do representação de algoritmos;
problema, a fim de identificar o vi) Testar a solução. Execução
objetivo; de todas as ações do algoritmo,
ii) Identificar os dados a serem conforme o fluxo estabelecido,
fornecidos (entradas de dados); para validar sua execução ou
detectar possíveis erros.

O que preciso? Como chegar ao O que quero?


que quero?
(Entrada) (Saída)
(Processamento)

Figura 1. Questões à formalização de um algoritmo.

Desvendando o caminho das pedras ...

Exemplos:
2 - Construir um algoritmo para
1 - Construir um algoritmo para somar fazer um suco de laranja.
dois números. Entrada:
Entradas: (o que preciso?) - laranja;
- primeiro número; Processamento:
- segundo número. - cortar a laranja;
Processamento: (como chegar ao - espremer a laranja com
que quero?) espremedor;
- somar os números. Saída:
Saídas: (o que quero?) - suco de laranja.
- números somados.
7

3 - Construir um algoritmo para


calcular a média semestral antes do
exame.
Entrada manual Vídeo
Entrada:
- nota 1;
- nota 2.
Processamento:
Disco magnético Linhas de Fluxo
- somar as notas e dividir por dois;
Figura 2. Símbolos Fluxograma
Saída:
- média semestral antes do exame.

Exemplo:
Escreva um algoritmo para
descrever como você faz para
Dados CadAlu
ir da sua casa até o
trabalho/faculdade.

Fluxograma Progra Progra


ma ma
O fluxograma é utilizado para
representar graficamente a origem
Informa RelAlu
dos dados, o destino das
ção
informações e os tipos de
armazenamento dos processos do
O primeiro fluxograma
sistema.
representa uma entrada de dados
via teclado, o programa em uma
Na intenção de padronizar a
visão global e uma saída via
utilização dos símbolos, utiliza-se a
monitor de vídeo.
tabela dos símbolos ANSI3,
Já o segundo representa uma
apresentados abaixo:
entrada de dados via disco
magnético, o programa uma visão
SÍMBOLOS ANSI MAIS USADOS
macro e uma saída por impressão
de relatório.

Processamento Documento Se preocupe com a lógica do


programa e não com o símbolo
que representa a origem e a
saída de dados. Assim,
diagramar fica fácil e prático.
Dados
Fita Magnética armazenados

3
American National Standards Institute
8
Diagrama de Chapin
1 Inicio algoritmo “NomePrograma”;
Ainda como forma alternativa de variáveis
2
descrição da estrutura dos comandos
constantes
de um algoritmo, existe o Diagrama de 3
Chapin, “criado por Ned Chapin a 4 início
5
partir dos trabalhos de Nassi &
6 fim.
Shneiderman”.
Uma forma de representação
Onde:
utilizando esta técnica, pode ser assim
1. Denominação do programa;
exemplificada:
2. Declaração e classificação de
variáveis;
Diagrama de Chapin
3. Declaração de constantes;
Leia
4. Início do bloco principal do
num1, num2
programa;
aux  num1
num1  num2 5. Iniciar variáveis de controle o
num2  aux que receberão cálculos, solicitação
Escreva de entrada de dados, entrada de
num1, num2 dados, processamento/cálculos,
saída de informações;
Figura 3. Diagrama de Chapin
6. Final do bloco4 principal do
programa.
Exemplo:
Português Estruturado (PORTUGOL) - Dar entrada a dois números.
Trocar os valores das variáveis
Considerada uma pseudolinguagem em que foram armazenados e
de programação (Português + exibi-los.
ALGOL/PASCAL), é também conhecida
como Portugol ou Pseudo-Código. Inicio algoritmo “TrocaNumero”;
variáveis
num1, num2, aux: inteiro;
Ou em outras palavras: “A idéia é início
permitir que com um conjunto leia (num1);
leia (num2);
básico de primitivas seja possível aux  num1;
ao PROJETISTA pensar na solução num1  num2;
do problema e que esta solução num2  aux;
escreva num1, num2;
seja facilmente implementada no fim.
computador”.

A estrutura utilizada para o


Portugol será a seguinte: 4
Conjunto de instruções que possui uma
função bem definida.
9
Definindo uma forma de - Escreva um algoritmo que leia
representação
dos números inteiros e efetue a
Demonstramos as principais formas soma.
de se representar um algoritmo no Inicio algoritmo “SomaNumeros”;
papel. Existem diversas outras variáveis
variantes destas técnicas, sendo de num1: inteiro;
escolha do projetista qual a mais num2: inteiro;
adequada à sua situação. resultado: inteiro;
Dentre as apresentadas, a mais inicio
difundida a níveis didáticos e leia num1;
computacionais, é o PORTUGUÊS leia num2;
ESTRUTURADO. Além de estar resultado  num1 + num2;
presente de maneira sólida nos escreva resultado;
referenciais bibliográficos, é o método fim
mais próximo de nossa linguagem Fim algoritmo
convencional, facilitando assim a
compreensão do algoritmo (do mais
Tipos e etapas da programação
simples ao mais complexo).
Otimiza a fase de codificação, onde Considera-se os seguintes
apenas necessita-se “traduzir” a tipos de programação:
solução para uma linguagem específica
de programação. o Programação linear. Os
programas são executados linha a
linha, seguindo o fluxo do
1.3 – Processo de Programação programa. É tido como um
modelo tradicional de
Após a criação da lógica do
programação.
programa, passamos o programa para
uma Linguagem de Programação.
o Programação estruturada. O
programa é dividido em módulos
Recomenda-se fortemente que a
ou sub-rotinas, utiliza-se as
fase de codificação, ou seja, de
estruturas básicas de controle.
transformar a solução construída em
linguagem narrativa em uma o Programação visual. O
linguagem de programação, seja programa é construído baseado
realizada somente após do em funções que agem sobre um
cumprimento de todos os passos de evento externo, iniciado pelo
construção de um algoritmo - usuário. Como o clique do mouse
independente de sua forma de sobre um botão de comando.
representação.
1.4 – Exercícios Propostos

Um bom aprendizado em
ALGORITMOS depende
da prática de exercícios.

1) Defina corretamente os itens abaixo relacionados:


• Lógica de programação
• Programa e programador
• Linguagem narrativa
• Processo de construção de um algoritmo
• Instruções, comandos e blocos
• Formas de representação

2) Descreva como você faz para consultar seu saldo bancário no caixa
eletrônico. Identificar separadamente os dados de entrada, funções de
processamento e dados de saída.
Entrada (O QUE PRECISO?)

Processamento (COMO CHEGAR AO QUE QUERO?)

Saída (O QUE QUERO?)

3) Repita o exercício anterior, sendo que, o objetivo é efetuar um saque


bancário no caixa eletrônico.

4) Descreva, em Linguagem Narrativa, as questões 2) e 3). Use como exemplo


o problema da “troca de pneu”, realizado em sala.

Resolver e entregar na
data definida pelo
professor.
CAPÍTULO II
Conceitos Iniciais

2.1 – Introdução

2.2 – Variáveis e Constantes


Variáveis e Memória
Declaração de Constantes
Tipos Básicos de Dados
Regras para criação de identificadores
Palavras reservadas
Comando de atribuição

2.3 – Operadores e Expressões


Operadores: aritméticos, lógicos e relacionais
Prioridades de execução
Expressões Aritméticas

2.4 – Teste de Mesa

“A mente que se abre a uma


nova idéia jamais volta ao seu 2.5 – Algoritmos com Qualidade
tamanho original.”
(A. Einstein)
2.6 – Exercícios Propostos
2.1 – Introdução Variáveis e Memória

Imagine que a memória do


Em toda linguagem de
computador seja um armário com
programação as instruções
várias gavetas. Cada gaveta possui
envolvem dois aspectos:
um rótulo que em determinado
• Sintaxe: forma.
momento guarda um conteúdo
• Semântica: conteúdo.
(informação).
O computador, para poder
No PORTUGOL, “a sintaxe é
manipular esses conteúdos, precisa
definida, sendo a forma
saber qual o local onde o conteúdo
apresentada aceita e respeitada
se encontra. As linguagens de
como padrão. Para cada declaração
programação permitem que, em
e/ou comando a semântica será
vez de trabalhar com números
devidamente explicada.
hexadecimais (endereços físicos
que só o computador entende),
2.2 – Variáveis e Constantes
seja possível, dar nomes para as
posições de memória da máquina,
A programação exige o
permitindo facilitar o manuseio de
armazenamento de informações a
cada posição de memória. Essa
serem utilizadas posteriormente
possibilidade permite que o próprio
durante a execução do programa.
usuário crie o nome das variáveis
Para isso, faz-se uso da declaração
para as gavetas do nosso armário
de variáveis e constantes.
hipotético. Essas gavetas ora
guardam um conteúdo ora outro.
Ou em outras palavras, variável
Então podemos dizer que os
é “uma porção de memória do
conteúdos das gavetas podem ser
computador, onde guardamos
alterados no decorrer do programa.
um dado ou uma informação.
Seu conteúdo pode variar ao Variável é um “endereço de
memória representada por um
longo do tempo durante a nome simbólico, cujo conteúdo se
execução de um programa, altera no decorrer do programa”.
sendo que ela só pode
armazenar um valor a cada Assim a variável é composta
instante”. por dois elementos básicos:
E, constante é “um • Conteúdo - valor atual da
determinado valor fixo que não variável;
se modifica com o passar do • Identificador - nome dado à
tempo, durante a execução de variável para possibilitar sua
um programa”. manipulação.
13

Exemplo: Exemplo:
- As informações relativas a um - A quantidade atual de
funcionário de uma empresa. funcionários de uma empresa é 30.

Nome, sexo: caracter; Quant_Func = 30;


idade: inteiro;
salario: real; O identificador Quant_Func,
receberá o valor 30 (total de
Os identificadores Nome, Idade, funcionários), que permanecerá
Sexo e Salário são as variáveis constante durante a execução do
deste programa. Seus valores programa.
podem ser alterados em outro
momento da programação. - Escreva um algoritmo que mostre
o valor da constante pi.
- Escreva um algoritmo que leia
seu nome, idade e altura e os Inicio algoritmo “Pi”;
informe. constantes
pi=3,14;
Inicio algoritmo “LêDados”; inicio
variáveis escreva pi;
nome: caractere; fim
idade: inteiro; Fim algoritmo
altura: real;
inicio
leia nome; Tipos Básicos de Dados
leia idade;
A variável tem que ser definida
leia altura;
segundo o conjunto de valores que
escreva nome, idade, altura;
ela receberá. Os tipos de dados
fim
referem-se à classificação dos
Fim algoritmo
valores que a variável poderá
receber segundo a linguagem de
programação que se está
Declaração de constantes
utilizando.
Declarar constantes significa Os tipos básicos (ou primitivos)
reservar uma área da memória de dados previstos na maioria das
RAM, que irá receber um nome linguagens de programação são:
(rótulo) cujo conteúdo vai
permanecer constante durante - Inteiro:qualquer número inteiro,
toda a execução do programa. negativo, nulo ou positivo.
Exemplos: 14; 22; 0; -1 e 83.
14

- Real: qualquer número real, mais de uma palavra, pode separá-


negativo, nulo ou positivo. las com o underline (_);
Exemplos: -14.3; 0; 54 e 6.5. - os nomes escolhidos devem ser
- Caracter: qualquer conjunto de explicativos do seu conteúdo;
caracteres alfanuméricos/especiais. - nomes de variáveis longos
Representado entre aspas (“”). dificultarão a codificação. Os
Exemplos: “Informática”; “João”; nomes não devem ultrapassar o
“Maria”. total de caracteres permitido pela
- Lógico: pode armazenar apenas linguagem.
os valores verdadeiro (V) e falso - não utiliza-se acentuação ou
(F). cedilha;
- os nomes dados às variáveis não
- Identifique quais os tipos dos podem ser os mesmos nomes das
dados abaixo. Utilize (I)nteiro, palavras reservadas da linguagem
(R)eal, (C)aractere e (L)ógico. de programação que será utilizada.
( ) 1000
( ) “-900” Palavras reservadas
( ) VERDADEIRO
São palavras que possuem
( ) -1,56
significado especial na construção
( ) 34
do algoritmo ou programa. Tais
( ) 10,0
palavras não podem ser utilizadas
( ) FALSO
como identificadores em um
( ) “José Francisco”
algoritmo.
( ) “Verdadeiro”

algoritmo variaveis constantes


Regras para criar identificadores
inicio fim se
As variáveis e as constantes senão enquanto para
têm um nome (rótulo) que as faça repita ate
identifica dentro do código. Esse escolha caso mod
nome deve ser criado conforme as leia escreva div
seguinte regras: E OU NÃO
- o primeiro caractere deve ser Tabela 1. Palavras reservadas
uma letra;
- os nomes devem ser formados - Assinale com um X os nomes
por caracteres pertencentes às válidos para uma variável.
letras do alfabeto e aos números. ( ) ENDEREÇO
- não utilizar espaços em branco ( ) 21BRASIL
entre os caracteres do ( ) CIDADE3
identificador. Se o identificador for ( ) NOME_USUARIO
( ) NOME*USUARIO
15

- Escreva um algoritmo para 2.3 – Operadores e


calcular a área de um quadrado. Expressões

Inicio algoritmo “AreaQuadrado”; Para a realização de cálculos,


variáveis comparações e expressões,
lado, area: inteiro; utilizamos os operadores
inicio aritméticos, lógicos e relacionais.
leia lado;
area  lado * lado; Operadores: aritméticos, lógicos e
relacionais
escreva area;
fim Operadores Aritméticos
Fim algoritmo Operador Descrição
+ Adição
- Subtração
“Quanto mais tempo se leva na
construção de um algoritmo no papel, * Multiplicação
menos tempo leva-se codificando-o. / Divisão
** Exponenciação

> < SQR


MOD
Raiz Quadrada
Resto da divisão inteira
DIV Quociente divisão inteira
Comando de atribuição
Utilizados para cálculos matemáticos
É o comando que indica o que a
variável vai receber em seu Exemplos:
conteúdo em determinado a) X  A**B-B**C;
momento. Nas linguagens de b) D  A*(B+C);
programação são representados c) Y  SQR A;
pelo sinal de igualdade (=) ou d) Z  Q-P*C
dois-pontos e igualdade (:=), e) N MOD 2  0;
dependendo da linguagem a ser f) 3 MOD 2 (resto de divisão de
utilizada. três por dois)
Sintaxe: g) 3 DIV 2 (quociente de divisão
Identificador  valor; de três por dois)
h) SQR 8 (raiz quadrada de oito)
Exemplo:
Media  0; Dividendo  3 2  Divisor
Lê-se: Media recebe zero. MOD  1 1  DIV
Devemos iniciar, com valor
nulo, as variáveis que
receberão cálculos no
decorrer do algoritmo.
16

Operadores Relacionais Operador lógico OU


Operador Descrição Condi Condi Resultado
= Igual ção1 ção2
<> Diferente V OU V V
>= Maior ou igual a V OU F V
<= Menor ou igual a F OU V V
> Maior F OU F F
< Menor
Utilizados para expressões Operador lógico NÃO
Exemplos: Condição Resultado
a) media >= 7,0; VERDADEIRO NÃO FALSO
b) matricula <> 0; FALSO NÃO VERDADEIRO
c) salario > 3.000,00;
d) nome  “João Silva”; Prioridades de execução
e) contador <= 30;
Quando houver situação com
Operadores Lógicos
operações mistas, as prioridades
Operador Descrição
para execução devem ser as
E Conjunção
mesmas regras que as adotadas na
OU Disjunção
matemática:
NÃO Negação
Utilizados para condições 1) Efetuar operações embutidas
Exemplo: em parênteses mais internos;
a) (n1>n2) E (n1>n3); 2) Efetuar exponenciação e
b) (n1>n2) OU (n1>n3); funções;
c) (n1>n2) NÃO (n1>n3); 3) Efetuar multiplicação e divisão
(*, /);
Tabela de Decisão
4) Efetuar adição e subtração (+, -
A tabela de decisão, ou Tabela );
Verdade, serve para orientar 5) Efetuar operações relacionais
nossas escolhas quando nos (>,<,<>,=,<=,>=);
depararmos com as situações de 6) Efetuar operações lógicas (NÃO,
condições no algoritmo. E, OU).
Operador lógico E
Expressões Aritméticas
Condi Condi Resultado
ção1 ção2 Consiste em um conjunto de
V E V V variáveis e/ou valores, separados
V E F F por caracteres especiais, que
F E V F indicam as operações que devem
F E F F ser executadas.
Exemplos:
Expressão Comentário
( 3 + 5 ) * ( 4 * ( 10 -7 ) ) / 2 Opera-se o que estiver nos parênteses
mais internos
(3+5)*(4*3)/2 Operam-se os dois parênteses que
restaram
8 * 12 / 2 Só há * e / - , então opera-se da esquerda
para a direita
96 / 2
48 Resultado final

Expressão Comentário
6*( 9 + 3 * 2 ) / ( 2 * 4 - 11 ) Operam-se as multiplicações nos
parênteses
6*(9 + 6 )/( 8 - 11 ) Operam-se os parênteses
6 * 15 / -3 So há * e / - opera-se da esquerda para a
direita
90 / -3 Observe o sinal negativo antes do 3
-30 Resultado final

Até agora só vimos expressões com constantes. Na maioria das vezes,


porém, haverá expressões que combinarão variáveis e constantes. Quando
houver uma variável em uma expressão, o cálculo deve ser feito usando-se
o valor da variável naquele momento.

Exemplos:
Expressão Comentário
A: inteiro; Declaração da variável
A  3; Atribuição de valor
escreva A * 5; Será exibido o valor 15, pois A=3, logo 3*5 = 15

Expressão Comentário
A, B : inteiro; Declaração da variável
A  10; Atribuição de valor
B  A * 3; O valor de B é 30 ( 10*3 )
escreva B - A + 1; Será exibido o valor 21 ( 30 - 10 + 1 )
B  40; Novo valor para B
escreva B - A + 1; Agora será exibido o valor 31 (40 - 10 + 1), pois o
valor de B mudou
18

Expressão Comentário
A: inteiro; Declaração da variável
A  3 * 2; O valor de A é 6
A  A + 1; Agora o valor de A passa a ser 7 (6, o valor
anterior, mais 1)
escreva A * A; Será exibido o valor 49 ( 7 * 7 )

Expressão Comentário
X: inteiro; Declaração da variável
escreva "Digite um número :";
leia X; Obtenha um número qualquer do usuário
Escreva X * 2; Será exibido o dobro do número digitado
(qualquer que ele seja)

2.4 - Teste de Mesa Antes do Processamento

É uma técnica utilizada para Nome Nota_1 Nota_2


simulação da execução do João da Silva 8,0 6,5
algoritmo que construímos, Afonso Direito 10,0 10,0
verificando se sua lógica está Luana Pontes 4,0 7,0
correta ou não.
Simulamos a solução, passando Depois do Processamento
por todas as partes do algoritmo
para testar a resolução e encontrar João da Silva 7,25
erros se houver. Afonso Direito 10,0
Luana Antunes 5,5
Exemplo:
- Para calcular a média entre duas 2.5 - Algoritmos com
notas, poderíamos testar nosso Qualidade
programa com os dados da tabela
“Antes do Processamento”. Tais 1) Algoritmos devem ser feitos
dados devem seguir o fluxo do para serem lidos por seres
programa e o resultado final deve humanos. Tenha em mente que
ser o da tabela “Depois do seus algoritmos deverão ser lidos e
Processamento”. entendidos por outras pessoas (e
O teste de mesa deve ser por você mesmo) de tal forma que
utilizado sempre que possam ser corrigidos, receber
houver dúvidas na exatidão
da lógica do programa. manutenção e ser modificados.
19

2) Escreva os comentários no 5) utilize espaços em branco para


momento em que estiver melhor legibilidade. Espaços em
escrevendo o algoritmo. Um branco, inclusive linhas em branco,
algoritmo não documentado é um são valiosas para melhorar a
dos piores erros que um aparência de um algoritmo.
programador pode cometer e é - deixe uma linha em branco
sinal de amadorismo. Como o entre as declarações e o corpo do
objetivo de se escrever algoritmo.
comentários é facilitar o - deixar uma linha em branco
entendimento do algoritmo, eles antes e outra depois de um
devem ser tão bem concebidos comentário
quanto o próprio algoritmo. E a - separar grupos de comandos que
melhor maneira de se conseguir executam funções lógicas distintas
isso é escrevê-los nos momentos por uma ou mais linhas em branco.
de maior intimidade com os - utilizar brancos para indicar
detalhes, ou seja, durante a precedência de operadores. Ao
resolução do problema. invés de “A+B *C” é mais
amigável a forma “A+ B*C”.
3) Os comentários deverão
acrescentar alguma coisa; não 6) Escolha nomes representativos
apenas para frasear os comandos. para suas variáveis. Os nomes das
O conjunto de comandos nos diz o variáveis deverão identificar, o
que está sendo feito; os melhor possível, as quantidades
comentários deverão nos dizer por que elas representam. Por
quê. exemplo, X  Y + Z é muito menos
claro que PRECO  CUSTO +
4) Use comentários no prólogo. LUCRO. Este é o princípio mais
Todo algoritmo ou procedimento importante da legibilidade de
deverá ter comentários no seu algoritmos.
prólogo para explicar o que ele faz
e fornecer instruções para seu uso. 7) um comando por linha é
Alguns destes comentários seriam suficiente. A utilização de vários
- uma descrição do que faz o comandos por linha é prejudicial
algoritmo por várias razões, dentre elas:
- como utilizá-lo
- explicação do significado das
variáveis mais importantes
- estruturas de dados utilizadas
- autor, data de escrita, etc.
2.6 – Exercícios Propostos

EXERCÍCIOS PROPOSTOS

Instruções:
- Formar grupos de até 4 alunos;
- Utilizar até 3 páginas;
- Exagere e cite as fontes de pesquisa.

1) Efetuar pesquisa bibliográfica sobre:


• Operadores: aritméticos, lógicos e relacionais;
• Expressões: hierarquia das operações;
• Comandos de atribuição, entrada e saída.

2) Escreva um algoritmo que leia seu nome, idade e altura e os escreva na


tela.

3) Escreva um algoritmo para calcular a área de um círculo.


Área do círculo = 3,1415*raio²

4) Desenvolva os algoritmos utilizando a técnica do português estruturado


para os seguintes programas:
a) Ler uma temperatura em graus Celsius e apresentá-la convertida em
graus Fahrenheit. A fórmula da conversão é F  (9*C + 160)/5, sendo F a
temperatura em Fahrenheit e C a temperatura em Celsius.

b) Ler uma temperatura em graus Fahrenheit e apresentá-la convertida em


graus Celsius. A fórmula de conversão é C  (F - 32)*(5/9), sendo F a
temperatura em Fahrenheit e C a temperatura em Celsius.

c) Ler dois inteiros (variáveis A e B) e imprimir o resultado do quadrado da


diferença do primeiro valor pelo segundo.

d) Calcular e apresentar o valor do volume de uma lata de óleo, utilizando a


fórmula: VOLUME  3.14159 * RAIO² * ALTURA

Você também pode gostar