30
Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a programação de computadores

Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a programação de computadores

Page 2: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Regilan Meira Silva

Professor de Informática do Campus Ilhéus

Formação em Ciência da Computação com Especialização em Sistemas de Informação e Mestrado em Ciência dos Materiais

Professor efetivo no Instituto Federal da Bahia desde 2008

Atuação como profissional de TI há 11 anos

Ministra aulas de disciplinas relacionadas a desenvolvimento de sistemas: linguagens de programação, banco de dados e análise de sistemas

Site pessoal: http://www.regilan.com.br

E-mail: [email protected]

Page 3: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação
Page 4: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

DISCIPLINA: Introdução a lógica de

programação

TURMA: STI 12

CARGA HORÁRIA: 60 h – 80 h/a

DIA DE AULA: QUINTA-FEIRA

OBJETIVO: Apresentar uma visão geral do

processo de programação para computadoresEMENTA COMPLETA

Page 5: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

METODOLOGIA DE TRABALHO: Os conceitos, bem como todo o conteúdo buscando desenvolver habilidades e competências, serão desenvolvidos de forma gradual e incremental, com apresentação de slides e acompanhamento através de notas de aula que estão disponíveis no site do professor (http://www.regilan.com.br).

Page 6: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

As aula serão realizadas no laboratório de informática onde será apresentado o conteúdo e exemplos práticos demonstrando o processo de resolução de problemas através da lógica de programação.

As avaliações serão realizadas através de listas de exercícios, atividades práticas no laboratório, trabalhos em grupo e avaliação individual final da disciplina.

Page 7: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação
Page 8: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Programa de Computador

Um programa de computador é o produto resultante da atividade intelectual de um programador.

Um programa de computador é um conjunto de instruções e dados que algum ser humano define e que ao serem executadas por um computador cumprem algum objetivo

Page 9: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

A lógica trata das maneiras de encadear nosso raciocínio para justificar nossas conclusões a partir de fatos básicos

Nas atividades desenvolvidas no dia-a-dia existe o nosso raciocínio lógico que define os passos para que nossa atividade seja completada com sucesso

Se esse raciocínio falha, há grandes chances de não alcançarmos nosso objetivo.

Page 10: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Uma técnica de encadear pensamentos para atingir um determinado objetivo (conceito geral)

Conjunto de regras sintáticas e semânticas usadas para definir um programa de computador

Page 11: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Para que, onde utilizar e qual a importância?

Indispensável para pessoas que trabalham com desenvolvimento de sistemas computacionais

Sistemas computacionais não existiriam sem a lógica de programação

Page 12: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Estes pensamentos são passos executados paraatingir o seu objetivo ou solução de um problema(ALGORITMO).

Problema: Como chegar ao IFBA? Objetivo: Chegar ao IFBA Sequência de passos (pensamentos)

Acordar Fazer a higiene matinal Se alimentar Ir ao ponto de ônibus Pegar um ônibus Chegar no IFBA (OBJETIVO CONCLUÍDO)

Page 13: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

É uma sequência finita de passos que levam ao cumprimento de uma tarefa (definição geral).

Analogia: Receita Exemplo: Somar dois números quaisquer

Escreva o primeiro número

Escreva o segundo número

Some o primeiro número com o segundo

Exiba o valor da soma dos dois números

Page 14: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Modelagem:

Conhecer o problema a ser resolvido

Extrair todas as informações a respeito do problema

Implementação:

Descrever claramente os passos para chegar

Organizar os passos em uma sequência lógicaque leve a solução

Page 15: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Essa formalização consiste em detalhar osdados que serão processados e as instruçõesque serão operadas

É importante formalizar a descrição dosalgoritmos segundo alguma convenção paraque todas as pessoas possam entendê-lo damesma forma

Page 16: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Regras de sintaxe: regras que regulam aescrita do algoritmo

São as regras para escrevê-lo corretamente Essas regras indicam quais são os tipos de

comandos que podem ser utilizados etambém como nele escrever

Usam-se três tipos de estruturas: estruturassequências, de decisão e de repetição.

Page 17: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Regras Semânticas: sãos as regras quepermitem interpretar um algoritmo

A semântica do algoritmo sempreacompanha sua sintaxe, fornecendo umsignificado

Page 18: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Mecanismos que representam a formalização dos algoritmos:

Fluxogramas: representação gráfica

Pseudocódigo: linguagem para representar algoritmos

Linguagem de programação: linguagem para comunicação entre computador e homem. Necessária para criação de programas de computador ou aplicativos.

Page 19: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Crie uma seqüência lógica para fazer um omelete.

Descreva com detalhes a seqüência lógica para trocar um pneu de um carro.

Faça uma sequência lógica para trocar uma lâmpada.

Page 20: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

• Os algoritmos PODEM ser descritos em uma linguagem chamada pseudocódigo. Este nome é uma alusão à posterior implementação em uma linguagem de programação, ou seja, quando formos programar em uma linguagem, por exemplo Visual C#, estaremos gerando código em Visual C#.

• Por isso os algoritmos são independentes das linguagens de programação. Ao contrário de uma linguagem de programação não existe um formalismo rígido de como deve ser escrito o algoritmo.

Page 21: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Exemplo de Algoritmo em Pseudocódigo Exemplo de Algoritmo escrito em C

Page 22: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

O algoritmo deve ser fácil de se interpretar e fácil de codificar. Ou seja, ele deve ser o intermediário entre a linguagem falada e a linguagem de programação.

Entretanto ao montar um algoritmo, precisamos primeiro dividir o problema apresentado em três fases fundamentais.

Page 23: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

ENTRADA: São os dados de entrada do algoritmo

PROCESSAMENTO: São os procedimentos utilizados para chegar ao resultado final

SAÍDA: São os dados já processados

Page 24: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Analogia com o ser humano:

Page 25: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Imagine o seguinte problema: Calcular a média final dos alunos de uma escola. Os alunos realizarão quatro provas: P1, P2, P3 e P4, onde a média final é dada pela formula abaixo:

P1 + P2 + P3 + P44

Page 26: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Para montar o algoritmo proposto, faremos três perguntas:

a) Quais são os dados de entrada?

