Buscar

Programação Estruturada

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
PROGRAMAÇÃO ESTRUTURADA
Em geral, nos editais cobram-se a programação estruturada orientada a objetivos, além 
da programação funcional. O conteúdo dessa aula será focada na programação estruturada.
Bibliografia
O livro abaixo, escrito por brasileiros, muito utilizado em cursos acadêmicos, versa das 
estruturas básicas e do uso de três linguagens: algoritmos, linguagem mais próxima do nosso 
dia a dia; Java; C e C++; e Pascal.
Computação
Desde o início da existência do homem ele tem procurado criar máquinas que o auxiliem 
em seus trabalhos, diminuindo esforços e economizando tempo.
No início, as máquinas eram produzidas para atividades físicas, iniciando-se, posterior-
mente, máquinas com atividades intelectual, tais como o desenvolvimento de calculadoras 
mais remotas até computadores.
2 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
O computador é capaz de auxiliar em qualquer coisa que lhe seja solicitada, é consciente, 
trabalha e possui muita energia, mas não tem iniciativa, nenhuma independência, não é cria-
tivo nem inteligente, e por isso precisa receber instruções nos mínimos detalhes (algoritmos).
Quanto ao “não é criativo nem inteligente”, é preciso tomar cuidado com a evolução das 
máquinas e sistemas. Atualmente, com o machine learning as máquinas possuem uma capa-
cidade latente de aprendizado e simulação (aproximação) de inteligência. 
Para o computador realizar uma tarefa é preciso que haja uma linguagem que o oriente 
a executar alguma atividade.
Processamento de Dados
O processamento é onde o computador entra. Exemplo: operação matemática com ope-
ração de dados: 1 + 1 (operandos); resultado de 1 + 1 é o processamento dos dados, dando 
uma saída como resultado a operação, a saber, 2.
Algoritmos
O computador é composto por duas partes:
• Hardware: Partes físicas;
• Software: Programas.
Exemplo para memorizar: o hardware é o que se “chuta” – parte física; e o software é o 
que se “xinga” quando se está com raiva – parte abstrata.
Quando queremos escrever um software para realizar determinado tipo de processa-
mento de dados, devemos escrever um programa e, para que o computador compreenda e 
execute esse programa, devemos escrevê-lo usando uma linguagem que tanto o computador 
quanto o desenvolvedor de software entendam (linguagem de programação).
Nos computadores mais remotos, antes da década de 50, o código era escrito em lingua-
gem de máquina, bem próximo ao que os processadores compreendiam. Obviamente que 
os softwares ficam mais complexos, e com o passar das décadas os códigos começaram a 
5m
3 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
ser escritos em linguagens de alto nível. Diante dessa linguagem de alto nível, o computador 
traduz em uma linguagem em que o usuário melhor possa compreender, algo chamado de 
compilação.
As etapas para o desenvolvimento de um programa são:
1. Análise: estuda o enunciado do problema para definir os dados de entrada, o proces-
samento e os dados de saída. Ou seja, antes do processo de programação, serão realizadas 
análises do problema, para que assim se possa checar os dados de entrada e saída. 
2. Algoritmo: utiliza ferramentas do tipo narrativa, fluxograma ou português estruturado 
para descrever o problema com suas soluções.
3. Codificação: o algoritmo é transformado em códigos de linguagem de programação 
escolhida para se trabalhar. Exemplo: Java, C, Python. Os algoritmos podem ser traduzi-
dos para qualquer uma dessas linguagens, cada qual com suas particularidades e objetivos 
específicos.
• Um programa, que é o resultado final, é a codificação de um algoritmo (nível mais alto) 
em uma determinada linguagem de programação.
• Um algoritmo é um conjunto de passos finitos que devem ser seguidos para que certo 
objetivo seja alcançado.
Exemplo: algoritmo para remover a lâmpada queimada:
1. Posicione a escada debaixo da lâmpada;
2. Suba na escada até que a lâmpada possa ser alcançada;
3. Gire a lâmpada no sentido anti-horário, até que ela se solte;
4. Retire a lâmpada.
Para o ser humano, a leitura desse algoritmo é de fácil compreensão. Contudo, para o 
computador, esse algoritmo está bastante abstrato, sendo de difícil compreensão.
Programação Estruturada
Programação estruturada é um paradigma de programação que visa melhorar a clareza, 
qualidade e tempo de desenvolvimento de um programa de computador, fazendo uso exten-
sivo das estruturas de controle de seleção (SE / ENTÃO / SENÃO / CASO) e repetição (PARA 
/ REPITA / ENQUANTO), estruturas de blocos e sub-rotinas.
10m
4 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
A programação estruturada surge devido à crise de software (anos 50). Ou seja, perce-
beu-se que, quando se escrevia em código muito próximo ao que a máquina compreendia 
ou sem tanta orientação, o código era de difícil manutenção. Neste interim, a programação 
orientada surgir como uma série de orientação para desenvolver códigos de fácil manuten-
ção e com poucos problemas. 
O princípio básico de programação estruturada é que um programa é composto por 
blocos elementares de código que se interligam através de três mecanismos básicos, que 
são sequência, seleção e iteração. Cada uma destas construções tem um ponto de início 
(o topo do bloco) e um ponto de término (o fim do bloco) de execução.
• Sequência: implementa os passos de processamento necessários para descrever 
qualquer programa. O programa é executa em uma certa ordem lógica que o compu-
tador executa.
• Seleção: especifica a possibilidade de selecionar o fluxo de execução do processa-
mento baseado em ocorrências lógicas. Trata-se da possibilidade de haver uma ava-
liação de uma expressão lógica, observando um resultado final.
Exemplo: “Se chover, torna-se preciso levar o guarda-chuva. Se não chover, não se pre-
cisa levar o guarda-chuva”. Note que, diante das premissas, há orientações com base um 
condições lógicas.
• Iteração: permite a execução repetitiva de segmentos do programa. Existe uma quan-
tidade de passos a serem aplicados com determinada lógica. Assim, uma série de 
comandos serão executados de forma repetida, de acordo com determinada condição.
Em provas, as bancas podem cobrar questões muito conceituais. Daí a importância de 
estudar os conceitos acima.
GO TO
Em 1968, Edsger W. Dijkstra, através do artigo "A Case against the GO TO Statement" 
critica o uso excessivo do comando de desvio incondicional GOTO nos programas desenvol-
vidos na época.
15m
5 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Em geral, a cláusula GO TO não é vista como uma boa prática de programação.
A programação estruturada pressupõe a eliminação ou minimização do uso de GO TO.
Nessa época, a programação utilizava bastante o GOTO. Exemplo: mesmo com uma 
sequência de instruções era possível retornar para outra orientação de forma arbitrária: “se 
ocorrer o evento X, volte ao passo 2”.
Essa ação tornava o código de difícil manutenção. Diante disso, a programação estrutura 
surge para dirimir esses problemas, por meio de estruturas para a utilização do GOTO. 
Variáveis
• Um programa, recebe dados que precisam ser armazenados no computador para que 
possam ser utilizados no processamento;
• Este armazenamento é feito na memória;
• Quando uma operação aritmética recebe dois operandos, cada operando é armaze-
nado em um endereço de memóriadiferente, para ser utilizado no cálculo;
• Como cada endereço de memória pode armazenar dados várias vezes, ou seja, seu 
conteúdo pode variar, chamamos estas posições de variáveis.
Exemplo comparativo: em equações matemáticas, o “x” costuma ser tido como 
uma variável.
Identificadores
Representam os nomes das variáveis, dos programas, constantes, rotinas, entre outros. 
Exemplo: f(x) é o mesmo que função, na matemática.
Regras básicas para formação de identificadores:
• Caracteres permitidos: números, letras maiúsculas ou minúsculas e o caractere 
sublinhado "_";
• O primeiro caractere dever ser sempre uma letra ou o caractere sublinhado;
• Não são permitidos caracteres em branco e caracteres especiais;
• Não é possível utilizar palavras reservadas nos identificadores, ou seja, palavras que 
pertencem à linguagem de programação utilizada linguagem de programação utilizada.
• Não é possível utilizar um comando. Exemplo: Comando “Se”.
20m
6 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Tipos de Dados
Os tipos de dados determinam quantos de memória uma determinada variável ocupará e 
o tipo de conteúdo que será armazenado. Os mais comuns são: 
• Numérico: Representam números inteiros e decimais;
• Lógico: Representam dados booleanos (verdadeiro/falso);
• Literal ou Caractere: Representam cadeias de caracteres (strings).
Os tipos de dados variam muito de linguagem para linguagem, visto que algumas supor-
tam números complexos, inteiros, flutuantes, os tipos numéricos, os tipos booleanos e carac-
teres. De acordo com o tipo de dado diferente, um tanto mais de espaço será utilizado.
Estrutura Sequencial
Estrutura básica para algoritmos em pseudocódigo (ou portugol):
ALGORITMO
 DECLARE
 Bloco de comandos
