15
Universidade Federal do Amapá Curso de Engenharia Elétrica Universidade Federal do Amapá Curso de Engenharia Elétrica Algoritmos e Programação Unidade 1 – Conceitos Básicos

Aula01 Alg

Embed Size (px)

DESCRIPTION

Introdução a Ciência da Computação

Citation preview

Page 1: Aula01 Alg

Universidade Federal do AmapáCurso de Engenharia Elétrica

Universidade Federal do AmapáCurso de Engenharia Elétrica

Algoritmos e Programação

Unidade 1 – Conceitos Básicos

Page 2: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Um Breve Histórico O surgimento do computador aconteceu devido à

necessidade do homem em realizar cálculos cada vez mais complexos. A seguir descreve-se algumas das principais etapas da evolução da computação. Blaise Pascal (1623-1662) inventou a “Pascalina”,

uma calculadora que fazia cálculos de adição e subtração;

Leibniz (1646-1716) inventou uma calculadora mais poderosa que a de Pascal, pois realizava multiplicação e divisão;

Page 3: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Um Breve Histórico

Charles Babbage (1792-1871) iniciou o conceito da “máquina analítica”. Essa máquina não seria apenas capaz de realizar cálculos triviais, mas também poderia ser “ensinada” a fazer cálculos diferentes a partir de um conjunto de instruções. Por essa idéia revolucionária, Babbage é considerado o “pai” dos computadores atuais;

John von Neumann (1903-1957), que participou na construção do primeiro computador de grandes proporções, o ENIAC (“Electronic Numerical Integrator and Calculator”, que possuía 18.000 válvulas, ocupava um prédio inteiro e pesava 30 toneladas) propôs um conceito revolucionário em que as instruções seriam fornecidas à máquina como dados de entrada, e ambos ficariam armazenados na memória do equipamento, podendo ser processados automaticamente, sem modificações nos circuitos;

Page 4: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Um Breve Histórico

Com a substituição das válvulas pelos transistores e, posteriormente, a produção em larga escala dos circuitos eletônicos integrados (chips) , tornou-se viável a comercialização de computadores, dando início ao surgimento de grandes empresas, como a IBM;

Nos anos 70 e 80, a miniaturização dos circuitos eletrônicos permitiu a fabricação de microcomputadores a um preço acessível às pessoas. Nasce o PC (Personal Computer).

Page 5: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Componentes de um Computador

Armazenamento(MEMÓRIA)

ENTRADA UCP SAÍDA

Estrutura lógica de funcionamento do computador

Teclado

Disco Rígido

Memória RAM

MonitorProcessadorChipset

Page 6: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Programação de Computadores

Consiste no conjunto de métodos, de técnicas e de procedimentos em computação para a elaboração de programas de computador;

A necessidade da existência de bons programas, fáceis de serem entendidos por outros programadores, com o mínimo de erros, e que sejam executados em tempo aceitável, fez disseminar uma metodologia em programação, a “Programação Estruturada”.

A programação estruturada basicamente é definida a partir de regras adotadas para no desenvolvimento algoritmos.

Page 7: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

O que é um Algoritmo? Pode-se afirmar que a programação é uma atividade

diretamente ligada a resolução de problemas. Um problema pode ser definido como qualquer tipo de

questão levantada para se chegar a uma decisão ou solução;

Essa decisão ou solução está estruturada na forma de algoritmo. Isto é, “um algoritmo é uma sequência ordenada e finita de etapas, cuja execução passo a passo resolve um determinado problema” [Gilvan Vilarim].

É importante comentar que um problema pode ser resolvido por diferente maneiras, tal que um algoritmo pode chegar até a solução por distintas alternativas.

O aprendizado de algoritmos não é uma tarefa trivial. Para se ter bons êxitos são necessários muitos exercícios!

Problema Algoritmo Solução

Page 8: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Algoritmos e Resolução de Problemas

