Você está na página 1de 14

1

Algoritmos - Estrutura Sequencial: Elaborando Algoritmos


Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
Ol, pesso@ll!

No mundo real os seres humanos executam algoritmos. Os sistemas computacionais
implementam estratgias para implementar alguns problemas que os seres humanos
enfrentam e que podem ser resolvidos com maior rapidez e maior preciso.

Vamos comear nossos estudos com a primeira categoria de estratgia de
desenvolvimento de algoritmos: a estrutura sequencial.

Bons estudos!
Prof. Waine





2
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
A Estrutura Sequencial

A Estrutura Sequencial utiliza a estratgia algortmica mais simples de ser executada,
que a sequencialidade.

Vamos lembrar da definio de algoritmo que eu apresentei no primeiro material de
estudos: uma estrutura de passos bem definidos para que, quem o estiver seguindo possa
chegar a um resultado previsto.

A primeira coisa que fazemos quando definimos passos para serem seguidos a
ordenao. Por exemplo, veja que, em uma receita, a ordem de mistura dos ingredientes
pode mudar totalmente o resultado da receita. Ou ento, para que possamos trocar um
pneu, ser impossvel fazer a troca sem antes desparafusar a roda, suspender o pneu.
Ento preciso colocar ordem.

Portanto, a estrutura sequencial prope que a resoluo de problemas comea com uma
sequencia de passos ordenados. Os passos sero executados exatamente na ordem em
que aparecem. Simples assim.

Vou apresentar ento uma srie de exerccios para ilustrar o desenvolvimento de
algoritmos com a estrutura sequencial.

Para isso, separei uma srie de casos mais comuns, que eu encontrei na minha prtica
como professor.

Vamos l.


Casos de uso da Estrutura Sequencial

Os casos de uso mais comuns da estrutura sequencial so:

problemas que envolvem o uso de expresses ou frmulas matemticas
problemas que envolvem regra de trs
problemas que envolvem porcentagem


Vamos ento estudar essas situaes.


a) Problemas que envolvem o uso de frmulas matemticas em geral

A implementao de uso de frmulas matemticas nosso primeiro caso de aplicao
da Estrutura Sequencial.

O estudo da matemtica nos acompanha desde nossos estudos no ensino fundamental.
Portanto, temos n casos como exemplo.
3
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
Vamos utilizar os operadores j apresentados anteriormente.



Na construo de expresses ou frmulas matemticas utilizamos sinais de parnteses,
chaves e colchetes. Entretanto, em Portugol, utilizamos apenas o sinal de parnteses
para indicar a prioridade.

S para relembrar, a ordem de execuo sempre da esquerda para a direita,
priorizando:
1. Radiciao e exponenciao;
2. Diviso e multiplicao;
3. Soma e subtrao.

Vamos agora ao exerccio.

Escreva um algoritmo para realizar a soma de dois nmeros reais, A e B. Leia as
variveis A e B pelo teclado. Calcule a soma de A + B, atribuindo o resultado varivel
chamada SOMA. Mostre o resultado da varivel soma.

A tcnica bsica para a resoluo de algoritmos :
1. Ler e compreender exatamente o que est sendo solicitado;
2. Buscar separar ou estruturar o enunciado do exerccio em entrada,
processamento e sada;
3. Separar cada comando em uma linha;
4. Refinar os comandos e/ou operaes de processamento se for o caso;
5. Escrever o algoritmo em comandos em Portugol;
4
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
6. Coloque os comandos de apresentao de interface para o usurio
(mensagens na tela, limpeza de tela, etc.);
7. Definir os tipos de variveis para as variveis utilizadas;
8. Atribuir um nome ao algoritmo.

Vejamos os passos que eu utilizo para a resoluo desse algoritmo.

1 estudo: separao entre entrada, processamento e sada.

Entrada Leia as variveis A e B pelo teclado
Processamento Calcule a soma de A + B, atribuindo o resultado varivel chamada
SOMA
Sada Mostre o resultado da varivel soma

2 estudo: separao dos comandos, um por linha.

Entrada Leia a variveis A
Leia a varivel B
Processamento Calcule a soma de A + B, atribuindo o resultado varivel chamada
SOMA
Sada Mostre o resultado da varivel soma

3 estudo: escrever os comandos em Portugol.

Entrada Leia (A)
Leia (B)
Processamento SOMA A + B
Sada Escreva (SOMA)

4 estudo: escrever os comandos de interface para o usurio. Foram inseridas
mensagens para o usurio digitar o valor e tambm para apresentao do
resultado. O comando Escrava foi substitudo pelo comando Escreval, para que
cada mensagem aparea em uma linha separada.

