Buscar

introducaoProgramacao - Gilka POLI UPE

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 60 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 60 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 60 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

Introdução à Programação
Profª Gilka Rocha Barbosa
ESCOLA POLITÉCNICA DA UNIVERSIDADE DE PERNAMBUCO
Introdução à Computação 2
Conceitos
 O que é um COMPUTADOR?
Máquina que recebe dados (entrada), 
processa conforme programado, e 
fornece dados (saída).
Introdução à Computação 3
Aplicativos
Sistema
Operacional
Componentes
Físicos
Interface de
hardware
Componentes Básicos
Periféricos
Componentes Multimídia
Componentes de rede
Windows
DOS
Linux
Sistemas de Informação
SGBD
Word
CAD
Monitor
Teclado
Processador
Estrutura geral de um sistema de computação
Introdução à Computação 4
A evolução dos sistemas de computador 
 Primeira geração (aproximadamente entre 1951 e 1959)
 Tecnologia de válvulas. 
 Tem como marco inicial o UNIVAC, construído em 1951.
 Segunda geração(aproximadamente entre 1955 e 1965)
 Caracterizada pelos computadores transistorizados. 
 Tem como marco o TRADIC, construído em 1955, além da criação 
das linguagens FORTRAN e COBOL,
 Terceira geração (aproximadamente entre 1965 e 1975)
 Circuitos Integrados, os Chip’s. Fios, transistores e outros 
componentes em um único chip. 
 Quarta geração(aproximadamente entre 1975 e 1985)
 Microcomputadores
 Tem como marco inicial o chip 8080 da Intel (1974), 
 Quinta geração (a partir de 1985)
 Atual geração dos computadores, notebooks, palmtops e telefonia 
móvel, multimídias, computadores inteligentes e a realidade virtual.
Introdução à Ciência da Computação 5
ENIAC: Eletronic Numeric Integrator And Calculator – 1946
• 18.000 válvulas, 
• conseguia fazer 500 multiplicações por segundo 
Mark I - 1944 
• Universidade de Harvard e a IBM
• Ocupava 120 m3
• Tinha milhares de relês e fazia um 
barulho infernal. 
• Uma multiplicação de números de 
10 dígitos levava 3 segundos para 
ser efetuada.
Introdução à Ciência da Computação 6
Primeiro HD criado pela IBM em 1956
Capacidade: 4,7 MB
Peso: 1 tonelada
Preço: mais de US$ 1.000.000,00 
Celular.......
Introdução à Computação
Ericson MTA - 1956 
Motorola Dynatac 8000X – 1973 
25 cm de comprimento 
7 cm de largura, 
1 kg 
Bateria 20 minutos. 
Introdução à Computação 8
Mainframe: grande capacidade de memória e 
velocidade de processamento
Microcomputador: utilizado em aplicações pessoais 
e domésticas ou como terminais de sistemas 
multiusuário
Supercomputador: voltado à resolução de 
problemas que exigem grande capacidade de 
processamento em termos de velocidade e precisão 
de resultados 
Cluster de computador: conjunto de sistemas de 
computadores independentes e ligados em rede, 
mas que podem ser configurados para realizarem 
em conjunto um determinado trabalho de 
processamento.
Tipos de computadores
Introdução à Computação 9
Aplicativos
Sistema
Operacional
Componentes
Físicos
Interface de
hardware
Componentes Básicos
Periféricos
Componentes Multimídia
Componentes de rede
Windows
DOS
Linux
Sistemas de Informação
SGBD
Word
CAD
Estrutura geral de um sistema de computação
Software
Hardware
Introdução à Computação 10
Tecnologias de hardware
Arquitetura básica de um sistema de computador
Unidade
central de
processamento
Unidade de
entrada
Unidade de
memória
Unidade de
saída
Introdução à Computação 11
Unidade de entrada
 Formada pelos equipamentos que permitem a 
inclusão de dados a serem processados pelo 
sistema de computador. 
 A evolução das tecnologias de entrada de dados 
busca métodos, técnicas e ferramentas cada 
vez mais fáceis de utilizar
Teclados
Dispositivos indicadores
Dispositivos de leitura magnética
Dispositivo de leitura ótica
Dispositivos de captura de imagens
Dispositivos de captura de áudio
Dispositivos de captura de sinais 
Unidade
central de
processamento
Unidade de
entrada
Unidade de
memória
Unidade de
saída
Introdução à Computação 12
Unidade de memória principal
 Formada pelos dispositivos que armazenam os 