R: Os dados de entrada são P1, P2, P3 e P4

b) Qual será o processamento a ser utilizado?

R: O procedimento será somar todos os dados de entrada e dividi-los por 4 (quatro)

c) Quais serão os dados de saída?

R: O dado de saída será a média final

Page 27: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Algoritmo: Calcular Média

Receba a nota da prova1

Receba a nota de prova2

Receba a nota de prova3

Receba a nota da prova4

Some todas as notas e divida o resultado por 4

Mostre o resultado da divisão

Page 28: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

1) Identifique os dados de entrada, processamento e saída no algoritmo abaixo Receba código da peça Receba valor da peça Receba Quantidade de peças Calcule o valor total da peça (Quantidade * Valor da

peça) Mostre o código da peça e seu valor total

2) Faça um algoritmo para “Calcular o estoque médio de uma peça”, sendo que ESTOQUEMÉDIO = (QUANTIDADE MÍNIMA + QUANTIDADE MÁXIMA) /2

Page 29: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

3) O custo ao consumidor de um carro novo é a soma do custo de fábrica com a percentagem do distribuidor e dos impostos (aplicados ao custo de fábrica). Supondo que a percentagem do distribuidor seja de 28% e os impostos de 45%, escrever um algoritmo que leia o custo de fábrica de um carro e escreva o custo ao consumidor.

4) Construa um algoritmo que, tendo como dados de entrada dois pontos quaisquer no plano, P(x1,y1) e P(x2,y2), escreva a distância entre eles. A fórmula que efetua tal cálculo é:

Page 30: Aula 01: Apresentação da disciplina e introdução a ...€¦ · Aula 01: Apresentação da disciplina e introdução a conceitos relacionados a ... gradual e incremental, com apresentação

Tipos de dados e Instruções Primitivas: Escrevendo os primeiros código em programação C#.