You are on page 1of 47

1

Introduo Informtica

(Programao)


2
Conceitos Bsicos


-Algoritmos
-Programao Estruturada
-Linguagens de Programao
3
Os computadores, infelizmente,
s fazem aquilo que
mandamos, e no
necessariamente o que
desejamos que eles faam
4
Problema
Soluo em
forma de
ALGORITMO
Soluo como
um
PROGRAMA de
computador
Passo Difcil
Fase de
Resoluo do
problema
Fase da
Implementao
LINGUAGEM DE
PROGRAMAO
5
O conceito central da Programao e
da Cincia da Computao

Programar basicamente construir
Algoritmos

ALGORITMO
6
O que um ALGORITMO?
7
Algoritmo Bolo_Chocolate: Este algoritmo descreve os
passos necessrios para fazer um BOLO DE CHOCOLATE.
1. [Incio: Separar os Ingredientes]
1.1. 3 ovos
1.2. 1 xcara e 1/2 de aucar
1.3. colher (ch) de baunilha
1.4. 1 xcara (ch) de maionese
1.5. 1 xcara e 1/2 de farinha
1.6. 1 colher (sopa) de p royal
1.7. 1 xcara (ch) de chocolate em p
2. [Aps ter os ingredientes separados executar o modo de
fazer]
2.1. Faa o bolo da maneira de costume
3. FIM

8
Algoritmo MENOR_2: Este algoritmo l trs nmeros (A, B,
C), determine e imprime o menor deles. Assumir os trs
nmeros diferentes.
1. [Incio: Ler os trs nmeros]
Declarar inteiros A,B,C,Menor;
Leia (A, B, C);
2. [Calcular o menor deles]
SE (A<B e A<C)
ENTO MENOR = A;
SENO SE (B<C)
ENTO MENOR = B;
SENO MENOR = C;
FIM DO SE;
FIM DO SE;
3. [Imprimir o menor deles]
Escreva (MENOR);
4. FIM


9
ALGORITMO
Dia a Dia temos contato com algoritmos
Exemplos
Indicaes dadas para se chegar at uma
determinada rua
Um receita culinria
Uma planta serve ao mesmo propsito num
projeto de construo
Instrues para o uso de medicamentos,
equipamentos
Indicaes de como montar um aparelho
10
ALGORITMO
SOLUO ORDEM
PROBLEMA
11
Uma Sequncia Ordenada e sem
Ambiguidade de passos executveis,
Precisamente definidos, que
manipulam um conjunto de
informaes (dados) a fim de resolver
um dado problema.
ALGORITMO
12
Propriedades de um Algoritmo
A descrio dos passos de um algoritmo deve ser
simples e sem ambiguidades;
Os passos devem estar numa ordem
cuidadosamente definida;
Deve ser efetivo, ou seja, resolver o problema
utilizando um nmero finito de passos;
Tm um carter imperativo, na qual a ocorrncia de
uma ao num algoritmo tambm chamada de
comando;
Legvel, bem documentado, claro e de fcil
compreenso
13
ALGORITMO

Definio de um algoritmo:
DESENVOLVIMENTO DA SOLUO DO
PROBLEMA
+
CODIFICAO DO PROGRAMA EM UMA
LINGUAGEM ESPECFICA