dados e as instruções em processamento pela 
Unidade Central de Processamento (UCP/CPU). 
 Os dados e os programas são armazenados na 
memória principal durante o processamento. 
Posteriormente, os resultados são liberados 
para o armazenamento em memória secundária 
ou para a unidade de saída.
 A memória principal é constituída por diferentes 
componentes eletrônicos fabricados com 
material semicondutor e denominados chips. 
Entre os chips de memória, destacam-se:
 RAM (Random Access Memory). 
 ROM (Read Only Memory). 
Unidade
central de
processamento
Unidade de
entrada
Unidade de
memória
Unidade de
saída
Introdução à Computação 13
Unidade de memória secundária
 Utilizada em virtude da limitação da memória 
principal. 
 Dispositivos de armazenamento mais baratos que a 
memória principal e viabilizam o armazenamento de 
grandes volumes de dados por períodos prolongados.
 apresenta como desvantagem uma menor velocidade 
de acesso em virtude de empregarem mecanismos 
eletromecânicos para leitura e gravação dos dados.
 meios de armazenamento 
 Meio magnético
 Fitas magnéticas. 
 Discos magnéticos 
 Meio ótico
 CD (compact disk). 
 DVD (Digital Video Disk).
Unidade
central de
processamento
Unidade de
entrada
Unidade de
memória
Unidade de
saída
Introdução à Computação 14
Memória 
Unidade
central de
processamento
Unidade de
entrada
Unidade de
memória
Unidade de
saída
1 Byte 20 8 bits
1 Kilobyte (KB) 210 1024 bytes
1 Megabyte (MB) 220 1024 kilobytes
1 Gigabyte (GB) 230 1024 megabytes
1 Terabyte (TB) 240 1024 gigabytes
1 Petabyte (PB) 250 1024 terabytes
1 Exabyte (EB) 260 1024 petabytes
1 Zettabyte (ZB) 270 1024 exabytes
1 Yottabyte (YB) 280 1024 zettabytes
Introdução à Computação 15
Tabela ASCII 
American Standard Code for Information Interchange
http://pt.wikipedia.org/wiki/ASCII
Introdução à Computação 16
Unidade Central de
Processamento
Unidade de controle.
Comanda todo o sistema de processamento através de 
códigos especiais (instruções), que indicam ao computador 
as operações que ele deve realizar e quais os dados a que 
elas se referem
Unidade de aritmética e lógica
Formada pelos componentes que realizam cálculos 
matemáticos e comparações lógicas.
Registradores.
Armazenam as instruções e dados em processamento 
Unidade
central de
processamento
Unidade de
entrada
Unidade de
memória
Unidade de
saída
Pastilha de silício composta por duas unidades:
Introdução à Computação 17
Unidade de saída
 Formada pelos equipamentos que permitem 
apresentação de resultados processados pelos 
sistemas. 
 As tecnologias de saídas de dados têm evoluído 
no sentido de proporcionar resultados mais 
atraentes e fáceis de utilizar
Dispositivos de saída em vídeo
Dispositivos de saída impressa
Dispositivos de saída sonora
Unidade
central de
processamento
Unidade de
entrada
Unidade de
memória
Unidade de
saída
Introdução à Computação 18
 Instrução é um comando que pode ser decodificado 
e executado 
 Algoritmo expressa formalmente uma solução para 
um problema através de um conjunto finito de 
passos, que, ao ser executado, opera certas 
estruturas de dados, produz resultados e cumpre 
determinado objetivo
 Programa é um algoritmo expresso em linguagem 
de um sistema de computador é capaz de executar
 Software é o conjunto de programas que um 
equipamento é capaz de executar, é uma solução 
para determinado problema 
Software
Introdução à Computação 19
Software
Software Exemplo
Básico SistemasOperacionais 
Loader
Compiladores
Link-editores
Suporte Gerenciador de rede
Controle de espaço
Segurança
Aplicativo Processador de texto
Planilha eletrônica
Edição gráfica
Aplicativo 
específico
Sistema de contabilidade
Cálculos de estruturas
Folha de pagamento
Usuário/
Problema
Hardware
Usuário
Software
aplicativo /
suporte
Hardware
Software 
básico
Introdução à Computação 20
Software de suporte
Ferramentas de desenvolvimento de software 
empregadas para o desenvolvimento de outro 
software.
 Gereciadores de Banco de Dados
 Gerenciadores de rede
 Linguagens de programação.
 Tradutores de linguagens de programação. 
 ....
