22
Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Embed Size (px)

Citation preview

Page 1: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Programação Básica de Computadores 1

Ana Christina Bringuente(Material gentilmente cedido por Rodrigo Calhau)

Page 2: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Objetivos da Disciplina

• Motivar a resolução de problemas diversos utilizando a computação;

• Apresentar conceitos básico de programação de computadores;

• Introduzir lógica de programação e elaboração de algoritmos;

• Elaboração de programas de computadores, usando a linguagem Fortran;

Page 3: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

• O que é computação?o Busca de solução de um problema através

de: Entradas;Algoritmo (conjunto de passos);

• Não necessariamente utiliza máquinaso pode ser feito até mentalmente;

• Ex:o Resolver f(x) = x2 - 4;

Page 4: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

• O que é computador?o Máquina que faz computação!!!!o Permite processamento automático de dados

Processar dados:

Page 5: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

• Exemplos de computadores:o De uso geral:

Computador pessoal Notebook

o De uso específico: Máquina de calcular Celular Video game Ábaco

• No curso, computador será usado para designar computador de uso geral

Page 6: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à computação

• Ex: Abrir um navegador

Page 7: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

• Estrutura básica de um computador:o Dispositivos de saída

Monitor, impressora, caixa de som...o Dispositivos de entrada

Teclado, mouse, cd...o Processadoro Memória

Principal e secundária

Page 8: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

Por que utilizar um computador?o Rápidoso Baratoso Eficientes

Page 9: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

• Quando usar um computador para resolver um problema?o Problemas de alta complexidade:

Ex: robô que joga xadrez, identificação de iris, etc.o Problemas com grande quantidade de dados:

Podem até serem fáceis, mas são trabalhos Ex: 1000000000 pessoas doaram uma quantia

para uma instituição. Qual o total recebido?

Page 10: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

• Problema 1: o Tirar espinhas de uma foto 3x4o Programa: Photo shop

Page 11: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

• Problema 2: o Compactar arquivoo Programa: compactador qualquer

ArquivoDescompactado

ArquivoCompactado

Page 12: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução à Computação

• Problema 3: o Calcular coeficiente de simpatia de uma

pessoa (usando uma fórmula de 30 páginas criada em um projeto de pesquisa na UFES)

o Programa: Não Existe!!!! E agora??

??????? ???????

Page 13: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

Problemas específicos:o Último exemplo;o Ou resolve na mãoo Ou cria um programa

É necessário determinar o processamento (como os dados de entrada serão transformados nos dados de saída)

Page 14: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

• Criação de programas:o 1º - Entendimento do problema:

Estabelecer “o quê”

o 2º - Solução do problema Estabelecer “como”

o 3º - “Ensinar” o computador a resolver o problema = programar Usando uma linguagem de programação;

Page 15: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

• Problema de 2º grau

• Fórmula de Bhaskara

• Programar em Fortran

Page 16: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

• Algoritmos:

o Ex: Receita de bolo Manual de instruções Coreografia Instrução de como chegar a algum lugar

Page 17: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

• Algoritmos:o Propriedades:

Número de instruções é finito; Ações possuem uma ordem; Cada ação é simples e bem definida (não

ambigua);

Page 18: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

X2 -4 = 0a= 1b=0c=-4

Aplicação da fórmula de Bhaskara

Page 19: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

• Exercício:o Considere o seguinte problema: Temos três hastes.

Uma das hastes serve de suporte para três discos de tamanhos diferentes. Os discos menores são sempre colocados sobre os discos maiores. A figura abaixo mostra uma possível situação inicial das hastes e discos.

o Desejamos mover todos discos para outra haste, porém só podemos movimentar um disco de cada vez e um disco maior nunca pode ser colocado sobre um disco de menor tamanho.

Page 20: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

Algoritmo 1: (Notação Gráfica)

Page 21: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

• Algoritmo 2: (Português)o 1. move o disco p para a haste 3. o 2. move o disco m para a haste 2. o 3. move o disco p para a haste 2. o 4. move o disco g para a haste 3. o 5. move o disco p para a haste 1. o 6. move o disco m para a haste 3. o 7. move o disco p para a haste 3.

Page 22: Programação Básica de Computadores 1 Ana Christina Bringuente (Material gentilmente cedido por Rodrigo Calhau)

Introdução a Programação de Computadores

• Algoritmo 3: (Notação criada)o 1. p -> h3. o 2. m -> h2. o 3. p -> h2. o 4. g -> h3. o 5. p -> h1. o 6. m -> h3. o 7. p -> h3.