Entrada Escreval (Digite o valor da varivel A)
Leia (A)
Escreval (Digite o valor da varivel B)
Leia (B)
Processamento SOMA A + B
Sada Escreval (O resultado da soma de A + B = , SOMA)

5 estudo: definir os tipos de dados para as variveis utilizadas.

Variveis A, B, SOMA: real
Entrada Escreval (Digite o valor da varivel A)
Leia (A)
Escreval (Digite o valor da varivel B)
5
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
Leia (B)
Processamento SOMA A + B
Sada Escreval (O resultado da soma de A + B = , SOMA)


6 estudo: nomear o algoritmo.

Nome Exerccio01
Variveis A, B, SOMA: real
Entrada Escreval (Digite o valor da varivel A)
Leia (A)
Escreval (Digite o valor da varivel B)
Leia (B)
Processamento SOMA A + B
Sada Escreval (O resultado da soma de A + B = , SOMA)

O algoritmo final deve ser:

Algoritmo Exerccio01
Variveis
A, B, SOMA: real
Incio
Escreva (Digite o valor da varivel A)
Leia (A)
Escreva (Digite o valor da varivel B)
Leia (B)
SOMA A + B
Escreva (O resultado da soma de A + B = , SOMA)
FimAlgorimto


O teste de mesa

O teste de mesa um procedimento que realizamos aps a elaborao de um algoritmo,
para verificar sua corretitude, simulando mentalmente, o funcionamento de um
computador.

O procedimento simples.

Vamos testar somente o trecho que est delimitado por Incio e FimAlgoritmo. Para isso
vamos numerar todas as linhas, para facilitar nosso processo.


1. Escreva (Digite o valor da varivel A)
2. Leia (A)
3. Escreva (Digite o valor da varivel B)
4. Leia (B)
6
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
5. SOMA A + B
6. Escreva (O resultado da soma de A + B = , SOMA)


Muito bem. Agora vamos simular o funcionamento do computador. Basicamente, temos
2 pontos que nos interessam: a memria e a tela do computador, que vai mostrar as
interaes e resultados. Logo, vamos construir uma estrutura que delimita essas duas
reas:

Memria Tela


Agora vamos separar a memria de acordo com as variveis que foram declaradas na
seo Variveis: A, B e SOMA.


Memria Tela
A B SOMA


Agora vamos colocar o pseudocdigo na nossa tabela:

Algoritmo Memria Tela
A B SOMA
1. Escreva (Digite o valor da varivel A)

2. Leia (A)

3. Escreva (Digite o valor da varivel B)

4. Leia (B)

5. SOMA A + B

6. Escreva (O resultado da soma de A +
B = , SOMA)


Muito bem, agora vamos testar o algoritmo.

Minha orientao que quando for testar um algoritmo, utilizar valores pequenos
sempre que possvel, para serem fceis de serem testados mentalmente, isso quer dizer,
sem precisar de uso de calculadora.

Vamos testar ento com A valendo 1,5 e B valendo 2,5.

Memria Tela
A B SOMA
1. Escreva (Digite o valor da varivel A) Digite o valor da varivel A
2. Leia (A) 1,5 1,5
3. Escreva (Digite o valor da varivel B) Digite o valor da varivel B
Se, depois de inserirmos valores, no houver alterao nas variveis da memria, no h necessidade de repetir o valor nas clulas
abaixo. Mas fica ao critrio do aluno repetir os valores ou no.
4. Leia (B) 2,5
5. SOMA A + B 4,0
6. Escreva (O resultado da soma de A +
B = , SOMA)
O resultado da soma de A + B = 4
7
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados




Na linha 1, a mensagem foi apresentada na tela, conforme o comando escreva indicou.
Na linha 2, o valor 1,5 foi digitado pelo usurio e apareceu na tela. Em seguida, o valor foi levado
para a memria, no compartimento A, simulando a memria do computador.
Na linha 3, a mensagem foi apresentada na tela, conforme o comando escreva indicou.
Na linha 4, o valor 2,5 foi digitado pelo usurio e apareceu na tela. Em seguida, o valor foi levado
para a memria, no compartimento A, simulando a memria do computador.
Na linha 5, o compartimento SOMA recebeu o resultado da operao SOMA A + B.
Na linha 6, a mensagem foi apresentada na tela, conforme o comando escreva indicou, incluindo o
valor da varivel SOMA.

Importante, os finais valores da memria so observados nas colunas das variveis. Os
ltimos valores que contam.