FIM_ALGORITMO
Acima, o algoritmo começa com “ALGORITMO” e termina do “FIM_ALGORITMO”. Entre 
estes há o bloco de código.
Declaração de Variáveis
Variáveis são declaradas após a palavra DECLARE, e os tipos mais utilizados são NUMÉ-
RICO LITERAL ou LÓGICO:
DECLARE
X – NUMÉRICO
Y, Z LITERAL
É importante atentar que, a depender da linguagem a se utilizar, algumas linguagens dife-
renciam maiúsculas de minúsculas.
25m
7 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Atribuição 
Utilizado para atribuir um valor ou operação à uma variável
Representado pelo símbolo "←":
X – ← 4
X – ← X + 2
Y ← "aula"
Em geral, é possível realizar operações com a próxima variável. Mas o resultado da ava-
liação será atribuído ao lado esquerdo da expressão: X + 2
Obs.: algumas linguagens utilizam comumente o sinal “=”.
30m
���������������������������������������������������������������������������������Este material foi elaborado pela equipe pedagógica do Gran Cursos Online, de acordo com a aula 
preparada e ministrada pelo professor Tiago Lage Payne de Pádua. 
A presente degravação tem como objetivo auxiliar no acompanhamento e na revisão do conteúdo 
ministrado na videoaula. Não recomendamos a substituição do estudo em vídeo pela leitura exclu-
siva deste material.
1 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
PROGRAMAÇÃO ESTRUTURADA II
Comandos de Entrada e Saída (E/S)
No processamento, observa-se a entrada de dados, o processamento e a saída de dados. 
Entrada e saída de informações são essenciais, pois sem elas o cálculo não poderá ser feito. 
O comando de entrada é utilizado para receber dados informados pelo usuário. É repre-
sentado pela palavra LEIA:
LEIA X
O comando de saída é utilizado para mostrar dados para o usuário na tela do monitor. 
Representado pela palavra ESCREVA:
ESCREVA Y
O “LEIA” será visto como o código de entrada e o “ESCREVA” será visto como o código 
de saída de dados.
Estrutura Condicional (seleção) 
Essa estrutura é conhecida também como estrutura de decisão ou de seleção, ela se 
caracteriza pela execução de determinados códigos de programação dependendo da vera-
cidade de uma condição.
Exemplo: se chover, leve o guarda-chuva. O comando “leve o guarda-chuva” está subor-
dinado a uma condição. Já no caso do exemplo “se chover, leve o guarda-chuva. Se não 
chover, leve o filtro solar”, observa-se um caso positivo e o comando do “SE + NÃO”. 
Estrutura Condicional Simples
SE – condição 
ENTÃO – comando 
O “SE” é um booleano, sendo avaliado como TRUE ou FALSE. 
2 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
O comando só será executado se a condição for verdadeira. Uma condição é uma com-
paração que possui dois valores possíveis: verdadeiro ou falso. 
SE condição
ENTÃO INÍCIO
 comando1
 comando2
 comando3
