• Nenhum resultado encontrado

Aula 01 - Introdução

N/A
N/A
Protected

Academic year: 2021

Share "Aula 01 - Introdução"

Copied!
30
0
0

Texto

(1)

I

NTRODUÇÃO

 

À

 P

ROGRAMAÇÃO

 I  

Introdução

    Prof.  Péricles Miranda  

periclesmiranda@gmail.com  

Universidade  Federal  Rural  de  Pernambuco

Departamento  de  Esta7s8ca  e  Informá8ca  

Slides do Prof. Robson

Edited with the trial version of Foxit Advanced PDF Editor To remove this notice, visit:

(2)

• O  computador  

1  

• Algoritmo  

2  

• Programa  de  Computador  

3  

(3)

• 

Segundo  o  dicionário  Aulete:  

– Aparelho  eletrônico  que  funciona  a  par8r  de  

princípios  matemáEcos  e  pode  ser  programado  

para  desempenhar  tarefas  variadas,  como   armazenar,  buscar,  processar,  classificar,   organizar,  formatar  e  apresentar  dados,   inclusive  impressos.  

(4)

• 

Máquina  composta  por  uma  série  de  

componentes  e  

circuitos  eletrônicos

,  capaz  de  

receber

,  

armazenar

,  

processar

 e  

transmiEr

 

informações

   

• 

Máquina  implementada  para  

processar  dados  

ao  comando  de  um  usuário

,  gerando  

informações  de  seu  interesse  

O  que  é  um  computador?  

(5)

Processamento  de  Dados  

• 

A  

principal  finalidade  do  computador  

é  

realizar  a  tarefa  de  processamento:  

Dados   Processamento   Informação  

 Sequência  de  passos  

 Conjunto  de  instruções  

(6)

Algoritmo  

•  “Algoritmo  é  uma  sequência  de  passos  que  visa  

a:ngir  um  obje:vo  bem  definido”  (FORBELLONE,   1999);  

•  “Algoritmo  é  uma  sequência  finita  de  instruções  ou  

operações  cuja  execução,  em  tempo  finito,  resolve  um   problema  computacional,  qualquer  que  seja  sua  

(7)

Algoritmo  

• 

Exemplo  1:  (

Somar  três  números

)  

– Passo  1:  Receber  os  três  números;   – Passo  2:  Somar  os  três  números;  

(8)

Algoritmo  

•  Exemplo  2:  (Trocar  uma  lâmpada)  

–  Passo  1:  Pegar  uma  escada;  

–  Passo  2:  Posicionar  a  escada  embaixo  da  lâmpada   queimada;  

–  Passo  3:  Pegar  uma  lâmpada  nova;  

–  Passo  4:  Subir  na  escada  com  a  lâmpada  nova  na  mão;   –  Passo  5:  Re8rar  a  lâmpada  queimada;  

–  Passo  6:  Colocar  a  lâmpada  nova;   –  Passo  7:  Descer  da  escada;  

–  Passo  8:  Testar  o  interruptor;   –  Passo  9:  Guardar  a  escada;  

–  Passo  10:  Colocar  a  lâmpada  velha  no  lixo  apropriado,   para  reciclagem.  

(9)

Algoritmo  

• 

Vocês  poderiam  dar  mais  algum  exemplo  de  

algoritmo?  

(10)

Algoritmo  

• 

Um  algoritmo  é  um  “caminho”  para  a  solução  de  

um  problema  e,  em  geral,  existem  muitos  

caminhos  que  levam  a  uma  solução  sa8sfatória.  

Problema  

(11)

Método  para  a  construção  de  

Algoritmos  

a)  Ler  atentamente  o  enunciado,  destacando  os  

pontos  mais  importantes;  

b)  Definir  os  dados  de  entrada;  

c)  Definir  o  processamento,  ou  seja,  quais  

cálculos  serão  efetuados  e  quais  as  restrições  

para  esse    cálculo;  

d)  Definir  os  dados  de  saída;  

e)  Construir  o  algoritmo  (iremos  ver  a  seguir);  

f)  Testar  o  algoritmo  realizando  simulações.  

(12)

Tipos  de  Representação  de  

Algoritmos  

• 

Os  mais  u8lizados  são:  

– Descrição  narra8va;  

– Fluxograma;  

(13)

Descrição  Narra8va  

• 

Descreve  o  algoritmo  u8lizando  uma  

linguagem  natural  (por  exemplo,  a  língua  

portuguesa)  

• 

Vantagem:  

– Não  é  preciso  aprender  nenhum  conceito  novo.  

• 