Introdução à Computação 21
Linguagem de programação
 Conjunto de termos (vocabulário) e 
de regras (sintaxe) que permitem a 
formulação de instruções a um 
computador. 
1ª Geração: Linguagens Binárias
2ª Geração: Linguagens Assembly
3ª Geração: Linguagens Alto-Nível
4ª Geração: Linguagens Consulta
5ª Geração: Linguagens Naturais
Introdução à Computação 22
Nível de
Abstração Consumo de
Recursos
de 
Máquina
Facilidade
de 
Programação
- -
+ +
1ª
2ª
3ª
4ª
5ª
Linguagens de Programação
Linguagens de Programação
Introdução ao Scilab
• Trecho de código em C
a=5;
b=10;
c=a+b;
• Código em Assembly (MIPS)
ADDi $t0,$zero,5 //Adiciona-se ao registrador t0 o valor 5
ADDi $t1,$zero,10 //Adiciona-se ao registrador t1 o valor 10 
ADD $t2,$t0,$t1 //Soma-se os valores contidos nos 
registradores t0 (5) e t1 (10) e atribui o 
resultado ao registrador t2
Introdução à Computação 24
Algoritmo
 Um algoritmo é formalmente uma 
seqüência finita de passos que levam a 
execução de uma tarefa.
 Estas tarefas não podem ser 
redundantes nem subjetivas na sua 
definição, devem ser claras e precisas.
Introdução à Computação 25
Exemplo de Algoritmo
Sacar dinheiro num banco 24 horas
Passo 1: Ir até um banco 24 horas.
Passo 2: Colocar o cartão.
Passo 3: Solicitar a quantia desejada.
Passo 4: Se o saldo for maior ou igual à 
quantia desejada, sacar; 
caso contrário, 
escolher outro valor e 
refazer o Passo 2 .
Passo 5: Retirar o cartão.
Passo 6: Sair do banco 24 horas.
Introdução à Computação 26
Representação de Algoritmos
 Propriedades de um algoritmo:
 a descrição deve ser finita; 
 Ser objetivo nas instruções;
 Usar somente um verbo por frase;
 Escrever textos simples, para leigos; 
 Usar frases curtas e simples;
 Usar palavras que não tenham sentido dúbio.
 Teste de mesa
 Testes de verificação da corretude de um 
algoritmo de forma simples e interativa.
Introdução à Computação 27
1. Somar três números 
2. Fazer um sanduíche
3. Trocar uma lâmpada
4. Ir para a escola
Algoritmo - exemplos
Introdução à Computação 28
Método para construção de algoritmos
a)Ler atentamente o enunciado, destacando os 
pontos mais importantes;
b)Definir os dados de saída
 Quais dados serão gerados
a)Definir os dados de entrada
 Quais dados serão recebidos
d) Definir o processamento
 Quais cálculos serão efetuados e quais as restrições 
para esses cálculos. 
e) Construir o algoritmo utilizando uma 
representação escolhida;
f) Testar o algoritmo realizando simulações.
Introdução à Computação 29
Representação de algoritmos
Descrição narrativa
Analisar o enunciado do problema e escrever os 
passos a serem seguidos para resolução do 
problema utilizando uma linguagem natural.
Vantagem
Não é necessário aprender nenhum novo 
conceito.
Desvantagem
a linguagem natural abre espaço para várias 
interpretações, o que posteriormente dificultará 
a transcrição desse algoritmo para programa. 
Introdução à Computação 30
Analisar o enunciado do problema e escrever os 
passos a serem seguidos para resolução do 
problema utilizando símbolos gráficos 
predefinidos.
Vantagem
O entendimento de elemento gráfico é mais fácil 
que o entendimento de textos.
Desvantagem
É necessário aprender a simbologia dos 
fluxogramas e o algoritmo resultante não 
apresenta muitos detalhes dificultando sua 
transcrição para um programa. 
Representação de algoritmos 
Fluxograma
Introdução à Computação 31
Conjunto de símbolos utilizados no fluxograma
Início e fim do algoritmo
Indica o sentido do fluxo de dados, serve 
exclusivamente para conectar os símbolos 
existentes
Cálculos e atribuições de valores
Entrada de dados
Saída de dados
Tomada de decisão, indicando a possibilidade se 
desvios
Representação de algoritmos
Fluxograma
Introdução à Computação 32
Representação de algoritmos
Pseudocódigo, Portugol ou Português estruturado
Analisar o enunciado do problema e escrever os 
passos a serem seguidos para resolução do problema 
por meio de regras predefinidas.
Vantagem
a passagem do algoritmo para qualquer linguagem de 
programação é quase imediata, bastando conhecer as 
palavras reservadas da linguagem de programação.
Desvantagem
é necessário aprender as regras do pseudocódigo
Introdução à Computação 33
a) Descrição narrativa
Passo 1: Receber os dois números que serão somados.
Passo 2: Somar números.
Passo 3: Mostrar o resultado obtido.
Exemplo de algoritmo
Mostrar o resultado da soma de dois números
Início
S = N1 + N2
N1, N2
S
Fim
c) Pseudocódigo
ALGORITMO soma
DECLARE N1, N2, S : NUMÉRICO
INICIO
ESCREVA (“Digite dois números”)
LEIA (N1, N2)
S ← N1 + N2
ESCREVA (“Soma = “, S)
FIM
b) Fluxograma
Introdução à Computação 34
Estrutura de um algoritmo
Algoritmo
<declaração de variáveis>
Início
<comandos>
Fim.
Processamento
Dados de
entrada
Dados de 
saída
Introdução à Computação 35
Estrutura de um algoritmo
Algoritmo soma
declare A, B, C : inteiro;
Início
leia (A, B);
C ← A + B;
escreva(‘O valor da soma é:’, C);
Fim.
Introdução à Computação 36
Conceitos básicos - Dados
 Os dados são representações de abstrações 