FIM
Se a condição for verdadeira, serão executados o comando1, comando2 e comando3.
Exemplo: se chover, leve o guarda-chuva e a capa de chuva. O bloco começa com 
INÍCIO e termina com FIM (a depender da literatura). Aqui, observa-se uma condição e diver-
sos blocos, sendo executados se a condição for verdadeira. 
Estrutura Condicional Composta
SE condição
ENTÃO comando1
SENÃO comando2
Na estrutura composta, além do ENTÃO há o SENÃO. Exemplo: “Se chover, leve o 
guarda-chuva, senão leve a capa de chuva.”
Se a condição for verdadeira, será executado o comando1, caso contrário, será execu-
tado o comando2.
SE condição
ENTÃO INÍCIO
 comando1
 comando2
SENÃO INÍCIO
 comando3
 comando4
FIM
5m
3 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
Se a condição for verdadeira, serão executados o comando1 e o comando2, caso con-
trário, serão executados o comando3 e o comando4.
Da mesma forma que na estrutura condicional simples há blocos associados, na estru-
tura composta também se tem.
Exemplo
ALGORITMO
DECLARE N1, N2, M NUMÉRICO
ESCREVA "Digite as duas notas"
LEIA N1, N2
M ← (N1 + N2)/2
ESCREVA "Média = ", M
SE (M >= 7)
ENTÃO ESCREVA "Aprovado"
SENÃO ESCREVA "Reprovado"
FIM_ALGORITMO
Obs.: � no exemplo acima se observa a declaração da variável N1, N2 e M NUMÉRICO. O 
comando ESCREVA apresentará uma tela no computador virtual para quem opera o 
programa.
O comando “Digite as duas notas” buscará calcular a média aritmética. Após o resultado 
da média aritmética, nota-se uma condicional, resultando no “Aprovado”, se verdadeiro, ou 
“Reprovado”, se falso. 
Aninhamento de estruturas de decisão
Todos os blocos podem ser aninhados.
SE condição1
ENTÃO comando1
SENÃO INÍCIO
 SE condição 2
 ENTÃO comando2
 SENÃO comando3