Como a PRECISO essencial, existem
notaes para descrever algoritmos
14
Descrio de Algoritmos
A descrio de um algoritmo de uma forma
clara e fcil de ser seguida.
Ajuda o desenvolvimento e a subsequente
transformao do mesmo num programa,
Ajudando ainda na preparao de sua
documentao
15
Formas de descrever um
Algoritmos
Descrio Narrativa
Descrio Verbal em Linguagem Natural
Linguagem Algortmica
Linguagem simplificada
Fluxograma
Linguagem grfica
16
Descrio Narrativa
Mtodo direto expressar seus passos verbalmente
Linguagem Natural (LN) PROLIXA (cansativa,
longa, irritante) e IMPRECISA
Problemas:
Perigo de m interpretao
Perda de informao
Dificuldade de se transmitir informao com a LN a
base de um jogo popular
Explicar um caminho para sair do Anchieta e chegar
em casa
17
Linguagem Algortmica
uma linguagem especial para a
expresso de algoritmos
uma linguagem de programao
simplificada
18
Algoritmos
Estruturados
19
Objetivos:
Introduzir uma linguagem textual e outra
grfica para a representao de
algoritmos.
Desenvolver as habilidades de leitura,
interpretao e escrita de algoritmos em
Portugol.
20
Definio de variveis:
Nome de um local na memria
onde se pode armazenar um valor
(dado).
21
Declarao de variveis
Tipos bsicos.
Inteiro: qualquer nmero inteiro, negativo, nulo ou
positivo (integer).
Real/Float: qualquer nmero real, negativo, nulo ou
positivo (real).
String: Conjunto de caracteres
Char: um nico carcter alfanumrico.
Lgico: conjunto de valores FALSO ou VERDADEIRO
em proposies lgicas (boolean).

22
Exemplos:

inteiro : X1;
real : A,B;
char: F, N; 1
String: Informtica, Aniversrio, XPT45,
lgico: TEM;

23
Comandos bsicos:
Comando de atribuio: usaremos o smbolo
de atribuio <destino> <fonte>
Operadores aritmticos: operaes bsicas
e os nomes das funes matemticas mais
comuns ( +, -, *, / ).
Operadores lgicos: e , ou, no
Operadores relacionais:
=, >=, <= etc.

24
Prioridades para as operaes mistas:

Primeiro: parnteses e funes.
Segundo: expresses aritmticas
1 - ^ e sqrt
2 *, /
3 - +, -
Terceiro: comparaes
Quarto: no
Quinto: e
Sexto: ou
25
Exemplos:
A 3;
I I+1;
DELTA B*B - 4*A*C
TEM f also;
NOME ABACATE;
X1 raiz (DELTA);
RESTO N mod 2


26
Exemplo de um algoritmo em
Portugol :
incio
inteiro: A, B
A 1;
B 2;
se A > B
ento A 5;
seno A 10;
fim se
Exibir (A)
fim

27
Diagramas de Blocos
Incio e Fim do fluxo

Operaes seqenciais
Deciso
Entrada de dados
28
Diagrama de Blocos
Sada de dados
Conectores
Sentido do Fluxo

29
Inicio
A = 1;
B = 2;

A < B
V
A = 5;
A = 10;
F
Fim
30
Rastreando um Algoritmo
Uma vez desenvolvido um algoritmo, como saber se
ele faz o que se supe que faa?
Uma forma executar o algoritmo manualmente,
com dados representativos, utilizando lpis e papel
para registrar os valores tomados pelas variveis
em cada passo do algoritmo, a este processo
damos o nome de teste de mesa.

31
ALGORITMO
Tcnicas de Programao
PROGRAMA COMPUTACIONAL
(SOFTWARE)
Linguagem de
Programao
32
PROGRAMA
COMPUTACIONAL
Consiste na traduo de um algoritmo em uma
forma inteligvel para a mquina, o que feito com
o uso de uma Linguagem de Programao
Funo Bsica: Indicar ao computador as etapas
que precisam ser cumpridas para se
executar uma tarefa
33
PROGRAMA COMPUTACIONAL
Formulaes concretas de algoritmos abstratos,
baseados em representaes e estruturas especfica de
dados
Conjunto de informaes representadas de forma
compreensvel para o computador (mquina).
Utilizando uma linguagem de programao, a mquina
pode executar os passos estabelecidos no programa e
executar uma determinada tarefa.
34
Programao Estruturada
Wirth:

A arte ou tcnica de construir e formular
algoritmos de uma forma sistemtica
35
LINGUAGEM DE
PROGRAMAO
Linguagem que a mquina entende, direta
ou indiretamente.
Possui uma tcnica de notao para
programar, com inteno de servir de
veculo para:
a expresso de um raciocnio algortmico
execuo automtica de uma algoritmo no
computador
36
TIPOS DE LINGUAGEM
Linguagem de Mquina
Linguagem de Montagem
Linguagem de Alto Nvel
37
Linguagem de Mquina
Os computadores executam diretamente algoritmos
expressos em linguagem de mquina - um conjunto de
instrues capazes de ativar diretamente os dispositivos
eletrnicos do computador (utiliza somente os bits -
smbolos 0 e 1).
Desvantagens para os programadores
diferente para cada tipo de computador, pois depende
da arquitetura da mquina
extremamente difcil de programar (lembrar das
seqncias possveis de bits)
totalmente expressa em forma numrica (binria ou
hexadecimal) ou que torna pouco expressiva
38
Linguagem de Montagem
Facilitar a programao - possibilidade de programar
atravs de mnemnicos
Criou-se um sistema de codificao para representar as
instrues em linguagem de mquina. Este conjunto de
cdigos chamado Linguagem Montadora (Assembler -
Assembly Linguagem).
Exemplo desta linguagem, onde est sendo executada a
soma de 1+1.
PUSH AX MOV BX, 1
PUSH BX ADD AX, BX
MOV AX, 1 POP BX
POP AX



39
Linguagem de Alto Nvel
OBETIVOS:
Conseguir independncia em relao mquina,
podendo um mesmo programa ser utilizado em
diferentes equipamentos.
Aproximar-se da linguagem humana para que o
programa possa ser escrito e lido de uma
maneira mais simples, eliminando muitas das
possibilidades de se cometerem erros, presentes
no uso da linguagem de mquina.



40
Linguagem Ano
FORTRAN 1954-57
ALGOL 60 1958-60
COBOL 1959-60
APL 1956-60
LISP 1959-62
SNOBOL 1962-66
PL/I 1963-64
BASIC 1965
SIMULA 67 1967
ALGOL 68 1963-68
PROLOG 1970
BLISS 1971
PASCAL 1971
C 1972-74
MESA 1974
Concurrent PASCAL 1975
CLU 1974-77
EUCLID 1977
GYPSY 1977
41
PLZ 1977
MODULA 1977
ADA 1979
SMALLTALK
C++
OBJECT PASCAL
CLIPPER
VISUAL BASIC
VISUAL C++
DELPHI
42
Exemplo
43
Calcular o lucro obtido de um investimento de
R$ 42.5000,00, aps um perodo de um ano,
para uma taxa anual de remunerao de
17.55%. Todos os valores usados para o
clculo devero ser escritos pelo programa.

44
Etapas a serem cumpridas para a
resoluo do problema
1 Estabelecer os dados a serem usados para o
clculo do lucro.
2 Calcular o lucro.
3 Escrever todos os valores.

45
Refinando a soluo
1. Estabelecer os dados a serem usados para o
clculo do lucro.
1.1 Definir a quantidade principal investida como R$
42.500,00.
1.2. Definir a taxa de juros como 0.1755.
2. Calcular o lucro.
2.1. O lucro obtido a taxa de juros multiplicada pela
quantidade principal investida.
3. Escrever todos os valores.
3.1. Escrever a quantidade principal investida e a taxa de
juros.
3.2. Escrever o lucro obtido.

46
Escrevendo em Portugol
Programa investimento
Declarar
float cap, jur, luc;
Incio
{Definir a quantidade principal}
cap R$ 42.500,00;
{Definir a taxa de juros}
jur 17.55;
{O lucro obtido a taxa * principal}
Luc cap * jur / 100
Escrever ( cap, jur);
Escrever (luc);
Fim.

47
Desenvolva o fluxograma do
algoritimo para calcular o
emprstimo a partir do algoritmo
em portugol.

You might also like