Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ALGORITMOS
Prof. Stefano
1
Prof. Stefano
Introduo
Algoritmos
Fluxograma
Constantes e variveis
Operadores
Declaraes de Controle
Exerccios
2
Introduo
Lgica de programao:
Tcnica para gerar uma determinada sequncia de
atividades para atingir um determinado objetivo;
Sequncia Lgica:
So os diferentes passos ou instrues para solucionar um
problema;
Instrues:
So um conjunto de regras ou normas definidas para
realizao de uma atividade. uma ao elementar
executada pelo computador;
3
Algoritmos
Algoritmos uma maneira de formalizar uma
sequncia de passos para execuo de uma
atividade.
A formalizao necessria para que diferentes
pessoas possam entender e repetir os passos para
chegar a soluo do problema;
Ex.:
Executar a operao de soma em uma calculadora;
Fazer uma transferncia bancria;
Ajustar o horrio no celular;
Programar um DVD para gravar um programa;
4
Algoritmos
EXERCCIO 1:
Descreva passo a passo como voc faria para obter a
mdia de trs nmeros a seguir em sua calculadora;
MEDIA = 12 + 6 + 9
3
5
Fluxograma
Para representar graficamente um algoritmo
utilizaremos o fluxograma;
Um fluxograma a representao das diferentes
etapas de um processo atravs de elementos grficos
ligados conforme a lgica de programao;
Simbologia
Smbolo Funo
Incio ou Fim de um algoritmo
Processamento geral
Deciso
6
Fluxograma
EXERCCIO 2:
Implemente em um fluxograma o algoritmo do clculo da
mdia de trs nmeros a seguir em sua calculadora do
exerccio anterior;
7
Constantes e variveis
Identificadores: So nomes arbitrrios dados as
funes, variveis, constantes. Os identificadores
podem ser1 letras de A Z, nmeros de 0 9 e
_(underline). No pode comear com nmero.
Exemplos:
Temperatura_media
Temp
_T1
11
Operadores
Operador Aritmtico
- Subtrao
* Multiplicao
/ Diviso
% Resto da diviso
++ Incremento
-- Decremento
12
Operadores
Operador de Relao: eles testam as relaes nas
expresses. Seu resultado 1 se for verdadeiro ou 0
se for falso;
Operador Operao realizada
== Igual a
!= No igual a
13
Operadores
Exemplos de Operador de Relao:
4 = = 3; retorna 0 - FALSO
3 = = 3; retorna 1 - VERDADEIRO
7 > = 3; retorna 1 VERDADEIRO
4 < = 3; retorna 0 - FALSO
4 ! = 3; retorna 1 VERDADEIRO
4 > 3; retorna 1 VERDADEIRO
14
Operadores
Operadores lgicos: realizam operaes lgicas nas
expresses. Os operandos so considerados
verdadeiros(1) ou falsos(0). Seu resultado 1 se for
verdadeiro ou 0 se for falso;
Operador Operao realizada
&& AND
|| OR
! NOT (Negado)
15
Operadores
Exemplos de Operador Lgico:
a) (3 > 1) & & (2= = 2);
1 & & 1; resulta em 1 - verdadeiro
16
Operadores
Operadores Bit a Bit: eles testam as relaes dos
operadores nas expresses bit a bit;
| OR
^ XOR
~ NOT
17
Operadores
Exemplos de Operador Bit a Bit:
a) v1= 101101, v2=110011, v3 = v1 & v2; AND
v1 = 1 0 1 1 0 1
v2 = 1 1 0 0 1 1
v3 = 1 0 0 0 0 1
18
Operadores
Exemplos de Operador Bit a Bit:
c) v1= 101101, v2=110011, v3 = v1 ^ v2; XOR
v1 = 1 0 1 1 0 1
v2 = 1 1 0 0 1 1
v3 = 0 1 1 1 1 0
19
Operadores
Exemplos de Operador Bit a Bit:
e) v1= 000101, v2=v1 << 2; SHIFT LEFT (x 2)
= 001010; <<1
v2 = 010100; <<2
20
Declaraes de Controle
As declaraes controlam o fluxo de execuo de um
algoritmo, sendo assim de fundamental importncia
o domnio da sua correta utilizao;
Em uma linguagem de programao existem
diferentes declaraes, mas aqui, para um primeiro
contato, utilizaremos a declarao de controle
condicional;
21
Declaraes de Controle
Declarao de controle condicional
IF.......THEN....ELSE
SE......ENTO...SENO
Ele utilizado para executar um determinado
comando se uma determinada condio for
verdadeira. A opo ELSE no obrigatria.
Pergunta V
pergunta
? Comandos
Verdadeiro
Comandos
Falso
23
Declaraes de Controle
OPO 1: Somente verdadeiro;
Pergunta V
pergunta
? Comandos
Verdadeiro
24
Declaraes de Controle
OPO 1: Exerccio 4:
Considere um forno onde a temperatura limite seja
de 700 C. Se a temperatura atual do forno atingir
este valor o alarme deve ser ligado. Elabore um
algoritmo que implemente essa situao;
25
Declaraes de Controle
Resoluo In
Incio
Ler Tforno
V
Tforno >= 700 Ligar Alarme
In
Fim
A incluso da etapa de
leitura do sensor do forno,
considerando ser um sinal
analgico, foi colocada
aqui porque geralmente
requer um tratamento
adicional no programa.
26
Declaraes de Controle
CASO 2: Com verdadeiro e falso o algoritmo fica da
forma como j visto anteriormente;
Pergunta V
pergunta
? Comandos
Verdadeiro
Comandos
Falso
27
Declaraes de Controle
Exerccio 5: Na esteira abaixo quando o sensor S1 for
acionado o motor M1 deve ser ligado. Implemente
um algoritmo que atenda o solicitado.
S1
M1
28
Declaraes de Controle
Resoluo In
Incio
Ler S1
F
S1 == 1 M1= 0
M1= 1
S1 S2
M1
30
Declaraes de Controle
Resoluo
31
Declaraes de Controle
Exerccio 7: Na esteira abaixo a pea colocada na posio
dada pelo sensor S1, e com isso o motor M1 ligado, levando
a pea at o sistema de aquecimento. Neste instante o motor
M1 desligado e a pea espera 10 segundos, sendo o motor
M1 ligado novamente para levar a pea para o resfriamento,
quando ento o motor M1 desligado novamente,
aguardando agora 20 segundos neste estgio. Aps decorrido
o tempo o motor M1 ligado novamente para levar a pea
at a posio dada pelo sensor S4, quando o motor
desligado novamente. Implemente um algoritmo que atenda
o solicitado.
32
Declaraes de Controle
Resoluo
33
Declaraes de Controle
Exerccio 8: No sistema abaixo quando uma pea colocada
na posio dada pelo sensor S1 o motor M1 ligado, levando
a pea at o sensor S2 e caindo na caixa de sada. Sabe-se que
a caixa suporta at 20 peas. Implemente um contador(CONT)
para que somente quando somente 20 peas carem na caixa
o motor M1 desligado e a lmpada L1 ligada, alertando ao
operador da necessidade de trocar a caixa. Implemente um
algoritmo que atenda o solicitado.
34
Declaraes de Controle
Resoluo
35
Declaraes de Controle
Exerccio 9: No exerccio anterior foi acrescentado o
boto B1 no painel para que quando o operador
trocar a caixa ele ir apertar o boto a lmpada L1 ir
apagar, o motor M1 ligado novamente, o contador
zerado e o ciclo se inicia novamente.
36
Declaraes de Controle
Resoluo
37
Declaraes de Controle
CASO 3: IF ANINHADO. Quando vrios laos so
utilizados, um dentro de outro;
V
Pergunta1 Comandos1
?
V
Pergunta2 Comandos2
?
V
Pergunta3 Comandos3
?
N
Comandos4
38
Declaraes de Controle
Exerccio 10: No reservatrio da figura abaixo um
sensor mede o nvel (NIVEL) de lquido existente.
Elabore um algoritmo que controle o acionamento
das bombas de acordo com a tabela abaixo;
NIVEL B1 B2 B3
NIVEL>9 0 0 0
6<NIVEL9 1 0 0
2<NIVEL6 1 1 0
NIVEL2 1 1 1
39
Declaraes de Controle
Resoluo
40
Declaraes de Controle
Exerccio 11: No sistema de seleo da pgina
seguinte quando uma caixa colocada na posio
dada pelo sensor S1 o motor M1 ligado levando a
caixa at o sensor S5, quando ento desligado.
Implemente um algoritmo para que de acordo com o
tipo de caixa, dada pela figura e identificada no
sistema atravs do acionamento dos sensores S2,S3 e
S4, somente a lmpada correspondente fique ligada.
Esta lmpada somente poder ficar ligada at a caixa
correspondente chegar ao sensor S5. O sistema
contnuo. Implemente tambm um contador para
cada tipo de caixa.
41
Declaraes de Controle
42
Declaraes de Controle
Resoluo
43
REFERNCIAS
Robert Schildt. C completo e total.
Users Manual MikroC
Fbio Pereira. Programao em C
Notas de aula do Prof. Stefano
Curso bsico de lgica de programao.
Unicamp
44