FIM
10m
4 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
Acima, a estrutura de decisão do SENÃO INÍCIO está aninhada com a primeira estrutura 
de decisão, ocorrendo apenas no caso do SENÃO.
Estruturas de decisão podem ser aninhadas com o objetivo que sejam verificadas várias 
alternativas possíveis.
Qualquer outro tipo de bloco pode ser aninhado. E quanto mais blocos, um tanto mais de 
aninhamento haverá, provocando uma maior complexidade.
SE IDADE > 10
ENTÃO ESCREVA "IDADE ACIMA DE 10 ANOS"
SENÃO INÍCIO
 SE IDADE < 10
 ENTÃO ESCREVA "IDADE MENOR DE 10 ANOS"
 SENÃO ESCREVA "TEM EXATAMENTE 10 ANOS"
FIM
Havendo muitas estruturas de decisões distintas e aninhadas, nota-se uma grande difi-
culdade quanto ao código. Em vista disso, existe uma outra estrutura, a chamada “Estrutura 
de seleção múltipla ESCOLHA-CASO”.
Estrutura de seleção múltipla ESCOLHA-CASO 
A estrutura ESCOLHA-CASO (em inglês SWITCH-CASE), é uma alternativa quando se 
tem várias estruturas de decisão aninhadas. Istoé, quando outras verificações são feitas 
caso a anterior tenha falhado. 
A proposta da estrutura ESCOLHA-CASO é permitir ir direto no bloco de código dese-
jado, dependendo do valor de uma variável de verificação. 
ESCOLHA variável-de-verificação
CASO valor1 FAÇA
 comando1
 comando2
CASO valor2 FAÇA
 comando3
 comando4
...
FIM
5 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
No exemplo acima, caso o valor “CASO valor1 FAÇA” seja executado, o resultado será 
“comando1” e “comando2”, e assim sucessivamente. 
É possível inserir acima quantos blocos forem precisos, alocando-os um abaixo do outro. 
Sobre essa informação, observe o exemplo abaixo:
ALGORITMO
DECLARE NUMERO1, NUMERO2, RESULTADO NUMÉRICO
OPERACAO : CARACTERE
ESCREVA "DIGITE O PRIMEIRO NÚMERO: "
LEIA NUMERO1
ESCREVA "DIGITE A OPERAÇÃO: "
LEIA OPERACAO
ESCREVA "DIGITE O SEGUNDO NÚMERO: "
LEIA NUMERO2
SE OPERACAO = "+" ENTAO RESULTADO ← NUMERO1 + NUMERO2
SENAO INICIO
 SE OPERACAO = "-" ENTAO RESULTADO ← NUMERO1 - NUMERO2
 SENAO INICIO
 SE OPERACAO = "*" ENTAO RESULTADO ← NUMERO1 * NUMERO2
 SENAO INICIO
 SE OPERACAO = "/" ENTAO RESULTADO ← NUMERO1 / NUMERO2
 FIM
 FIM
FIM
ESCREVA "RESULTADO: ", RESULTADO
FIM_ALGORITMO
A depender da operação matemática que o usuário digitou, verificar-se-á o resultado no 
código. Diante disso, é possível realizar vários aninhamentos de “SE”, mas o código ficará de 
difícil leitura e manutenção. 
15m
6 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Observe abaixo a mesma operação do exemplo acima com o ESCOLHA-CASO:
ALGORITMO
DECLARE NUMERO1, NUMERO2, RESULTADO NUMÉRICO
OPERACAO : CARACTERE
ESCREVA "DIGITE O PRIMEIRO NÚMERO: "
LEIA NUMERO1
ESCREVA "DIGITE A OPERAÇÃO: "
LEIA OPERACAO
ESCREVA "DIGITE O SEGUNDO NÚMERO: "
LEIA NUMERO2
ESCOLHA OPERACAO
 CASO "+" FAÇA
 RESULTADO ← NUMERO1 + NUMERO2
 CASO "-" FAÇA
 RESULTADO ← NUMERO1 - NUMERO2
 CASO "*" FAÇA
 RESULTADO ← NUMERO1 * NUMERO2
 CASO "/" FAÇA
 RESULTADO ← NUMERO1 / NUMERO2