Desvantagem:  

– Dificuldade  de  transcrever  o  algoritmo  para   programa.  

(14)

Descrição  Narra8va  

•  Exemplo:  Algoritmo  para  calcular  o  novo  salário  de   um  funcionário.  Sabendo-­‐se  que  os  funcionários   que  possuem  salário  atual  até  R$600,00  terão   aumento  de  20%    e  os  demais  terão  aumento  de   10%.  

–  Passo  1:  Receber  o  salário  atual  do  funcionário;   –  Passo  2:  Se  o  salário  atual  do  funcionário  for  até  R

$600,00,  calcular  o  novo  salário  com  percentual  de   aumento  de  20%;  caso  contrário,  calcular  o  novo   salário  com  percentual  de  aumento  de  10%;  

(15)

Fluxograma  

• 

U8liza  símbolos  gráficos  para  representar  o  

algoritmo  

• 

Vantagem:  

– O  entendimento  de  elementos  gráficos  é  mais   fácil  que  o  entendimento  de  texto.  

• 

Desvantagem:  

– O  algoritmo  resultante  do  fluxograma  não  

apresenta  muitos  detalhes,  dificultando  a  sua   transcrição  para  um  programa.  

(16)

Fluxograma  

• 

Elementos  gráficos  

Elemento  gráfico   Descrição  

Símbolo  u8lizado    para  indicar  o  início  e  fim  do  algoritmo.   Indica  o  senEdo  do  fluxo  de  dados.  Serve  exclusivamente   para  conectar  os  símbolos  ou  blocos  existentes.  

Símbolo  u8lizado  para  indicar  cálculos  e  atribuições  de   valores.  

Símbolo  u8lizado  para  representar  a  entrada  de  dados.   Símbolo  u8lizado  para  representar  a  saída  de  dados.  

Símbolo  que  indica  que  deve  ser  tomada  uma  decisão,   indicando  a  possibilidade  de  desvio.  

(17)

Fluxograma  

• 

Exemplo:  Algoritmo  para  calcular  o  novo  salário  

de  um  funcionário.  Sabendo-­‐se  que  os  

funcionários  que  possuem  salário  atual  até  R

$600,00  terão  aumento  de  20%    e  os  demais  

terão  aumento  de  10%.  

(18)

Fluxograma  

• 

Resposta:  

INÍCIO   SAL_ATUAL   SAL_ATUAL   ≤   600     NOVO_SAL  =  

SAL_ATUAL  *  1,20   SAL_ATUAL  *  1,10  NOVO_SAL  =  

NOVO_SAL  

FIM  

(19)

Pseudocódigo  ou  Portugol  

• 

Consiste  em  escrever,  por  meio  de  regras  

predefinidas,  os  passos  a  serem  seguidos  

para  a  resolução  do  problema  

• 

Vantagem:  

– A  passagem  do  algoritmo  para  uma  linguagem  de   programação  é  quase  imediata.  

• 

Desvantagem:  

– É  necessário  aprender  as  regras  do   pseudocódigo.  

(20)

Pseudocódigo  ou  Portugol  

•  Exemplo:  Algoritmo  para  calcular  o  novo  salário  de  

um  funcionário.  Sabendo-­‐se  que  os  funcionários  que   possuem  salário  atual  até  R$600,00  terão  aumento  de   20%    e  os  demais  terão  aumento  de  10%.  

ALGORITMO  

DECLARE      SAL_ATUAL,      NOVO_SAL      NUMÉRICO   ESCREVA      “Digite  o  salário  atual  do  funcionário”   LEIA      SAL_ATUAL  

SE      SAL_ATUAL      ≤      600  

ENTÃO      NOVO_SAL                          SAL_ATUAL  *  1,20   SENÃO      NOVO_SAL                          SAL_ATUAL  *  1,1   ESCREVA        “Novo  salário    =  “,      NOVO_SAL   FIM_ALGORITMO  

(21)

Programação  de  computadores  

• 

Programação  consiste  no  ato  de  indicar  como  

o  computador  (hardware)  deve  trabalhar  ou  

realizar  serviços,  como  por  exemplo:  

– Enviar  mensagens  eletrônicas,  armazenar  e   recuperar  dados,  realizar  exames  e  cirurgias,   jogar  e  muito  outras  coisas    

(22)

• 

Podemos  definir  como  uma  série  de  

instruções  que  indicam  como  o  computador  

irá  realizar  os  serviços    

• 

De  acordo  com  um  determinado  propósito,  e  

os  dados  de  entrada  fornecidos,  orienta  o  

