Вы находитесь на странице: 1из 17

Ct1·q

Para lie
. /Jos .
Jog::> Engenharia de Software
\.:lr Jo'9os
Algoritmos e Lógica
(tr\+l::: r\.1\\ screen de Programação
Lett, R\ght, page\JP
pageoown. scroll" Navega~ao
Me. Gislaine Camila Lapasini Leal
para \1\sua\\z.ar os
\1\deos, c\\que e
aguarde carregar

Próximo
~
UniCesumar
Engenharia de Software
Reitor: Wilson de Matos Si lva
Vice-Reitor: Wil son de Matos Silva Fi lho
EDUCAt;:Ao A DIST AN CIA
Algoritmos e Lógica de
Pr6-Reitor de Administra~ao: Wilso n de Matos Silva Filh o

Programação
Pr6-Reitor de EAD: Wi ll ian Victor Kendrick de Matos Silva
Presidente da Mantenedora: Claudio Ferdinandi

Coordena~ao dos Cursos de: Coordena~ao dos Cursos de: Coordena~a o dos Cursos de:
Li cenciatura em Pedagogia Gradua~ao em Ag roneg6cio, Li cenciatura em Matematica
Prof•. Me. Marcia Previato Gestao Ambiental Prof.. Ivnna Gurn iski
Prof. Me. Silvio Silvestre Barczsz Coordena~a o dos Cursos de:
Coord e na~ao dos Cursos de:
Coordena~a o dos Cursos de:
Licenciatura em Hist6ria e Geografia
Gradua~ao em Admi n i st ra~ao,
Prof•. Priscilla Camp iollo M. Paixao
Processes Gerenciais Gradua~ao em Gestao de
Camilla Barreto Rodrigues Cochia Recursos Humanos, Coordena ~ao dos Cursos de:
Seguran~a no Traba lh o En gen haria de P rodu~ao
Coordena~ao dos Cursos de:
Prof. Luciano Sa nta na Pereira Prof•. Marc ia Ferna nda Pappa Me. Gislaine Camila Lapasini Leal
Gastronomia
Prof. Janafna Oliveira de Azevedo Lea l Coordena~ao dos Cursos de:
Coordena~ao dos Cursos de:
Prof. Alexandre Gimenes da Cruz Gestao Pub lica,
Marketing, Gestao Comercial
Neg6cios Imobiliarios
Coordena~a o dos Cursos de: Prof. Eliane Zanon i
Unidade I
Prof.. Pau lo Pardo
Analise e Desenvolvimento de Sistemas, Coordena~ao dos Cursos de:
Coordena~ao dos Cursos de:
Sistemas pa ra Internet

CONCEITOS INICIAIS
Gestao Financeira, Logfstica Licenciatu ra em Letras,
Prof. Danilo Xavier Saes
Prof•. Aliciane Kolm Secretariado
Coordena ~ao dos Cursos de: Prof•. Fabiane Ca rni el
Engen haria de Softwa re, Gestao Coordena~a o dos Cursos de:
Coordena~a o dos Cursos de:
da Tecno logia da I n for m a~ao Servi~o
Social
Prof•. Maria Cristina A. B. Cun ha Prof•. Ma ria Cristin a A. B. Cun ha Ci€mcias Contabeis
Prof•. Jose Ma noel da Costa
NEAD - Nucleo de Educa~ao a Distancia
Diretor de Opera~oes: Ch rystiano Min coff
Dire~ao de Mercado: Hilto n Pereira
Dire~ao de Relacionamento: Alessandra Baron
Dire~ao Pedag6gica: Katia Coelho
Supervisao do Nucleo de Produ~ao de Materiais: Nalva Aparecida da Rosa Mou ra
Designers Educacionais: Cami la Zag uin i Silva, Ja ime de Ma rch i Jun ior, La ri ssa Fi nco, Maria Fernanda
Canova Vasconcelos, Nadila de Almeida Toledo, Rossana Costa Gia ni, Pa ulo Victor Souza e Silva, Ca io
Tikaraish i Pierangeli, Yasmin n Zagonel.
Diagramadores/llustradores: Aline Mo rais, Andre Mora is de Freitas, Andre Luiz Onishi, Bru na Stefane
Martins Marconato, Daniel Fuverki Hey, Fernando Hen ri que Mendes, Humberto Garcia da Silva, Jaime de
Marchi Jun ior, Jose Jho nny Coe lho, Robson Yu iti Saito, Rafae l Szpaki Sa ngueza, Thayla Daiany Guimaraes
Cripa ldi, Thomas Hudso n Costa.
Revisoras: Jaq uelina Kutsu nugi, Keren Pard ini, Simone Mora is Limonta, Naya ra Va lenc iano, Viviane
Favaro Nota ri, Yara Martin s Dias.

"As imagens utilizadas nesta apostila foram obtidas a partir dos sites contratados PHOTOS.COM e
SHUTTERSTOCK.COM

Anterior Próximo
Conceitos Iniciais Uma variável é um espaço na memória principal do
computador que pode conter diferentes valores a cada
Um algoritmo é uma sequência finita de passos para
instante de tempo. Os tipos de variáveis que podemos
solucionar um problema. Sua representação pode ser
utilizar são: inteiros, reais, caracteres e lógicos.
realizada por meio de descrição narrativa, fluxograma
e pseudocódigo.

Veja os passos que devemos seguir na construção


de um algoritmo.

I ~·•
Reflita .
O aprendizado de algoritmos exige prática. Não se pode
aprender copiando ou simplesmente olhando. As principais expressões usadas na construção de
algoritmos são: aritméticas, relacionais e lógicas.

Anterior Próximo
Vamos analisar cada uma dessas expressões:
- Aritméticas: resultam em um número e os operadores
utilizados são: soma, subtração, multiplicação,
exponenciação, resto e divisão inteira.
- Relacional: compara dois valores. Os operadores
utilizados são: igual, diferente, maior, maior ou igual,
menor e menor ou igual.
- Lógica: o resultado é um valor lógico e os operadores
utilizados são: E, OU e NÃO.

A atribuição é o processo de fornecer um valor a uma


variável, em que o tipo desse valor tem que ser
compatível com a variável.

A entrada de dados permite receber dados do usuário e é


realizada por meio do comando leia. Já a saída de dados
permite mostrar dados ao usuário e é realizada utilizando
o comando escreva.

Anterior Próximo
Engenharia de Software
Algoritmos e Lógica de
Programação

Me. Gislaine Camila Lapasini Leal

Unidade II

ESTRUTURA CONDICIONAL

Anterior Próximo
Na estrutura condicional encadeada, temos a verificação de
Estrutura Condicional condições sucessivas. Podemos utilizar uma condição
A estrutura condicional permite desviar o fluxo da
dentro de outra, ou seja, a estrutura pode possuir diversos
execução do programa a partir de uma ou mais condições.
níveis de condição.
Temos a estrutura condicional simples, estrutura
condicional composta, estrutura condicional encadeada
e estrutura de decisão múltipla.

Na estrutura condicional simples, temos que as instruções


só serão executadas se a condição for verdadeira. A
A indentação é visível em arquivos de código fonte
sintaxe é dada por:
extensos, não se fazendo sentir tanto a sua necessidade
Se (<Condição>) então
em arquivos pequenos (relativamente ao número de linhas).
<instruções para condição verdadeira>
Para qualquer programador, deve ser um critério a ter
fim_se
em conta, principalmente, por aqueles que pretendam
Na estrutura condicional composta, temos a avaliação partilhar o seu código com outros. A indentação facilita
de uma única expressão e a partir dela temos dois caminhos também a modificação, seja para correção ou aprimoramento,
a seguir: um para a condição verdadeira e outro para falsa. do código fonte.
A sintaxe é dada por: Existem centenas de estilos de indentação, mas,
Se (<Condição>) então basicamente, consiste na adição de tabulações no início de
<instruções para condição verdadeira> cada linha na quantidade equivalente ao número de blocos
Senão em que cada linha está contida
<instruções para condição falsa> (<http://pt.wikipedia.org/wiki/Indenta%C3%A7%C3%A3o>)
fim_se

Anterior Próximo
Observe a figura. Nela, temos o uso da estrutura caso <variável>
condicional composta com o encadeamento de estrutura seja <valor 1> faça <instrução 1>
condicional. Ao utilizar a estrutura condicional seja <valor 2> faça <instrução 2>
encadeada, temos que tomar cuidado com a seja <valor N> faça <instrução N>
indentação do código. senão <instrução>
fim_caso

Reflita ! -·•
Na solução de um problema, é fundamental estudar as
várias opções de algoritmos a serem utilizados, pois os
aspectos de tempo e espaço são considerações importantes
que devem ser vistas com atenção (ZIVIANE, 2004).

A estrutura de decisão múltipla é uma generalização da


estrutura Se em que pode haver uma ou mais condições
a serem avaliadas e um comando diferente
associado a cada uma delas. Sua sintaxe é dada por:

Anterior Próximo
Engenharia de Software
Algoritmos e Lógica de
Programação

Me. Gislaine Camila Lapasini Leal

Unidade III

ESTRUTURA DE REPETIÇÃO

Anterior Próximo
A estrutura enquanto é uma estrutura do tipo laço
Estrutura de Repetição
condicional, utilizada quando temos um número indefinido
A estrutura de repetição é usada quando precisamos de repetições e se caracteriza por realizar um teste
repetir um determinado trecho de código ou todo o código condicional no início. Sua sintaxe é:
um certo número de vezes. O número de repetições do Enquanto <condição> faça
código pode ser fixo (laços contados) ou baseado em <instruções>
condições (laços condicionais). Os laços de repetição fim_enquanto
contados são usados quando sabemos previamente
quantas vezes o trecho de código precisa ser repetido. J AUnidade
estrutura
III repita é uma estrutura do tipo laço condicional
á os laços de repetição condicionais são usados quando que se baseia na análise de uma condição. É usada quando
não conhecemos o número de vezes que o trecho de temos um número indefinido de repetições e precisamos
código precisa ser repetido. que o teste condicional seja realizado após a execução do
trecho de código. Sua sintaxe é dada por:
A estrutura para é uma estrutura do tipo laço contado, Repita
utilizada para um número definido de repetições. <instruções>
para <variável> de <início> até <fim> passo Até_que <condição>
<incremento> faça
<instruções>
fim_para

Anterior Próximo
Engenharia de Software
As estruturas mais versáteis são Enquanto e Repita, pois Algoritmos e Lógica de
podem ser substituídas uma pela outra além de poderem
substituir perfeitamente a estrutura Para. Porém, há de
Programação
considerar-se que nem toda estrutura Enquanto ou
Repita poderá ser substituída por uma estrutura Para.

Me. Gislaine Camila Lapasini Leal

Unidade IV

ESTRUTURAS DE DADOS
HOMOGÊNEAS E
HETEROGÊNEAS

Anterior Próximo
ESTRUTURAS DE DADOS Saiba
HOMOGÊNEAS E HETEROGÊNEAS ..,.A
. SSUNTO
As estruturas de dados homogêneas AGRUPAM diversas
Assista: Ordenação pelo Método da Bolha - Bubble sort
informações do MESMO TIPO em uma única variável, e
Ordenação por bolha - Bubble Sort
podem ser unidimensionais (vetores) e
multidimensionais (matrizes). Um exemplo de vetor pode ser visto na figura abaixo.
É um vetor de inteiros e com quatro posições.
Um vetor é um arranjo de elementos armazenados na
memória principal, sequencialmente, todos com o mesmo
30 5 16 1
nome. As operações de atribuição, leitura e escrita são
realizadas para cada elemento do vetor. Em muitas Uma matriz consiste em uma sequência de variáveis do
situações, precisamos rearranjar os elementos de acordo mesmo tipo, com o mesmo nome e alocadas
com um critério específico com o objetivo de facilitar a sequencialmente na memória. O acesso é realizado por meio
localização, isto é, precisamos ordenar os elementos. de índices e para cada dimensão devemos ter um índice.
Um método bastante conhecido para a ordenação é o
método da bolha, que consiste em realizar comparações Na figura podemos visualizar um exemplo de matriz em
sucessivas e realizar a troca de posição, se eles estão fora que temos oito linhas e quatro colunas. A declaração desta
de ordem. matriz é dada por: Notas: vetor [1..8, 1..4] de real.

Anterior Próximo
A figura apresenta um exemplo de registro em que temos
os campos código, descrição, preço e saldo.

As estruturas de dados heterogêneas permitem o


agrupamento de informações de diferentes tipos de dados.
Em algoritmos, este tipo de estrutura é representado
pelos registros, os quais agregam diversas informações,
que podem ser de diferentes tipos. Cada informação é
denominada de campo.

I ~·•
Reflita .
A variável caractere é armazenada na memória principal
como sendo um vetor, mesmo sem ser declarada como tal.

Anterior Próximo
Engenharia de Software
Algoritmos e Lógica de
Programação

Me. Gislaine Camila Lapasini Leal

Unidade V

SUB-ROTINAS E
PROGRAMAÇÃO COM
ARQUIVOS

Anterior Próximo
parâmetro real correspondente. Já na passagem por
Sub-rotinas e Programação
com Arquivos referência, temos que o valor do parâmetro real é alterado
quando o parâmetro formal é manipulado.
As sub-rotinas permitem resolver subproblemas por meio
da modularização. É um bloco de instruções que realiza
tarefas específicas. As sub-rotinas podem ser do tipo
procedimento ou função.
Reflita ! -·•
Na passagem de parâmetros por referência, o parâmetro é
Um procedimento é um trecho de código com início e fim e o endereço de memória, e não o valor.
identificado por um nome que não retorna valor para
quem o chamou. Sua sintaxe é: Uma função permite desviar a execução do programa
procedimento <nome do procedimento> principal para realizar uma tarefa específica. Sempre
var retorna um valor. Sua sintaxe é:
<variáveis> funcao <nome da função> (parâmetros): <tipo da função>
início var
<instruções> <variáveis>
fim_procedimento inicio
<instruções>
Nas sub-rotinas, podemos efetuar a passagem de retorne <valor>
parâmetros de dois modos: por valor e por referência. fim_funcao
Na passagem de parâmetros por valor, a alteração na
variável local da sub-rotina não afetará o valor do

Anterior Próximo
A recursividade é o mecanismo que permite uma função
chamar a si mesma direta ou indiretamente. O objetivo é
diminuir sucessivamente o problema em um problema
menor até que a simplicidade do problema permita
resolvê-lo de modo direto, isto é, sem recorrer a si mesmo.

Os arquivos são estruturas de dados manipuladas fora


do ambiente do programa.

Anterior Próximo
Anterior Próximo
..
Av. Guedner, 1610- Jd . Aclima~ao- (44) 3027-6360- CEP 87050-390
Maringa- Parana- www.cesumar.br
NEAD- Nucleo de Educa~ao a Distancia- bloco 4- (44) 3027-6363
ead@cesumar.br- www mar.br
r

Anterior

Вам также может понравиться