FIM
ESCREVA "RESULTADO: ", RESULTADO
FIM_ALGORITMO
Caso não tratado na estrutura (OUTROCASO)
Existe uma opção a mais nessa estrutura, justamente para tratar quando o valor da vari-
ável não é equivalente a nenhum valor informado como opção nos CASOs, ou seja, é um 
"OUTROCASO".
ESCOLHA operacao
 CASO "+" FAÇA
 resultado ← numero1 + numero2
 CASO "-" FAÇA
7 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
 resultado ← numero1 - numero2
 CASO "*" FAÇA
 resultado ← numero1 * numero2
 CASO "/" FAÇA
 resultado ← numero1 / numero2
 OUTROCASO
 ESCREVA "Operação inválida"
FIM
O programa está se preparando para receber um valor não esperado. Assim, o 
OUTRO-CASO envia uma mensagem para o usuário avisando-o que a mensagem não foi 
compreendida.
DIRETO DO CONCURSO
1. (CESPE/EBC/ANALISTA/ADMINISTRAÇÃO DE SISTEMAS/2011) Em programação 
estruturada, por meio do mecanismo de seleção, é possível testar determinada condi-
ção e estabelecer ações a serem realizadas.
COMENTÁRIO
Mecanismo de seleção é o mesmo que o “SE”.
Estruturas de Repetição 
As estruturas de repetição são utilizadas nos casos onde determinados trechos dos algo-
ritmos precisarão ser executados mais de uma vez e, para que não seja necessário reescre-
ver trechos idênticos que aumentariam consideravelmente o tamanho do programa, utiliza-se 
as estruturas de repetição.
No caso da seleção, havia um código em que se buscava a sua execução ou não a partir 
de determinada condição por meio de uma seleção booleana. Já no caso de repetição, os 
blocos de códigos se repetem até que uma condição seja atingida.
20m
8 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Estrutura de Repetição PARA 
Esta estrutura de repetição é utilizada quando se sabe previamente o número de vezes 
em que um trecho do algoritmo deve ser repetido:
PARA I ← valor_inicial ATÉ valor_final FAÇA 
comando1 
O comando1 será executado utilizando a variável I como controle, cujo conteúdo vai 
variar do valor inicial até o valor final, de 1 em 1, incrementando automaticamente.
A estrutura PARA é utilizada quando se sabe previamente quantas vezes se busca repetir 
o código. 
Ela pode também ser utilizada com blocos, podendo ainda ter um número arbitrário 
de comandos:
PARA I ← valor_inicial ATÉ valor_final FAÇA 
INÍCIO
 comando1 
 comando2
FIM
O comando1 e o comando2 serão executados utilizando a variável I como controle, cujo 
conteúdo vai variar do valor inicial até o valor final, de 1 em 1, incrementando automatica-
mente. Exemplo:
ALGORITMO
DECLARE J NUMÉRICO
PARA J ← 1 ATE 10 FAÇA
INÍCIO
 ESCREVA J
FIM
FIM_ALGORITMO
9 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Acima, o ESCREVA J será repetido 10 vezes. Neste caso, o valor de J será atualizado até 
chegar no valor final determinado. 
Exemplo de caso mais elaborado para calcular um número fatorial:
ALGORITMO "FATORIALCOMPARA"
DECLARE NUMERO, FATORIAL, CONTADOR NUMÉRICO
ESCREVA "DIGITE O NÚMERO PARA CALCULAR O FATORIAL: "
LEIA NUMERO
FATORIAL ← 1
PARA CONTADOR DE 1 ATE NUMERO FACA
INICIO
 FATORIAL ← FATORIAL * CONTADOR
FIM
ESCREVA "O FATORIAL DE ", NUMERO, " É : ", FATORIAL
FIM_ALGORITMO
Acima, sabia-se previamente o número de vezes em que o passo seria repetido para 
fazer o cálculo do fatorial.
Estrutura de Repetição ENQUANTO 
Essa estrutura de repetição é utilizada quando não se sabe o número de vezes em que 
um trecho do algoritmo deve ser repetido, embora também possa ser utilizada quando se 
sabe esse número. 
ENQUANTO condição FACA comando1.
Enquanto a condição for verdadeira, o comando1 será executado.
ENQUANTO condição FACA
INÍCIO
 comando1
 comando2
FIM
25m
10 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Enquanto a condição for verdadeira, o comando1 e o comando2 serão executados.
O “ENQUANTO” pode ser também estruturado em blocos. É importante que o comando1 
e comando2 façam algo para alterar a condição, a fim de não entrar em looping infinito.
ALGORITMO
DECLARE J NUMÉRICO
J ← 1
ENQUANTO J <= 10 FAÇA
INICIO
 ESCREVA J
 J ← J + 1
