Algoritmos e programação de computadores
Projeto de pesquisa: Algoritmos e programação de computadores. Pesquise 861.000+ trabalhos acadêmicosPor: labout • 25/8/2014 • Projeto de pesquisa • 1.005 Palavras (5 Páginas) • 316 Visualizações
MC102 – Algoritmos e Programação de Computadores
1ª Aula – Introdução à Programação de Computadores
1. Objetivos
• Situar a atividade de programação de computadores
• Apresentar conceitos fundamentais relativos à programação de computadores
2. Motivação
A programação de computadores é uma atividade que leva à representação dos passos necessários à resolução de um problema em linguagem de programação. Para dar início ao aprendizado dessa atividade, é importante compreender seu contexto, seu propósito, os conceitos básicos subjacentes, bem como tomar contato com o ferramental necessário a sua realização.
3. Conceitos
3.1 O que é um computador? Para que serve?
(de sofisticada máquina de calcular à mídia)
“Um computador é uma coleção de componentes que realizam operações lógicas e aritméticas sobre um grande volume de dados.” (Miyazawa, 2001)
Computador é ferramenta de trabalho (ex. editores de textos, planilhas, sistemas de informação, etc).
Computador é mídia: serve como canal na comunicação humana (ex. FAX, Web, ICQ, apresentação multimídia, etc).
3.2 Como funciona um computador?
(organização de um computador)
Figura 1: Organização Básica de um Computador Seqüencial (Miyazawa, 2001:1)
3.3 O que é algoritmo? Qual sua relação com programação de computadores?
(definição geral de algoritmo, sua origem, exemplos)
“Um procedimento para resolver um problema matemático (ex. achar o máximo divisor comum) em um número finito de passos que freqüentemente envolve a repetição de uma operação; ou de forma mais abrangente: um procedimento passo-a-passo para resolver um problema ou realizar algum objetivo.” (Manber, 1989:1)
Origem: matemático persa Mohammed al-Khowârzimî (em Latim: Algorismus)
Algoritmo mais antigo (400 a 300 AC): Algoritmo de Euclides, que calcula o máximo divisor comum (MDC) de dois números inteiros positivos. mdc (x, y) = mdc (y, x mod y); mdc (x, 0) = x.
Entrada: 2 valores inteiros positivos m e n (m > n)
Saída: máximo divisor comum de m e n.
Figura 2: Algoritmo de Euclides (Miyazawa, 2001:3)
O enfoque deste curso é em algoritmos computacionais, ou seja, algoritmos que “descrevem uma seqüência de ações que podem ser traduzidos para alguma linguagem de programação” (Miyazawa, 2001:2).
Algoritmo correto: sempre termina e para qualquer instância de entrada produz uma saída correta.
Programar consiste em representar/descrever um algoritmo em alguma linguagem de programação.
3.4 Quais são os ferramentais (básicos) necessários à programação de computadores?
(fluxograma, pseudo-linguagem, linguagem de programação, ambiente de programação)
Fluxograma: auxilia a explicar a seqüência de instruções em algoritmos e programas. Na Figura 2, a seguir, um retângulo representa um passo ou módulo do algoritmo, uma seta indica o próximo comando a ser executado, um losango indica uma condição que interfere no fluxo do algoritmo ou programa.
Figura 3: Exemplo de estruturas de controle usadas em programação estruturada (Miyazawa, 2001:9)
Pseudo-linguagem: notação que se assemelha a uma linguagem de programação, mas que também possibilita ao programador concentrar-se no problema a ser modelado sem “se prender” a uma linguagem de programação específica. Essa notação mistura definições formais sobre dados e estruturas de controle, com informações em estilo livre (ver Figura 2).
Linguagem de programação: uma linguagem desenvolvida para viabilizar a programação de computadores.
Ambiente de programação: conjunto de tecnologias que dá suporte à programação de computadores (ex. Sistema Operacional, editor de texto, compilador, etc).
4. Alguns Termos técnicos
Hardware: componentes mecânicos e eletro-eletrônicos que compõem o computador. Parte dura do computador.
Software: seqüência de instruções e comandos que fazem o computador realizar determinada tarefa, também chamados de programas de computador. Devem estar armazenados em algum tipo de memória.
Bit: menor unidade de informação de um computador (pode assumir os valores 0 ou 1).
Bytes: conjunto de oito bits.
Periférico: é qualquer componente do computador (hardware) que não seja a CPU. Ex.: leitoras de disquete, monitores,
...