Sie sind auf Seite 1von 29

PROGRAMAO APLICADA ENGENHARIA

Aula 1: Algoritmos e Linguagens de Programao

OBS.: Estes slides foram baseados nas aulas do Prof. Mrio Srgio da Silva. Disponvel em:
https://pt.slideshare.net/MarioSergio26/introduo-programao-62058039. As imagens utilizadas foram selecionadas de imagens
disponveis no Google.
ANTES DE COMEAR...

...Um pouco de histria


A Torre de Babel

Existem entre 5.000 e 6.000


lnguas faladas em nosso planeta.
Cerca de 200 idiomas possuem
mais de um milho de falantes.
Como descrever um idioma? Que
elementos esto presentes na
descrio de uma linguagem?
"Vinde, desamos e confundamos ali a sua
linguagem, para que no entendam a linguagem um
do outro. (Jeov, o Deus hebraico)

26/05/2017 Prof Joicymara Xavier 3


Computadores tambm conversam

Como a linguagem falada pelos


computadores?
Que smbolo ela usa?
Quais palavras?
Como seria a gramtica dessa
lngua eletrnica?

Vdeo: Todo mundo deveria aprender a programar

26/05/2017 Prof Joicymara Xavier 4


Uma nova linguagem

Vamos falar zero-um-ns?

Computadores possuem cordas vocais


muito simples: ou emitem som, ou no
emitem.
possvel haver uma linguagem com
apenas dois smbolos?

26/05/2017 Prof Joicymara Xavier 5


Um pouco de histria: programando...

26/05/2017 Prof Joicymara Xavier 6


Um pouco de histria: salvando dados...

26/05/2017 Prof Joicymara Xavier 7


Um pouco de histria: lendo dados...

26/05/2017 Prof Joicymara Xavier 8


A Linguagem Binria

Mas, se no processador s chega corrente


eltrica, como ele pode executar o programa
que ns escrevemos?

26/05/2017 Prof Joicymara Xavier 9


A Linguagem Binria

Falar zero-um-ns deve ser fcil. No ?

Mas no !!!

Como deixar o zero-um-ns mais fcil de


usar?

26/05/2017 Prof Joicymara Xavier 10


Linguagens de Programao

Uma linguagem de programao um mtodo padronizado


para comunicar instrues para um computador (Dershem, Herbert
L.; Jipping, Michael J., 1995)

Ou simplesmente:

um conjuto de algoritmos que podem ser entendidos por


um computador. (Mrio Srgio, 2016)

26/05/2017 Prof Joicymara Xavier 11


Linguagens de Programao

H vrias linguagens
disponveis no mercado,
tanto comerciais como
open-source.
26/05/2017 Prof Joicymara Xavier 12
Linguagens de Programao

Exemplo de programa na Linguagem Assembly


(linguagem de montagem)

26/05/2017 Prof Joicymara Xavier 13


Linguagens de Programao

Exemplo de programa na Linguagem Assembly


(linguagem de montagem)

26/05/2017 Prof Joicymara Xavier 14


Linguagens de Programao

Exemplo de programa Al Mundo


(Linguagens de Alto Nvel)

26/05/2017 Prof Joicymara Xavier 15


Linguagens de Programao

Processo de Traduo para linguagem de mquina (binria)

Assista o vdeo A histria do computador


clicando aqui!

26/05/2017 Prof Joicymara Xavier 16


Algoritmos - Reviso

um conjunto de passos que define como uma tarefa deve ser


executada.
uma sequncia (lgica) finita e bem estruturada de
instrues para a resoluo de um problema.

Ateno: Um algoritmo no necessariamente computacional!!

26/05/2017 Prof Joicymara Xavier 17


Algoritmos - Reviso

Problema: Como fritar um ovo?

26/05/2017 Prof Joicymara Xavier 18


Introduo Lgica Computacional

26/05/2017 Prof Joicymara Xavier 19


Introduo Lgica Computacional

Popularmente costumamos utilizar o termo lgica dessas maneiras:

A lgica do amor;
A lgica do tcnico de futebol;
A lgica do presidente, etc.

Apesar de no estar errado, tais contextos so inadequados quando


tratamos do termo lgica como cincia.

26/05/2017 Prof Joicymara Xavier 20


Introduo Lgica Computacional

No existe uma definio satisfatria para lgica, tal questo pertence


filosofia.
No contexto da computao, esta definio parece ser a mais adequada:

26/05/2017 Prof Joicymara Xavier 21


Introduo Lgica Computacional

Por exemplo, a lgica matemtica formal auxilia na formao da base racional do senso
comum, pois ela tambm altera profundamente o raciocnio socialmente aceito.

26/05/2017 Prof Joicymara Xavier 22


Algoritmos

Fases fundamentais para a construo de um algoritmo:


Para montar um algoritmo, precisamos primeiro dividir o
problema apresentado em trs fases fundamentais:
ENTRADA: So os dados de entrada do algoritmo;
PROCESSAMENTO: So os procedimentos utilizados para chegar ao
resultado final
SADA: So os dados j processados.

26/05/2017 Prof Joicymara Xavier 23


Algoritmos

Fases: Analogia com o ser humano

26/05/2017 Prof Joicymara Xavier 24


Algoritmos

Formas de Representao de Algoritmos


Descrio Narrativa
Diagrama ou Fluxograma Convencional
Pseudocdigo
Linguagem de Programao (sintaxe especfica de cada linguagem)

26/05/2017 Prof Joicymara Xavier 25


Algoritmos: Descrio Narrativa

No precisa aprender nenhum conceito novo, pois utiliza-se apenas a


linguagem natural.
Mas, preciso se expressar de forma clara e precisa, evitando palavras
com duplo sentido.
Exemplo: Somar dois nmeros inteiros quaisquer:

26/05/2017 Prof Joicymara Xavier 26


Algoritmos: Fluxograma

a representao grfica
de um algoritmo, que
descrito por uma
sequncia de smbolos,
com notao bem
definida.

26/05/2017 Prof Joicymara Xavier 27


Algoritmos: Fluxograma

Outros exemplos de Fluxogramas

26/05/2017 Prof Joicymara Xavier 28


Algoritmos: DESAFIO

Problema: COMO FAZER UM BOLO?

Agora a sua vez! Escreva um algoritmo com a soluo para


este complexo problema!

Represente este algoritmo em Descrio Narrativa e


Fluxograma (utilize papel e caneta).

26/05/2017 Prof Joicymara Xavier 29

Das könnte Ihnen auch gefallen