FIM
FIM_ALGORITMO
ALGORITMO "FATORIALCOMENQUANTO"
DECLARE NUMERO, FATORIAL, CONTADOR NUMÉRICO
ESCREVA "DIGITE O NÚMERO PARA CALCULAR O FATORIAL: "
LEIA NUMERO
FATORIAL ← 1
CONTADOR ← 1
ENQUANTO CONTADOR <= NUMERO FACA
INICIO
 FATORIAL ← FATORIAL * CONTADOR
 CONTADOR ← CONTADOR + 1
FIM
ESCREVA "O FATORIAL DE ", NUMERO, " É : ", FATORIAL
FIM_ALGORITMO
Obs.: � o encremento é muito importante para que a condição “ENQUANTO CONTADOR <= 
NUMERO FACA” seja alterada, evitando um looping infinito.
30m
11 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Estrutura de Repetição REPITA 
A diferença entre a estrutura ENQUANTO e a estrutura REPITA é que na estrutura REPITA 
os comandos serão repetidos pelo menos uma vez, já que a condição se encontra no final.
REPITA
 comando1
 comando2
ATÉ condição
Enquanto a condição for falsa, o comando1 e o comando2 serão executados. No 
momento em que a condição for verdadeira, o código parará.
ALGORITMO
DECLARE J NUMÉRICO
J ← 1
REPITA
 ESCREVA J
 J ← J + 1
ATÉ J > 10
FIM_ALGORITMO
Obs.: � quando J passar o valor de 10, o código parará.
ALGORITMO"SOMAATEVALORIGUALA0"
DECLARE VALORDIGITADO, SOMA NUMÉRICO
SOMA ← 0
REPITA
 ESCREVA "DIGITE UM VALOR PARA A SOMA: "
 LEIA VALORDIGITADO
 SOMA ← SOMA + VALORDIGITADO
 ESCREVAL "TOTAL: ", SOMA
ATE VALORDIGITADO = 0
FIM_ALGORITMO
12 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada II
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Acima, o bloco será executado até que o usuário digite 0. 
GABARITO
 1. C
���������������������������������������������������������������������������������Este material foi elaborado pela equipe pedagógica do Gran Cursos Online, de acordo com a aula 
preparada e ministrada pelo professor Tiago Lage Payne de Pádua. 
A presente degravação tem como objetivo auxiliar no acompanhamento e na revisão do conteúdo 
ministrado na videoaula. Não recomendamos a substituição do estudo em vídeo pela leitura exclu-
siva deste material.
1 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada III
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
PROGRAMAÇÃO ESTRUTURADA III
Vetor
Um vetor é uma variável composta, homogênea e unidimensional.
É considerada composta porque possui vários valores dentro dela. Ao declarar valores de 
X e Y como variáveis, em vetores é possível guardar diversos valores.
É dita homogênea porque todos os valores devem ser do mesmo tipo. Assim, em vetores 
de números, somente poderá haver números – a depender da linguagem de programação 
(ex.: Java – vetores homogêneos. Já no Java Script, há vetores heterogêneos).
É unidimensional porque somente há uma dimensão (um comprimento) – ex.: fila de valo-
res. Cada valor terá um índice, que é a sua posição em uma fila de variáveis.
É formada por uma sequência de variáveis, todas do mesmo tipo de dados, com o mesmo 
identificador (mesmo nome) e alocadas sequencialmente na memória.
Uma vez que as variáveis que compõem o vetor têm o mesmo nome, o que distingue 
cada uma delas é um índice, que referencia sua localização dentro da estrutura. Ex.: em uma 
fila de pessoas, para interagir com a terceira pessoa da fila, basta contar quantas pessoas 
há para se chegar à terceira.
Vetor: Declaração
DECLARE nome[tamanho] tipo
nome: nome da variável do tipo vetor.
tamanho: é a quantidade de variáveis que vão compor o vetor.
tipo: é o tipo básico de dados que poderá ser armazenado na sequência de variáveis que 
formam o vetor.
2 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada III
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Vetor: Exemplos 
DECLARE X[5] NUMÉRICO
X[1] ← 45
X[4] ← 0
ESCREVA X[4]
Em uma estrutura com vários valores do mesmo tipo, ao invés de declarar diversas vari-
áveis, basta escrever um vetor e entre colchetes o tamanho do vetor.
Carregando um Vetor
PARA I ← 1 ATÉ 5 FAÇA
INÍCIO
 ESCREVA "DIGITE O ", I, " NÚMERO"
 LEIA X[I]