acerca do mundo.
 São classificados em tipos. 
 Tipos podem ser primitivos ou construídos
 Tipos primitivos são os tipos fornecidos 
pela linguagem de programação de 
forma intrínseca.
Inteiros, reais, caracteres, lógico
São a base para a construção de novos 
tipos
Introdução à Computação 37
Tipos de Dados
 Numérico 
 Números
 Inteiros
 Reais
 Caractere
 Símbolos da tabela ASCII
 Literal
 Agregado de caracteres
 Lógico
 verdadeiro / falso
Introdução à Computação 38
Tipos de Dados
 Constante
 Determinado valor que não se modifica 
durante a execução de um programa. 
 Pode ser numérica, lógica e literal.
 Pode ou não receber um identificador.
 Pode aparecer dentro de expressões. 
Ex: num + 2 - 5/val
Introdução à Computação 39
Tipos de Dados
 Variáveis
 Áreas reservadas na memória do 
computador para armazenar um tipo de 
dado determinado. 
 São posições de memória, às quais deve-
se associar nomes (identificadores) e um 
tipo de dado.
 O conteúdo pode ser alterado durante a 
execução do programa
 Só podem armazenar um valor a cada 
instante
Introdução à Computação 40
Tipos de Dados
 Variáveis x Constantes
a ← b + 5
 a, b e 5 são variáveis ou constantes?
Introdução à Computação 41
Atributos das variáveis
 Toda variável tem
um nome (identificador)
um tipo de dado
um valor
val1 val2
realinteiro
x a
Memória
Introdução à Computação 42
Nomes ou identificadores 
 Regras para definir o nome ou identificador 
(nome das variáveis, constantes, programas...):
 Só podem conter letras e dígitos;
 Primeiro caractere deve ser umaletra;
 Letras maiúsculas e minúsculas podem ser 
consideradas caracteres diferentes;
 O único caractere especial aceito é o 
underline;
 Palavras reservadas não podem ser 
usadas.
val1 val2
realinteiro
x a
Memória
Introdução à Computação 43
Exemplo de identificadores 
 Identificadores 
válidos
A
a
nota
Nota
NOTA
a32
nota_1
 Identificadores 
inválidos
5b
e 12
x-y
SAT
case
prova 2n
Introdução à Computação 44
Tipos das variáveis
 Numérico
 Inteiros
-28, 156
 Reais
23.45, -9.36
 Lógico ou Boleano
 Falso
 Verdadeiro
 Caractere
´a´, ´b´
 Literal
´aluno’, ´1 + 2’, ou “aluno”, “1 + 2”
val1 val2
realinteiro
x a
Memória
Introdução à Computação 45
Valor das variáveis
Valor: a variável contém um valor quando está 
sendo usada 
val1 val2
inteirointeiro
x a
Memória
Atenção! Uma variável sem inicialização poderá conter 
um valor qualquer e imprevisível. 
Costuma-se dizer que contém lixo.
Introdução à Computação 46
Variáveis compostas homogêneas
 Identificadas por um mesmo nome, individualizadas 
