9
INF1005 – Programação 1 Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento 2012.1 1 1 Introdução à Programação INF 1005 e INF1004 - Progr amação I Pontifícia Universidade Católica Departamento de Informática 2 Modelo de um Computador

Introdução à Programação

Embed Size (px)

DESCRIPTION

Introdução à ProgramaçãoINF 1005 e INF1004 - Programação I

Citation preview

Page 1: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 1/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

1

1

Introdução à Programação

INF 1005 e INF1004 - Programação I

Pontifícia Universidade CatólicaDepartamento de Informática

2

Modelo de um Computador

Page 2: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 2/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

2

3

CPU: Unidade Central de Processamento

Principal componente de um computadordigital.

Localiza e executa as instruções de umprograma.

Capaz de executar operações simples comgrande rapidez.

4

Memória

Memória volátil usada para armazenar dados eprogramas.

Conteúdo modificável pelas instruções dosprogramas.

Permite acesso aleatório.

Page 3: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 3/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

3

5

Disco Rígido (HD)

Um dos dispositivos não-voláteis mais usados para oarmazenamento de grandes volumes de dados.

Utiliza superfícies magnetizáveis para armazenar asinformações.

Permite acesso

randômico aos dadosarmazenados.

6

Linguagens de Alto-Nível

Programar em linguagem de máquina é umatarefa entediante e propensa a erros.

A partir de meados dos anos 50 váriaslinguagens de alto nível foram criadas.

Tais linguagens possuem nível de abstraçãorelativamente elevados.

Elas são mais próximas das linguagensutilizadas pelos seres humanos.

Page 4: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 4/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

4

7

Linguagens de Alto-Nível

FORTRAN (1957)

COBOL (1960)

ALGOL (1968)

PASCAL (1970)

C (1972)

C++ (1983) JAVA (1995)

8

Exemplo de Programa em C

int main(void){

int a = 3, b = 7, c;

c=a+b;

if(c%2==0)

printf("o resultado e par\n");

else

printf("o resultado e impar\n");

return 0;

}

Page 5: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 5/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

5

9

Compilação

Programas escritos em linguagens dealto nível não são executadosdiretamente pelo processador.

Antes de executá-lo é preciso traduziros comandos de alto-nível para

instruções de máquina. Esta tarefa (compilação) é realizada por

um programa chamado de compilador.

10

Ciclo de Desenvolvimento

Page 6: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 6/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

6

11

Ciclo de Desenvolvimento

Problema ResultadosPrograma

de computador(solução)

12

Ciclo de Desenvolvimento

Escolha da linguagem de programação depende daaplicação que será desenvolvida.

Na disciplina INF1005, a escolha da linguagem C estárelacionada a: – eficiência

 – facilidade de uso

 – base para muitas outras linguagens

 – mais usada atualmente

 – base para Programação II

Page 7: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 7/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

7

13

Um programa escrito em C deve respeitar a sintaxe dalinguagem.

Um computador não é capaz de executar umasequência de instruções escritas em C: – ou em qualquer outra linguagem de alto nível

Para executar um programa em C, antes é necessárioconverter o programa em C para um programa emlinguagem de máquina:

 – processo chamado de COMPILAÇÃO

 – processo realizado por um COMPILADOR:» programa

Ciclo de Desenvolvimento

14

Ciclo de Desenvolvimento

(extensão .c)

(extensão .exe)

Page 8: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 8/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

8

15

Como descrever um “problema”?

Andando pelo campus da PUC e após quase tropeçarem esquilos e levar um susto com o vôo do tucano,alguém lhe pergunta:

 – Como faço para ir ao centro da cidade?

O que você responde?

16

Como descrever um “problema”?

Na pergunta anterior é fácil observar que faltamdetalhes para a resposta ser mais correta ou eficiente: – meio de transporte

» envolve tempo e dinheiro – endereço específico

 – quando?» envolve trajeto devido a engarrafamento

 – número de pessoas

Fica difícil responder sem saber as reais necessidadesde quem perguntou.

Page 9: Introdução à Programação

7/21/2019 Introdução à Programação

http://slidepdf.com/reader/full/introducao-a-programacao-56d7e79e1fb72 9/9

INF1005 – Programação 1Aula 02: 03/01/2012 – Algoritmos e Ciclo de Desenvolvimento

2012.1

9

17

Solução de “problemas”

Objetivo: encontrar uma sequência de passos que permitam que oproblema possa ser resolvido de maneira automática e repetitiva.

Detalhamento do problema. Perfeita compreensão do problema. Descrição da solução:

 – clara – não ambígua – sequencial

Linguagem utilizada na solução deve ser compreendida peloexecutor da solução. Atores envolvidos

 – criador da solução (programador) – executor da solução (computador) – usuário da solução (programador – em INF1005)