FIM
É possível realizar uma estrutura de repetição PARA para que ela alimente o vetor com 
valores digitados pelo usuário.
Matriz
Uma matriz é uma variável composta homogênea bidimensional formada por uma sequ-
ência de variáveis, todas do mesmo tipo, com o mesmo identificador (mesmo nome) e aloca-
das sequencialmente na memória.
Uma vez que as variáveis têm o mesmo nome, o que as distingue são índices que refe-
renciam sua localização dentro da estrutura. Uma variável do tipo matriz é composta por 
linhas e colunas.
Matriz: Declaração
DECLARE nome[linha, coluna] tipo
nome: nome da variável do tipo matriz.
linha: é a quantidade de linhas que vão compor a matriz.
coluna: é a quantidade de colunas que vão compor a matriz.
5m
3 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada III
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
tipo: é o tipo básico de dados que poderá ser armazenado na sequência de variáveis que 
formam a matriz.
Matriz: Exemplos
DECLARE X[3,5] NUMÉRICO
X[1, 2] ← 45
X[2, 5] ← 0
ESCREVA X[1, 2]
Obviamente que a utilização de vetor ou matriz dependerá do caso e da utilidade quanto 
ao dado. Exemplo: em um programa que multiplica uma matriz por outra matriz, o uso da 
matriz é essencial. 
Carregando uma Matriz
PARA I ← 1 ATÉ 3 FAÇA
INÍCIO
 PARA J ← 1 ATÉ 5 FAÇA
 INÍCIO
 LEIA X[I, J]
 FIM