Se no conseguiu seguir o raciocnio, tente novamente desde o incio.

Vou agora inserir o cdigo no VISUALG e testar com os mesmos valores.




Veja agora a execuo a tela de console:

8
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados

Finalmente, a tela do VISUALG, com a execuo do algoritmo:




b) Problemas que envolvem regra de trs

Uma srie de problemas que envolvem matemtica so mais facilmente resolvidos
utilizando a tcnica de regra de trs como ferramenta para a descoberta do clculo. Por
isso escrevi um material especfico para a reviso desse contedo e disponibilizei no
Moodle. Tire um tempinho para estuda-lo. Vamos ao exerccio:

Elabore um algoritmo para calcular o salrio que uma pessoa receber por ms. Leia a
quantidade de horas trabalhadas, como um valor real. Considere o ganho de 23,70 por
hora.

Vamos executar os passos que eu sugeri para o desenvolvimento do algoritmo:

9
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
1. estudo: separao entre entrada, processamento e sada.

Nome
Variveis
Entrada Quantidade de horas trabalhadas
Processamento Calcular o salrio que uma pessoa receber por ms
Sada O salrio que uma pessoa receber por ms

2. estudo: separao dos comandos, um por linha.

Nome
Variveis
Entrada Ler a quantidade de horas trabalhadas
Processamento Calcular o salrio que uma pessoa receber por ms
Pergunta: como realizar esse clculo?

Se uma pessoa recebe 23,70 por hora, quanto recebe por ms?

Aplicando regra de trs:
Se recebe 30 dias, cada dia 8 horas, ento recebe o trabalho de 30 x 8
= 240 horas

Tempo em horas Valor em reais
1 23,70
qHorasTrabalhadas X

Como se trata de regra de trs direta, s aplicar o clculo:

1 = 23,70
qHorasTrabalhadas X
X= qHorasTrabalhadas *23,70
Como X o salrio que queremos saber, ento temos a expresso
matemtica:

salario qHorasTrabalhadas *23,70

Sada Escrever o salrio que uma pessoa receber por ms

3. estudo: escrever os comandos em Portugol.

Nome
Variveis
Entrada Leia (qHorasTrabalhadas)
Processamento salario qHorasTrabalhadas *23,70
Sada Escreva (O salrio que uma pessoa receber por ms : = , salario)

4. estudo: escrever os comandos de interface para o usurio.
10
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados

Nome
Variveis
Entrada Escreval (Digite a quantidade de horas trabalhadas)
Leia (qHorasTrabalhadas)
Processamento salario qHorasTrabalhadas *23,70
Sada Escreval (O salrio que uma pessoa receber por ms : = , salario)

5. estudo: definir os tipos de dados para as variveis utilizadas.

Nome
Variveis horas, salario: real
Entrada Escreval (Digite a quantidade de horas trabalhadas)
Leia (qHorasTrabalhadas)
Processamento salario qHorasTrabalhadas *23,70
Sada Escreval (O salrio que uma pessoa receber por ms : = , salario)

6. estudo: nomear o algoritmo.

Nome Exerccio02
Variveis horas, salario: real
Entrada Escreval (Digite a quantidade de horas trabalhadas)
Leia (qHorasTrabalhadas)
Processamento salario qHorasTrabalhadas *23,70
Sada Escreval (O salrio que uma pessoa receber por ms : = , salario)


O algoritmo final deve ser:

Exerccio02
Variveis
horas, salario: real
Incio
Escreval (Digite a quantidade de horas trabalhadas)
Leia (qHorasTrabalhadas)
salario qHorasTrabalhadas *23,70
Escreval (O salrio que uma pessoa receber por ms : = , salario)
FimAlgoritmo


O teste de mesa

Vamos ao teste de mesa.
Supondo que o funcionrio trabalhou somente 10 horas, ento:

Algoritmo Memria Tela
qHorasTrabalhadas salario
11
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
1. Escreval (Digite a quantidade de
horas trabalhadas)

Digite a quantidade de horas
trabalhadas
2. Leia (qHorasTrabalhadas) 10 10
3. salario qHorasTrabalhadas
*23,70
237,00
4. Escreval (O salrio que uma
pessoa receber por ms : = ,
salario)

O salrio que uma pessoa receber
por ms : = 237



c) Problemas que envolvem porcentagem

Problemas que envolvem porcentagem so muito comuns em aplicaes de Sistemas de
Informao. Isso porque a representao de um dado ou informao, no somente em
valores absolutos, mas tambm em valores relativos, como em porcentagem, podem
ajudar os tomadores de deciso a compreender melhor resultados de operaes, por
exemplo.

