![Page 1: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/1.jpg)
Algoritmos e Programação
Ederson Luiz da Silva
Ciência da Computação
_______________________________
_______________________________
![Page 2: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/2.jpg)
Linguagem de programação
![Page 3: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/3.jpg)
Linguagem de Programação
Linguagem de máquina
![Page 4: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/4.jpg)
Linguagem de Programação
Linguagem de baixo nível
http://www.assemblyprogressivo.net/p/curso.html
![Page 5: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/5.jpg)
Linguagem de Programação
Linguagem de alto nível
![Page 6: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/6.jpg)
Paradigmas de Programação
Imperativo;
Funcional;
Lógico;
Orientado à objetos;
![Page 7: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/7.jpg)
Paradigma Imperativo – Fortran, Pascal
Paradigma mais antigo e contrasta com
as outras linguagens: Funcional e lógica;
Características:Definição de tipos de dados
Expressões e atribuições
Estruturas de controle de fluxo (programação estruturada)
Definição de sub-rotinas (programação procedimental)
![Page 8: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/8.jpg)
Paradigma Funcional - LISP
Ênfase em aplicação de funções;
Características:Variáveis amarradas a valores e não trocam de valor
Funções matemáticas formam o programa
![Page 9: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/9.jpg)
Paradigma Lógico - Prolog
John McCarthy (1958);
Faz uso da lógica matemática;
Características:Programas são declarativos: especificam resultados desejados
em vez de procedimentos para produzi-los
Sintaxe diferente das demais linguagens
![Page 10: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/10.jpg)
Paradigma Orientado à objetos - Java
Mais atual, faz uso de objetos, atributos,
métodos e classes na programação;
Características:Abstração: como o programador irá abstrair para o programa
a identidade, propriedades e métodos;
Encapsulamento: elemento que adiciona segurança à
aplicação;
Herança;
Polimorfismo: alterar sua forma/estado.
![Page 11: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/11.jpg)
Processo de desenvolvimento de programa
Especificação de requisitos;
Projeto de software;
Implementação;
Validação;
Manutenção.
![Page 12: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/12.jpg)
Especificação de requisitos
Coleta de dados;
Abstração;
Verificação in loco;
Características do programa;
Desempenho, espaço de memória, etc.
Cronograma.
![Page 13: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/13.jpg)
Projeto de software
Identificação;
Categorização;
Escolhas;
Métodos, estrutura de dados, etc.
Evitar perdas.
![Page 14: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/14.jpg)
Implementação
Programação
Utilização de Softwares;
![Page 15: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/15.jpg)
Validação
Testes;
Atendimento às exigências
![Page 16: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/16.jpg)
Manutenção
Vida útil do programa;
Evolução do programa;
![Page 17: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/17.jpg)
Programação em PascalCaracterísticas
Estruturado: Sequência de programação decima para baixo, da esquerda para direita, hánecessidade de declaração de variáveis,delimitar inicio e fim de blocos deprogramação.
Identificadores: Correspondem aos “nomespróprios” escolhidos pelo programador pararepresentar os diversos elementos doprograma.
![Page 18: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/18.jpg)
Pascal
Palavras Reservadas
http://www.inf.ufsc.br/~lau.lung/INE5201/Material%20de%20Aula/ICC3.pdf
![Page 19: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/19.jpg)
Pascal
Separadores
http://www.inf.ufsc.br/~lau.lung/INE5201/Material%20de%20Aula/ICC3.pdf
![Page 20: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/20.jpg)
Pascal
![Page 21: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/21.jpg)
Programação em Pascal
Características
Tipos de dados
Numéricos inteiros: shortintinteger, longint,
byte, word;
Numéricos reais: real, single, double,
extended, comp;
Caracteres: string.
![Page 22: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/22.jpg)
Programação em PascalCaracterísticas
Tipos de dados
String: Ao declarar uma variável do tipo string
é necessário informar o tamanho da string.
![Page 23: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/23.jpg)
Programação em PascalCaracterísticas
Exemplo de código
![Page 24: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/24.jpg)
Programação em PascalCaracterísticas
Operadores aritméticos
![Page 25: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/25.jpg)
Programação em PascalExemplo de código
![Page 26: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/26.jpg)
Programação em PascalEstrutura de seleção
![Page 27: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/27.jpg)
Programação em PascalEstrutura de seleção
if
![Page 28: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/28.jpg)
Programação em PascalEstrutura de repetição
![Page 29: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/29.jpg)
Programação em PascalEstrutura de repetição
![Page 30: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/30.jpg)
Programação em PascalEstrutura de repetição
![Page 31: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/31.jpg)
Programação em PascalEstrutura de repetição
![Page 32: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/32.jpg)
Programação em PascalEstrutura de repetição
![Page 33: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/33.jpg)
Programação em PascalEstrutura de repetição
![Page 34: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/34.jpg)
Programação em PythonCaracterísticas
Dinâmico: Não há necessidade de declarar o
tipo da variável, a mesma variável pode
assumir diferentes tipos.
![Page 35: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/35.jpg)
Programação em PythonCaracterísticas
Delimitadores: Não é feita a utilização de
delimitadores de inicio e fim de blocos de
código, a delimitação é feita pela identação.
![Page 36: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/36.jpg)
Programação em PythonCaracterísticas
Tipos de dados numéricos: Os dados
numéricos podem ser inteiros, reais ou
complexos.
![Page 37: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/37.jpg)
Programação em PythonCaracterísticas
Tipos de dados textuais: Sequência imutável
para armazenar caracteres.
![Page 38: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/38.jpg)
Programação em PythonCaracterísticas
Lista: Sequência de valores indexadas por um
inteiro, a lista pode ter múltiplos tipos.
![Page 39: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/39.jpg)
Programação em PythonCaracterísticas
Acesso as listas criadas: O acesso é feito
indicando qual posição da lista é desejada.
![Page 40: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/40.jpg)
Programação em PythonCaracterísticas
Tuplas: São basicamente listas porém Tuplas
são imutáveis, ou seja, uma vez criada não
podem ser alteradas.
![Page 41: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/41.jpg)
Programação em PythonCaracterísticas
Dicionário: Pode ser entendido como uma
coleção de diversos elementos que podem ser
interligados entre si.
![Page 42: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/42.jpg)
Programação em PythonCaracterísticas
Atribuição
Simples
a = 1
Múltipla
a, b, c = 1, 2.9, “Hello Word”
![Page 43: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/43.jpg)
Programação em PythonCaracterísticas
Operadores aritméticos
![Page 44: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/44.jpg)
Programação em PythonCaracterísticas
Estrutura de Seleção
![Page 45: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/45.jpg)
Programação em PythonCaracterísticas
Estruturas de Controle: For
For <Variável> in <Sequência>
![Page 46: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/46.jpg)
Programação em PythonCaracterísticas
Estruturas de Controle: While
While <Condição>:
#Instruções
Exemplo?
>>> b=0
>>> while b < 5:
print b
b=b+1
![Page 47: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/47.jpg)
Programação em PythonCaracterísticas
Estruturas de Controle: While
While <Condição>:
#Instruções
![Page 48: Algoritmos e Programação - UNEMAT – Campus Sinopsinop.unemat.br/site_antigo/prof/foto_p_downloads/fot_14568pabte_1... · Paradigma Imperativo –Fortran, Pascal Paradigma mais](https://reader038.vdocuments.pub/reader038/viewer/2022102812/5b476e237f8b9a5e5f8c1c11/html5/thumbnails/48.jpg)
Programação em PythonCaracterísticas
Estruturas de Controle: While
While <Condição>:
#Instruções