Obs.: acima, nota-se um looping dentro do outro, podendo popular a matriz.
Registros
Registros são estruturas que podem agregar diferentes informações. Dessa maneira, 
podem ser feitas diferentes combinações, gerando novos tipos de dados.
O registro é o primeiro movimento no sentido de criar tipos de dados que a linguagem de 
programação não forneça.
Um registro é uma coleção de campos, em que cada campo pode ser de um tipo de dado 
diferente. Por isso, os registros são conhecidos como variáveis compostas heterogêneas.
10m
4 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada III
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Registros: Declaração
DECLARE nome_da_variável_registro REGISTRO (nome_campo tipo_do_campo...)
Registros: Exemplo
DECLARE conta REGISTRO (num, saldo NUMÉRICO, nome LITERAL)
Acima, o registro declarado é denominado conta e possui três campos, os campos num 
e saldo são campos numéricos e o campo nome é do tipo literal.
Quando o programa se torna mais elaborado, há uma necessidade de criação de tipos de 
dados (muitas vezes customizados), e o registro é a forma mais básica para tanto. Exemplo: 
registro de um aluno com nome, idade, data de nascimento, CPF.
É importante destacar que a implementação do registro variará de uma linguagem para 
outra. Mas, de forma geral, segue-se um padrão. 
DECLARE conta[3] REGISTRO (num, saldo NUMÉRICO, nome LITERAL)
O registro declarado é um vetor denominado conta e possui três campos, os campos 
num e saldo são campos numéricos e o campo nome é do tipo literal.
É possível combinar tipos de dados homogêneos com o tipo de dado registro para con-
seguir mais dados. Exemplo: em uma escola com vários alunos, é possível ter um vetor de 
alunos, e cada aluno possui um registro com suas propriedades.
Arquivo
Um arquivo é formado por uma coleção de registros, cada registro é composto por campos 
e cada campo possui suas características específicas.
Na computação, o arquivo é em geral utilizado para manter a persistência de dados. 
Exemplo: feito um processamos, gerou-se um grande número de dados de respostas. É pos-
sível pegar esses dados e estruturá-los em registros, e persistir os registros no computador, 
de forma que possam ser lidos depois (eventualmente) por uma outra execução de programa.
15m
5 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada III
DESENVOLVIMENTO WEB
DIRETO DO CONCURSO
1. (IDECAN/INMETRO/ASSISTENTE EXECUTIVO EM METROLOGIA E QUALDIDADE/
INFORMÁTICA/2015) Toda linguagem de programação possui instruções que contro-
lam o fluxo da execução de um programa. Essas estruturas podem ser de decisão, 
decisão encadeada, repetição, repetição encadeada, cada uma com seus respectivos 
comandos. Observe o fluxograma.
Assinale, a seguir, o comando representado nesse fluxograma.
a. SE... ENTÃO.
b. SELECIONE... CASO.
c. ENQUANTO... FAÇA.
d. REPITA... ATÉ QUE.
e. SE... ENTÃO... SENÃO.
COMENTÁRIO
A imagem da questão apresenta uma condição booleana.
O SE está representado pela condição. O ENTÃO está representado pelo fluxo de Verda-
deiro, enquanto o SENÃO está representando quando a resposta for Falsa. 
20m
6 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada III
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Sub-Rotinas (Programação Modularizada)
Sub-rotinas são blocos de instruções que realizam tarefas específicas.
De fato, ao se escreverum código de programa que se alonga bastante, notam-se linhas 
de códigos repetidos ou muitos trechos que podem ser utilizados em outros programas a 
serem desenvolvidos. Para reaproveitar essas linhas de códigos, utilizam-se sub-rotinas.
O código de uma sub-rotina é carregado uma vez e pode ser executado quantas vezes 
forem necessárias. Assim, os programas tendem a ficar menores e mais organizados, uma 
vez que o problema pode ser dividido em tarefas menores.
Ex.: o programador escreve um código de calcule fatorial. Em outro programa, o progra-
mador precisará de um código que calcule o fatorial. Neste caso, o programador separará 
o código em blocos, mesmo que para utilizar em seu próprio programa, para evitar cópias 
que possam gerar erros. Esses blocos escritos são guardados, atribuídos a um identificador, 
sendo eles acionados quantas vezes forem necessárias.
Em geral, um programa é executado linearmente, uma linha após a outra, até o fim.
Entretanto, quando são utilizadas sub-rotinas, é possível a realização de desvios na execu-
ção natural dos programas. Assim, um programa é executado linearmente até a chamada de 
uma sub-rotina.
O programa que chama uma sub-rotina ("chamador") é temporariamente suspenso e 
o controle é passado para a rotina, que é executada. Ao terminar a sub-rotina, o controle 
retorna para o programa que realizou a chamada ("chamador").
Ou seja, são os blocos separados da rotina principal e nomeados. Na medida em que se 
executa os programas principais, os blocos serão chamados, passando o controle para os 
blocos até terminar a execução. Exemplo: um programa que calcula o fatorial fará a leitura do 
valor passado pelo usuário, chamando eventualmente a sub-rotina que calcula o fatorial, cal-
culando e devolvendo o valor, e, em seguida, o controle volta para o seu programa principal. 
25m
7 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada III
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Tipos de Sub-rotinas
• Funções (functions);
• Procedimentos (procedures).
Funções
É comum encontrar, nas linguagens de programação, várias funções embutidas, por 
exemplo, sin (seno), cos (cosseno), abs (valor absoluto), sqrt (raiz quadrada).
Funções embutidas podem ser utilizadas diretamente em expressões. Por exemplo, o 
comando: hipotenusa ← sqrt(cateto1^2 + cateto2^2).
Na maioria das linguagens de programação, há a chamada biblioteca básica, que possui 
as funções matemáticas mais comuns, além de uma série de funções que se repetem em 
vários programas.
Essas funções são utilizadas em expressões como se fossem simplesmente variáveis 
comuns. E como variáveis comuns, as funções têm (ou retornam) um único valor.
É responsabilidade do programador fornecer os argumentos (ou parâmetros) necessá-
rios para a função efetuar seus cálculos.
Exemplo: hipotenusa ← sqrt(cateto1^2 + cateto2^2). Antes de a função ser passada para 
o sqrt (raiz quadrada), calcula-se o valor interno “(cateto1^2 + cateto2^2)”, enviando para o 
sqrt o valor já calculado. Todo esse bloco terá a mesma função como se fosse uma variável, 
sendo atribuída ao valor de hipotenusa.
A utilização de funções afeta o fluxo de controle em um programa.
Quando uma função é chamada, o programa que chama a função fica em estado de 
espera e o controle passa para as instruções que definem a função.
Após a execução da função com os parâmetros fornecidos, o controle retorna ao ponto 
de chamada da função, com o valor calculado pela função.
8 www.grancursosonline.com.br
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
Programação Estruturada III
DESENVOLVIMENTO WEB
A
N
O
TA
ÇÕ
ES
Exemplo de como se utiliza as funções embutidas e entregues pela linguagem de 
programação:
ALGORITMO
DECLARE X, Y, VALOR NUMÉRICO
X – ← -10
Y ← 16
VALOR ← ABS(X) + SQRT(Y)
ESCREVA VALOR
FIM
GABARITO
 1. e
���������������������������������������������������������������������������������Este material foi elaborado pela equipe pedagógica do Gran Cursos Online, de acordo com a aula 
preparada e ministrada pelo professor Tiago Lage Payne de Pádua. 
A presente degravação tem como objetivo auxiliar no acompanhamento e na revisão do conteúdo 
ministrado na videoaula. Não recomendamos a substituição do estudo em vídeo pela leitura exclu-
siva deste material.

Continue navegando