Exemplo de um algoritmo básico Algoritmo para retirar dinheiro do caixa eletrônico:

1- passar o cartão do banco no leitor; 2 – digitar a senha da conta-corrente; 3 – no menu que vai aparecer, escolher a opção

“saque”; 4 – digitar o valor desejado e apertar a tecla “fim”; 5 – confirmar o saque e apertar a tecla “fim”; 6 – Ficar esperando em frente ao caixa até sair o

dinheiro; 7 – retirar o dinheiro 8 – ter cuidado para não ser assaltado!

Page 9: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Algoritmos e Resolução de Problemas

Por outro lado, o algoritmo anteriormente ilustrado pode ser aperfeiçoado, considerando o caso em que a pessoa não tem um cartão. Neste caso o algoritmo seria reescrito como:

1- passar o cartão do banco no leitor (se não tiver cartão, digitar o número da agência e o número da sua conta-corrente);

2 – digitar a senha da conta-corrente; 3 – no menu que vai aparecer, escolher a opção

“saque”; 4 – digitar o valor desejado e apertar a tecla “fim”; 5 – confirmar o saque e apertar a tecla “fim”; 6 – Ficar esperando em frente ao caixa até sair o

dinheiro; 7 – retirar o dinheiro 8 – ter cuidado para não ser assaltado!

Page 10: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Programa de Computador

Nada mais é do que um algoritmo escrito num linguagem de programação (C, C++, Pascal, Phyton, Delphi, Java, Fortran, Visual Basic, entre outros).

Alguns ambientes computacionais como, o MATLAB, apresentam uma linguagem de programação de alto nível, em que se utiliza uma sintaxe de fácil compreensão.

Page 11: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Exercícios Propostos

Escreva um algoritmo para fazer um ovo; Escreva um algoritmo para falar num telefone

público; Escreva um algoritmo para trocar um lâmpada; Um senhor está numa das margens de um rio

com uma raposa, uma dúzia de galinhas e um saco de milho. Ele pretende atravessar o rio com as suas cargas num barco que só comporta ele e uma de suas cargas. Escreva um algoritmo para orientar o senhor a atravessar o rio sem que haja perda de carga.

Page 12: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Resolução dos Exercícios

Algoritmo de como fazer um ovo: 1 – Pegar a frigideira, ovo, manteiga e sal; 2 - Colocar a manteiga na frigideira; 3 – Acender o fogo; 4 – Colocar a frigideira no fogo; 5 – Esperar a manteiga esquentar; 6 – Quebrar cuidadosamente a casca do ovo

sobre a frigideira; 7 – Colocar sal a gosto; 8 – Retirar quando estiver pronto.

Page 13: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Resolução dos Exercícios

Algoritmo de como falar num telefone público; 1- Tirar o telefone do gancho; 2 – Aguardar sinal; 3 – Colocar o cartão telefônico; 4 – Discar o número desejado; 5 – Falar no telefone; 6 – Ao terminar colocar o telefone no

gancho.

Page 14: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Resolução dos Exercícios

Algoritmo de como trocar uma lâmpada: 1 – Verificar se a lâmpada está fora de

alcance. Se estiver, pegar uma escada; 2 – Tocar sutilmente na lâmpada. Se

estiver quente pegá-la com um pano; 3 – Tirar a lâmpada queimada; 4 – Colocar a lâmpada boa; 5 – Testar a lâmpada nova.

Page 15: Aula01 Alg

Algoritmo e Programação - Conceitos básicosAlgoritmo e Programação - Conceitos básicos

Resolução dos Exercícios

Algoritmo do senhor com a raposa, as galinhas e o milho 1- Atravesse com as galinhas; 2 – Retorne sozinho; 3 – Atravesse a raposa; 4 – Retorne com as galinhas; 5 – Atravesse o milho; 6 – Retorne sozinho; 7 – Atravesse com as galinhas