trabalho    do  computador  para  a  obtenção  da  

infomação  relacionada.  

(23)

Algoritmo  x  Programa  

• 

Algoritmo:  independe  de  computador  e  

linguagens  de  programação  

• 

Programa:  implementação  de  um  algoritmo  

em  determinada  linguagem  de  programação  

(24)

Linguagem  de  Programação  

• 

O  computador  possui  sua  linguagem  

 

• 

Uma  linguagem  pode  ser  traduzida  para  outra  

01011010   10010001   01110010   01011010   10011001   01110010   a  =  3  *  2;   b  =  a  *  a;  

(25)

Linguagem  de  Programação  

•  Linguagem  de  máquina  

–  01010010111010011010  

•  Linguagem  montadora  (assembly)  

–  Ainda  são  bem  ilegíveis  e  estão  muito  próximos  da   linguagem  de  máquina,  mas  já  permite  uma  leitura   rudimentar  por  nós  humanos  

•  Linguagem  de  programação  de  alto  nível  

–  Está  mais  próximo  de  nós  humanos  do  que  do  código  de   máquina,  mas  para  isso  exige  que  tenhamos  um  bom   nível  de  abstração  

(26)

Sintaxe  e  Semân8ca    

• 

Sintaxe:  

– Conjunto  de  regras  que  estabelece  como  

palavras  e  símbolos  podem  ser  agrupados  de   maneira  a  formar  instruções  válidas  de  um   programa    

• 

Semân8ca:  

– Define  o  significado  de  uma  instrução  no   programa    

(27)

Compilador  x  Interpretador  

• 

Lembra?  

01011010   10010001   01110010   a  =  3  *  2;   b  =  a  *  a;   ?  

(28)

Compilador  x  Interpretador  

•  Um  compilador  é  um  programa  que  traduz  um  programa   escrito  em  uma  determinada  linguagem  de  programação   para  outra  linguagem.  

–  Exemplo  de  linguagens  Compiladas:  C,  C++.  

•  Um  interpretador  é  um  programa  que  traduz  instrução   por  instrução  de  um  programa  em  linguagem  de  máquina   e  imediatamente  executa  a  instrução    

–  Exemplo  de  linguagem  Interpretada:  PHP.  

•  Linguagens  Híbridas  

–  A  linguagem  de  alto  nível  é  traduzida  para  uma  outra  

intermediária    de  fácil  interpretação.   •  Exemplo:  Java.  

(29)

Familiarizando  com  alguns  termos  

•  Código-­‐fonte  

–  Texto  de  programa  escrito  pelo  usuário  

•  Código-­‐objeto  

–  Código-­‐fonte  compilado  para  linguagem  de  maquina  

•  Biblioteca  

–  Arquivo  contendo  funções  auxiliares  

•  Linkeditor  

–  Programa  que  une  funções  separadas  em  um  único  programa  

•  Tempo  de  compilação  

–  Eventos  que  ocorrem  quando  o  programa  é  compilado  

•  Tempo  de  execução  

(30)

Referências

Documentos relacionados

ORIGEM: Turma Recursal da Seção Judiciária de São Paulo REQUERENTE: GABRIEL HENRIQUE SILVA SANTOS PROC./ADV.: DEFENSORIA PÚBLICA DA UNIÃO REQUERIDO(A): INSS.

O que são Estudos de Usuários, quais os tipos (orientados para as unidades de informação ou para as pessoas), para que servem (funções e utilidades), exemplos de questões que

Qualquer não-conformidade de indicadores de Zero Tolerância identificado durante o processo de verificação deve ser identificado e solucionado dentro do

EPSON UNIVERSAL 20,00L GALAO CANAL VERDE P/ EPSON BULK INK LIGHT CYAN EPSON UNIVERSAL 20,00L GALÃO CANAL VERDE P/ EPSON BULK INK BLACK PIGMENTADA EPSON BULK INK 20,00L GALÃO CANAL

O objetivo deste trabalho foi avaliar o papel da NTPDase-1 na adesão celular do parasito em célula de mamífero através de ensaios de bloqueio com anticorpo específico e

PM 88.111, da CIPGd: Apto para atividade administrativa, dispensado de educação física, instrução, serviço ostensivo/noturno, escalas de serviço e serviço de guarda por 120 (cento

As relações entre os padrões de comportamento de secreção da substância de defesa e a morfologia da região do ozóporo finalmente foram obtidas por Hara &

 Acuidade: Quando realizar um ataque com uma arma com a propriedade Acuidade, o jogador pode escolher usar seu Modificador de Força ou Destreza para a jogada