por índices, cujo conteúdo é do mesmo tipo.
Exemplo 1: Notas de 10 alunos (Vetor): N1
N1[3] referencia o terceiro elemento, cujo conteúdo é 9,0
Exemplo 2: Notas de 10 alunos em dois semestres (Matriz): N2
N2[2,3] referencia o terceiro elemento da segunda linha, cujo 
conteúdo é 1,0
6,0 7,0 9,0 6,0 5,5 9,1 10,0 4,7 7,4 8,6
1 2 3 4 5 6 7 8 9 10
1 6,0 7,0 9,0 6,0 5,5 9,1 10,0 4,7 7,4 8,6
2 10,0 8,0 1,0 0,0 8,0 7,0 10,0 4,0 3,9 2,7
1 2 3 4 5 6 7 8 9 10
Introdução à Computação 47
Declaração de variáveis
declare <identificador> : <tipo de dado>
 Exemplos:
 declare X : inteiro;
 declare Y : real;
 declare Z : caractere;
 declare K, M, N : lógico;
Introdução à Computação 48
Operações com variáveis
 Variáveis devem ser declaradas
Exemplo: <variável>: <tipo>;
 As variáveis são modificadas através de um 
comando de atribuição (=, , , := ) ou de leitura
Exemplo: Ler <variável>;
a  3; 
a  a + 2;
 As variáveis podem ser impressas 
Exemplo: Escrever (a);
 Existem condições 
 para testar se a operação pode ser executada
 para verificar o resultado (falso/verdadeiro)
Introdução à Computação 49
Atribuições
 Armazena um valor em uma variável.
 ex:
X ← 5;
Nome ← ‘fulano’;
Z ← X + 9 * 15;
Y ← 12 - x + 5;
 Qual o resultado de ??A ← 4
B ← 5
A ← B
B ← A
Introdução à Computação 50
Operações
 Conjunto de ações a serem 
executadas sobre um conjunto de 
objetos
 Meio pelo qual incrementamos, 
decrementamos, comparamos e 
avaliamos dados no computador. 
 Tipos
 Monoádicas (-x)
 Diádicas (a+b)
Introdução à Computação 51
Combinações de variáveis, constantes e 
operadores em uma única sentença, que têm 
como finalidade a obtenção de um resultado. 
As expressões mais comuns são as aritméticas. 
Expressões
Operadores
Símbolos que representam as operações
Tipos básicos: aritméticos, relacionais, lógicos e 
atribuição
Operações
Introdução à Computação 52
Linearização de expressão
((2/3-(5-3))+1)*5
Tradicional Computacional
Introdução à Computação 53
Operadores Aritméticos
 Utilizados para obter resultados numéricos. 
Operação Operador
Exponenciação ** , ^
Radiciação raiz
Multiplicação *
Divisão /
Divisão inteira div, quociente
Resto da divisão resto
Adição +
Subtração -
Introdução à Computação 54
Operação Operador 
Igual a = 
Maior que > 
Menor que < 
Maior ou igual a >= 
Menor ou igual a <= 
Diferente de <> 
 
Operadores Relacionais
 Implementam comparações entre os dados
Introdução à Computação 55
Operação Operador 
Conjunção OU 
Disjunção E 
Negação NÃO 
 
Operadores Lógicos
 Utilizam a lógica booleana para a construção de 
expressões condicionais
Introdução à Computação 56
Tabela Verdade Negação 
A não A 
F V 
V F 
 
 
A B Conjunção 
A ou B 
Disjunção 
A e B 
V V V V 
V F V F 
F V V F 
F F F F 
 
 
Introdução à Computação 57
Prioridade das operações
 Prioridade das Operações
 Potências e operações 
monoádicas
 Multiplicações e divisões
 Soma e Subtração
 Parênteses alteram a 
ordem de execução
 Segue-se da esquerda 
para a direita em caso de 
indeterminação.
Prioridade
1: parênteses 
2: funções 
3: unário 
4: ** ^
5: *
6: / 
7: + e -
8: relacionais 
9: NÃO 
10: E 
11: OU 
Introdução à Computação 58
Variáveis Relações
Operadores lógicos - exemplo
Introdução à Computação 59
Variáveis Relações
Operadores lógicos - exemplo
Representação do algoritmo
 Comece com a palavra ALGORITMO 
 Declare os dados que serão 
manipulados pelo programa 
(variáveis) com a palavra DECLARE e 
indique o tipo de dado
 As demais linhas devem estar 
alinhadas em uma margem mais à 
direita. 
 Termina com a palavra FIM
Introdução à Computação 60

Outros materiais