Por isso escrevi um material com uma breve reviso sobre porcentagem e disponibilizei
no Moodle. Tire um tempinho para estud-la.

Vamos ao exerccio:

Uma loja oferece 15% de desconto para pagamento a vista em qualquer dos produtos
vendidos. Escreva um algoritmo que leia o valor do produto, calcule e mostre o valor
final do produto com o desconto de 15%.

Vamos executar os passos que eu sugeri para o desenvolvimento do algoritmo:

1. estudo: separao entre entrada, processamento e sada.

Nome
Variveis
Entrada Ler o valor do produto
Processamento Calcular o valor final do produto com o desconto de 15%
Sada Mostrar o valor final do produto com o desconto de 15%

2. estudo: separao dos comandos, um por linha.

Nome
Variveis
Entrada Ler o valor do produto
Processamento Calcular o valor final do produto com o desconto de 15%
Pergunta: como realizar esse clculo?
1) Clculo do desconto
% significa dividido por 100.
15% de x = 15 * x/100
Outra forma de clculo seria x *0,15.
Considerando que x = valorDoProduto, ento:
desconto valorDoProduto * 0,15
12
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados

2) Clculo do valor final
valorFinal valorDoProduto - desconto

Sada Escrever o salrio que uma pessoa receber por ms


3. estudo: escrever os comandos em Portugol.

Nome
Variveis
Entrada Leia (valorDoProduto)
Processamento desconto valorDoProduto * 0,15
valorFinal valorDoProduto - desconto
Sada Escreva (valorFinal)

4. estudo: escrever os comandos de interface para o usurio.

Nome
Variveis
Entrada Escreval (Digite o valor do produto)
Leia (valorDoProduto)
Processamento desconto valorDoProduto * 0,15
valorFinal valorDoProduto - desconto
Sada Escreval (O valor final do produto com o desconto de 15% : = ,
valorFinal)

5. estudo: definir os tipos de dados para as variveis utilizadas.

Nome
Variveis valorDoProduto, valorFinal: real
Entrada Escreval (Digite o valor do produto)
Leia (valorDoProduto)
Processamento desconto valorDoProduto * 0,15
valorFinal valorDoProduto - desconto
Sada Escreval (O valor final do produto com o desconto de 15% : = ,
valorFinal)

6. estudo: nomear o algoritmo.

Nome Exerccio03
Variveis valorDoProduto, valorFinal: real
Entrada Escreval (Digite o valor do produto)
Leia (valorDoProduto)
Processamento desconto valorDoProduto * 0,15
valorFinal valorDoProduto - desconto
Sada Escreval (O valor final do produto com o desconto de 15% : = ,
13
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
valorFinal)

14
Algoritmos - Estrutura Sequencial: Elaborando Algoritmos
Prof. Waine Teixeira Jnior

2014/1 Todos os direitos reservados
O algoritmo final deve ser:

Exerccio03
Variveis
valorDoProduto, valorFinal: real
Incio
Escreval (Digite o valor do produto)
Leia (valorDoProduto)
desconto valorDoProduto * 0,15
valorFinal valorDoProduto - desconto
Escreval (O valor final do produto com o desconto de 15% : = , valorFinal)
FimAlgoritmo


O teste de mesa

Vamos ao teste de mesa.
Supondo que o valor do produto seja R$100,00, ento:

Algoritmo Memria Tela
valorDoProduto desconto valorFinal
1. Escreval (Digite o valor do
produto)

(Digite o valor do produto)
2. Leia (valorDoProduto) 100 100
3. desconto valorDoProduto *
0,15
15
4. valorFinal valorDoProduto
* 0,15
85
5. Escreval (O valor final do
produto com o desconto de 15%
: = , valorFinal)
O valor final do produto com o
desconto de 15% : = 85


Conclumos aqui nossa pequena introduo sobre a elaborao de algoritmos.
Preparei uma lista de exerccios resolvidos para ajud-lo nos estudos. A lista est
disponvel no ambiente Moodle.

Nesses primeiros passos, listas resolvidas, procure utilizar os passos que eu segui aqui,
at que a soluo esteja mais tranquila, mais fcil.

Procure tambm realizar o teste de mesa nos exerccios, para melhorar o seu raciocnio.

Depois de elaborado o teste de mesa, utilize ento o VISUALG.

Siga devagar, estudando, construindo seu conhecimento gradativamente.


Bons estudos!
Prof. Waine