Você está na página 1de 110

INSTITUTO FEDERAL DE EDUCAO, CINCIA E

TECNOLOGIA DE SO PAULO - CAMPUS VOTUPORANGA


Tecnlogo em Anl!"e e De"en#ol#!men$o %e
S!"$em&"
ALPO ' Algo(!$mo e P(og(&m&)*o
P(o+, MSc, An%(- L.!" Go//! P(!mo
&n%(e,go//!0!+"1,e%.,/(
P(o+, D(, E#&n%(o %e A(&.2o 3&(%!n!
e&2&(%!n!04&5oo,com,/(
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
2
2
Conceitos Gerais
Lgica
A lgica de programao necessria para pessoas que
desejam trabalhar com desenvolvimento de sistemas e
programas, ela permite definir a sequncia lgica para o
desenvolvimento
!nto o que lgica"
Lgica de programao a tcnica de encadear
pensamentos para atingir determinado objetivo.
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
3
#
Conceitos Gerais
Sequncia Lgica
!stes pensamentos, podem ser descritos como uma
sequncia de instru$es, que devem ser seguidas para se
cumprir uma determinada tarefa
Sequncia Lgica so passos executados at atingir um
objetivo ou soluo de um problema.
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
4
Algoritmos

Lgica de Programao

Como trocar o pneu de um carro?

Sair do carro

Abrir porta malas

Pegar ferramentas e o estepe

Desapertar os parafusos

Levantar o carro

Retirar os parafusos, o pneu furado

Colocar o estepe, colocar os parafusos

Descer o carro

Apertar os parafusos

Guardar ferramentas e pneu furado


nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
5
Algoritmos

Instrues

Em informtica, instruo a informao que indica a


um computador uma ao elementar a executar.

Convm ressaltar que uma ordem isolada no permite


realizar o processo completo, para isso necessrio
um conjunto de instrues colocadas em ordem
sequencial lgica.

Por exemplo, se quisermos fazer uma omelete de


batatas, precisaremos colocar em prtica uma srie
de instrues: descascar as batatas, bater os ovos,
fritar as batatas, etc...

evidente que essas instrues tem que ser


executadas em uma ordem adequada no se pode
descascar as batatas depois de frit-las.
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
6
Algoritmos

Algoritmo

Um algoritmo formalmente uma sequncia finita de


passos que levam a execuo de uma tarefa.

Podemos pensar em algoritmo como uma receita,


uma seqncia de instrues que do cabo de uma
meta especfica.

Estas tarefas no podem ser redundantes nem


subjetivas na sua definio, devem ser claras e
precisas.

Exemplo ...
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
7
%
Conceitos Gerais
Algoritmo (cont.
!Somar dois n"meros quaisquer!.
# $screva o primeiro n"mero no ret%ngulo A
# $screva o segundo n"mero no ret%ngulo &
# Some o n"mero do ret%ngulo A com n"mero do ret%ngulo
& e coloque o resultado no ret%ngulo '
&et'ngulo A &et'ngulo ( &esultado
) *
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
8
+
Conceitos Gerais
Algoritmo (cont.
$xerc(cios
) * +escreva com detal,es a sequncia lgica para -rocar um pneu de
um carro.
. * /aa um algoritmo para somar dois n"meros e multiplicar o
resultado pelo primeiro n"mero.
0 * /aa um algoritmo para trocar uma l%mpada. +escreva com
detal,es.
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
9
,
Conceitos Gerais
1rogramas
-
.s programas de computadores nada mais so do que
algoritmos escritos numa linguagem de computador /0ascal,
1)), 2ava, 3elphi, 040, 5et entre outras6 e que so
interpretados e e7ecutados por uma mquina, no caso um
computador
-
5otem que dada esta interpretao rigorosa, um programa
por nature8a muito espec9fico e r9gido em relao aos
algoritmos da vida real
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
10
:;
Conceitos Gerais
1rogramas (cont.
$xemplo.
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
11
::
Formas de Representao de
Algoritmos
+escrio -extual ou 2arrativa
<a8=se uso do portugus para descrever os passos para a
reali8ao da tarefa
!>!?0@.A &eceita de (oloA
= 0rovidencie manteiga, ovos, : Bg de farinha, etc
= ?isture os ingredientes
= 3espeje a mistura na fCrma de bolo
= @eve a fCrma ao forno
= !spere por 2; minutos
= &etire a fCrma do forno
= 3ei7e esfriar
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
12
:2
Formas de Representao de
Algoritmos
+escrio -extual ou 2arrativa (cont.
DA5EAF!5GA
= . portugus bastante conhecido por nsH
3!GDA5EAF!5GA
= imprecisoH
= pouca confiabilidade /a impreciso acarreta a
desconfiana6H
= e7tenso /normalmente, escreve=se muito para di8er
pouca coisa6
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
13
:#
Formas de Representao de
Algoritmos
/luxograma
-
. flu7ograma um tipo de algoritmo que utili8a s9mbolos
grficos para representar as a$es ou instru$es a serem
seguidas
-
Assim como o pseudocdigo, o flu7ograma utili8ado para
organi8ar o racioc9nio lgico a ser seguido para a resoluo de
um problema ou para definir os passos para a e7ecuo de uma
tarefa
-
Eambm utili8ado para documentar rotinas de um sistema,
mas s recomendado para os casos pouco e7tensos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
14
:I
Formas de Representao de Algoritmos
1seudolinguagens
. pseudocdigo um tipo de algoritmo que utili8a uma
linguagem fle79vel, intermediria entre a linguagem 5arrativa e
a linguagem de programao
J tambm para documentar rotinas de um sistema
A palavra KpseudocdigoL significa Kfalso cdigoL !sse nome
se deve M pro7imidade que e7iste entre um algoritmo escrito em
pseudocdigo e a maneira pela qual um programa
representado em uma linguagem de programaao
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
15
:N
Formas de Representao de
Algoritmos
1seudolinguagens (cont.
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
16
&egras para construo do Algoritmo
O
0ara escrever um algoritmo precisamos descrever a
sequncia de instru$es, de maneira simples e objetiva
O
0ara isso utili8aremos algumas tcnicasA
-
Psar somente um verbo por frase /1omandos em a8ul6
-
Qmaginar que voc est desenvolvendo um algoritmo
para pessoas que no trabalham com informtica
-
Psar frases curtas e simples /. que estiver entre aspas
em vermelho6
-
Ger objetivo
Formas de Representao de Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
17
<ases
O
J importante ressaltar que qualquer tarefa que siga
determinado padro pode ser descrita por um algoritmo,
como por e7emploA
= 1omo fa8er biscoitos
= 1alcular o volume total de chuva do ano passado
Formas de Representao de Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
18
<ases
O
!ntretanto ao montar um algoritmo, precisamos primeiro
dividir o problema apresentado em trs fases fundamentais
Formas de Representao de Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
19
<ases
O
.nde temosA
!5E&A3AA Go os dados de entrada do algoritmo
0&.1!GGA?!5E.A Go os procedimentos utili8ados para
chegar ao resultado final
GAR3AA Go os dados j processados Go as informa$es
Formas de Representao de
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
20
!7emplo de Algoritmo
O
Qmagine o seguinte problemaA
-
1alcular a mdia final dos alunos da disciplina de
algoritmos
O
A mdia calculada assimA /0: ) 02 ) 0# ) 0I6 SI
Formas de Representao de
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
21
$xemplo de Algoritmo
O
0ara montar o algoritmo proposto, faremos trs perguntasA
-
Tuais so os dados de entrada"
O
&A .s dados de entrada so 0:, 02, 0# e 0I
-
Tual ser o processamento a ser utili8ado"
O
&A . procedimento ser somar todos os dados de
entrada e dividi=los por I /quatro6
-
Tuais sero os dados de sa9da"
O
&A . dado de sa9da ser a mdia final

Assim temos o algoritmo...


Formas de Representao de Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
22
$xemplo de Algoritmo
O
Algoritmo
-
&eceba a nota da prova:
-
&eceba a nota de prova2
-
&eceba a nota de prova#
-
&eceba a nota da provaI
-
Gome todas as notas e divida o resultado por I
-
?ostre o resultado da diviso

: = !ntrada
2 = 0rocessamento
# = Ga9da
Formas de Representao de
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
23
$xerc(cios
O
Qdentifique os dados de entrada, processamento e sa9da no
algoritmo abai7o
-
&eceba cdigo da pea
-
&eceba valor da pea
-
&eceba Tuantidade de peas
-
1alcule o valor total da pea * /Tuantidade U Dalor da
pea6
-
?ostre o cdigo da pea e seu valor total
O
<aa um algoritmo para V1alcular o estoque mdio de uma
peaW, sendo queA
!stoque ?dio * /Tuantidade m9nima ) Tuantidade m7ima6 S2
Formas de Representao de Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
24
O
Dariveis e constantes so os elementos bsicos que um
programa manipula
O
Pma varivel A
-
Pm espao reservado na memria do computador para
arma8enar um tipo de dado determinado
-
1omo se fosse uma cai7a na memria &A? onde se
guarda os dados
-
1ada varivel seria uma cai7a na memria do
computador
Darivel
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
25
O
Dariveis devem receber nomes para poderem ser
referenciadas e modificadas quando necessrio
O
!7emplos de nomes de variveis
O
codigoXdaXpecaH au7H tempH dH tH volumeXchuvaH
temperaturaXambienteH casa:H totalH etc
O
.s nomes devem ter as seguintes propriedadesA
O
5o utili8ar espaos entre as letras
O
!m ve8 de volume de chuva, o correto seria
volumeXdeXchuva ou volumeXchuva
O
5o iniciar o nome da varivel com nYmeros
O
!m ve8 de 2valor, use valor2
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
26
O
.s nomes devem ter as seguintes propriedades
/continuando6A
-
5o utili8ar palavras reservadas, isto , palavras que so
utili8adas nos algoritmos para representar a$es
espec9ficas
O
A palavra se usada para representar uma condio
lgica
O
A palavra var usada para representar a rea de
declarao de variveis
-
5o utili8ar caracteres especiais, como acentos, s9bolos
/" A S Z [ \ etc6
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
27
O
!mbora uma varivel possa assumir diferentes valores, ela
s pode arma8enar um valor a cada instante
O
?ais e7emplos de variveisA
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
28
O
Pm programa deve conter declara$es que especificam de
que tipo de dados so as variveis que ele utili8ar e as
ve8es um valor inicial
O
.s tipos de dados indicam o que a varivel pode receber
O
Alguns tipos de dados
-
QnteiroA so para arma8enamento de nYmeros inteiros
-
&ealA so para o arma8enamento de nYmeros que
possuam casas decimais
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
29
-
@iteralA !spec9ficas para dados que contenham letras eSou
nYmeros
O
0ode em determinados momentos conter somente
dados numricos ou somente literais
O
Ge usado somente para arma8enamento de nYmeros,
no poder ser utili8ada para opera$es matemticas
O
A atribuio direta a uma varivel do tipo literal deve
ser feita usando aspas VvalorW
]
!7emploA ingrediente ^= VfarinhaW
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
30
O
Pma constante
-
um determinado valor fi7o que no se modifica ao
longo do tempo, durante a e7ecuo de um programa
O
1onforme o seu tipo, a constante classificada como sendo
numrica, lgica e literal
O
!7emplo de constantesA
O
Eoda constante tem de ter um nome, seguindo as regras das
variveis
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
31
-
+eclarao de 3ari4veis
O
As variveis ou constantes, antes de serem utili8adas,
devem ser declaradas numa seo do prprio algoritmo
O
!sta seo definida com a palavra reservada var
O
5a declarao de uma varivel deve ser indicado seu nome
e seu tipo de dado
O
!7emploA
var
produto A literal
numero A inteiro
precoXvenda, precoXcompra Areal
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
32
-
+eclarao de 3ari4veis
O
As constantes so declaradas na seo const, antes da seo
var ?uitas ve8es as constantes so opcionais em um
algoritmo
O
!7emplo
Const
Pi = 3.1415
O
Pm e7emplo mais completo
Const
taxa_juro = 3.1415
Var
Produto : literal
Numero : inteiro
preco_venda, preco_compra :real
Atributos, Constantes e Tipo de Dados
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
33
/ormato &4sico do Algoritmo em 3isual5
O
. formato bsico de um algoritmo o seguinteA
algoritmo _semnome_
var
SS declarao das constantes
inicio
SS Geo de 1omandos
fimalgoritmo
.nde ,
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
34
/ormato &4sico do Algoritmo em 3isual5
O
algoritmo _semnome_
-
Qndica o nome do algoritmo !ntre aspas 5o pode ter
variveis ou constantes com esse nome
O
Dar
-
Qndica as variveis do algoritmo
O
Qnicio
-
Qndica o in9cio do algoritmo
fimalgoritmo
-
Qndica o final do algoritmo
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
35
Se6es de Algoritmo no 3isual5
O
e!"o: #l$oritmo
-
Qndica o nome do algoritmo
-
Geu nome de vir entre aspas
O
e!"o: Var
-
Qndica as variveis do algoritmo
O
e!"o: %nicio e &im#l$oritmo
-
Aqui ser desenvolvido o algoritmo
-
Gempre /salvo raras e7ce$es6 deve haver as etapasA
O
!ntrada de dados
O
0rocessamento
O
Ga9da de informa$es
-
!7emplo
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
36
Se6es de Algoritmo no 3isual5
O
e!"o: %nicio
inicio
escreva '(%n)orme o primeiro numero:(*
leia'num1*
escreva '(%n)orme o se$undo numero:(*
leia'num+*

resp ,- num1.num+

escreva '(/ resultado da soma e0:(, resp*
&im#l$oritmo



$ntrada
1rocessamento
Sa(da
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
37
'omandos de Sa(da
O
Comando 1screva e 1screval
-
?ostra na tela o que estiver entre aspas
-
Em as finalidade de guiar o usurio pelo algoritmo e de
mostrar os resultados dos processamentos
-
0ara variveis reais, pode=se deve se especificar o
nYmero de casas fracionrias que sero e7ibidas
O
0or e7emploA
O
1onsiderando 2 como uma varivel real, o comando
escreva'2:3:+* escreve seu valor em ` espaos
colocando 2 casas decimais
-
. 1xcreval fa8 com que o cursor v para linha de bai7o
aps a frase
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
38
'omandos de $ntrada
O
Comando de 4eia
-
&ecebe valores digitados pelos usurio, atribuindo=os Ms
variveis cujos nomes esto entre parenteses
-
!7emplo
al$oritmo (exemplo 1(
var x: inteiro
inicio
escreva '51screva o valor de 6:7*
leia (x)
escreva 'x*
)imal$oritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
39
7perador de atribuio
O
# atri8ui!"o de vari9veis : )eita pelo operador 5,-7
-
0or e7emplo
O
Ge a varivel resp arma8ena o resultado da equao 7
) a, a linha de comando deve ser a seguinteA
]
&esp ^= 7 ) a
-
0osso fa8er atribui$es diretas Ms variveis
O
!7emplo
]
. pi sempre tem valor fi7o, ento no in9cio do
algoritmo, eu j atribuo o valor a eleA
]
pi ^= #:I:N
]
Atribuindo um valor literal
]
nome ^= V2ooW
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
40
$xerc(cios
O
3esenvolva em portugus estruturado algoritmos para
resolver as seguintes equa$es
-
7Ua
-
7b)a /para fa8er 7b, useA 7U7 ou 7c26
-
/ISr6 U /d)r6
O
3esenvolva um algoritmo queA
-
0ea o nome do usurio
-
0ea o ano de nascimento
-
1alcule a idade em dias
-
?ostre a idade calculada,
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
41
$xerc(cios (complete
)
O
Algoritmo
O
var
O
5omeA
O
O
!screva /VQnforme seu nomeAW6
O
O
!screva /VGeu nome AW6
O
fimalgoritmo
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
42
$xerc(cios (complete
.
O
O var
O
AlunoA
O 5ota, resultA
O inicio
O
O leia/aluno6
O
O
O &esult e nota ) :N
O !screva /Aluno, V, sua nota acrescida de :N AW, 6
O
fimalgoritmo
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
43
$xerc(cios (complete
0
O algoritmo
O
O base, altura, areaAreal
O inicio
O escreva /_Qnforme a base do quadradoA_6
O leia/base6
O escreva /_Qnforme a altura do quadradoA_6
O
O ^= base U altura
O /_. valor da rea do quadrado A_, 6
O fimalgoritmo
Algoritimos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
44
Algoritmos

Porcentagem

Para calcular o aumento de porcentagem use a seguinte


frmula:

Preco 100

Aliq 30 (30%)

Preco_novo <- preco + (preco * (aliq / 100))

Para calcular o desconto de porcentagem:


O
Preco 100
O
Aliq 20 (20%)
O
Preco_novo <- preco - (preco * (aliq / 100))
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
45
Algoritmos

Exerccios

Desenvolva um algoritmo que:

Pea o valor do produto

Pea a valor da alquota

Calcule o valor em reais da porcentagem informada. Use a


varivel result.

Faa um algoritmo que:


- Pea o valor a prazo do produto
- Pea a alquota do desconto
- Calcule o preo a vista do produto

Desenvolva um algoritmo para clculo de salrio lquido de


funcionrio. O algoritmo deve:
- Pedir o salrio bruto do funcionrio
- Calcular o valor do R com alquota de 10%
- Calcular o valor do NSS com alquota de 5%
- Calcular o salrio lquido do funcionrio
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
46
Algoritmos

Exerccios

Desenvolva um algoritmo para calcular o montante resultante de


um capital aplicado a juros compostos. Voc deve pedir o capital
(C), a taxa de juros () e o tempo (N). Com essas variveis, voc
deve calcular o montante (M) pela frmula:
-
M < - C * (1+(/100)) ^N
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
47
Algoritmos

Operadores

Os operadores so meios pelo qual:

incrementamos,

decrementamos,

comparamos e

avaliamos dados dentro do computador.

Temos trs tipos de operadores:

Operadores Aritmticos

Operadores Relacionais

Operadores Lgicos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
48

Operadores Aritmticos

Os operadores aritmticos so os utilizados para obter


resultados numricos.

Alm da adio, subtrao, multiplicao e diviso, podem


utilizar tambm o operador para exponenciao.

Os smbolos para os operadores aritmticos so:


8
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
49

Operadores Aritmticos

Hierarquia das Operaes Aritmticas


1 - ( ) - Parnteses
2 - Exponenciao
3 - Multiplicao, diviso (o que aparecer primeiro)
4 - Adio ou subtrao (o que aparecer primeiro)
8
9
*
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
50

Operadores Relacionais

Os operadores relacionais so utilizados para comparar


String (literal) de caracteres e nmeros.

Os valores a serem comparados podem ser caracteres ou


variveis.

Estes operadores sempre retornam valores lgicos


(verdadeiro ou falso/ True ou False)

Os operadores relacionais so:


Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
51

Operadores Relacionais

Exemplo:

Tendo duas variveis A = 5 e B = 3

Os resultados das expresses seriam:


Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
52

Operadores Lgicos

Os operadores lgicos servem para combinar resultados


de expresses, retornando se o resultado final verdadeiro
ou falso.

Os operadores lgicos so:

O tipo de dado que recebe valores lgico o LOGICO.

Continua ...
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
53

Operadores Lgicos

E (Conjuno)

Uma expresso E verdadeira se todas as condies


forem verdadeiras

OU (Disjuno)

Uma expresso OU verdadeira se pelo menos uma


condio for verdadeira

No (Negao)

Uma expresso NAO inverte o valor da expresso ou


condio, se verdadeira inverte para falsa e vice-versa.
O
mportante:

A ordem de precedncia : nao, e, ou


Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
54

Operadores Lgicos

Tabelas Verdade
Algoritmos
e ou
A B A e B A B A ou B
V V V V V V
V F F V F V
F V F F V V
F F F F F F
no
A no A
V F
F V
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
55

Operadores Lgicos

Exemplos:

Suponha que temos trs variveis A = 5, B = 8 e C =1

Os resultados das expresses seriam:


Algoritmos
!
.P
5A.
!
.P
5A.
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
56

Operadores Ordem de Preced!ncia

A ordem de precedncia Geral a seguinte:


-
( ) ou [ ] : parnteses ou colchetes
-
^ : potenciao
-
(* ou /) e depois (+ ou -) : operadores aritmticos
-
: operador de atribuio
-
=,<, >, <=, >=, <> : operadores relacionais
-
Nao, e, ou : operadores lgicos (nessa ordem)
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
57

Exerccios

Tendo as variveis SALARO, R e SALLQ, e


considerando os valores abaixo. nforme se as expresses
so verdadeiras ou falsas.

Sabendo que A=3, B=7 e C=4, informe se as expresses


abaixo so verdadeiras ou falsas.

(A+C) > B ( )

B >= (A + 2) ( )

C = (B A) ( )

(B + A) <= C ( )

(C+A) > B ( )
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
58

Exerccios

Sabendo que A=2, B=4 e C=3 e D=6 e T:logico, informe se


as expresses abaixo so verdadeiras ou falsas.

T (A > C) e (C <= D) ( )

T (A+B) > 10 e (A+B) = (C+D) ( )

T (A>=C) ou (D >= C) ( )

T No A=2 e B=7 ( )

T A<5 e B>2 ou B <>7 ( )

Considere os seguintes valores para as variveis


-
A 8; B 5; C -4; D 2; X:inteiro; Y:logico

X (A + B) 10 * C = ( )

X A + B 10 * C => ( )

Y A > 8 e B + C > D ( )

Y A > 3 * 2 ou B + C <> D ( )
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
59

Exerccios " #esen$ol$er Algoritmo

Voc foi encarregado de desenvolver o mdulo de clculo


da folha de pagamento de uma empresa.

O funcionamento do algoritmo deve ser o seguinte:


-
Pea o nome do empregado.
-
Pea o salrio bruto
-
Pea o valor do mposto de Renda em reais que ser
descontado
-
Pea o valor da previdncia (NSS) em reais que ser
descontado.
-
Calcule o valor do salrio lquido do empregado
-
nforme o salrio lquido com a seguinte frase:
O
Fulano, seu salrio lquido : ......
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
60

Exerccios " #esen$ol$er Algoritmo

Voc foi encarregado de desenvolver o mdulo de clculo


de passagens de uma empresa de nibus.

O funcionamento do algoritmo deve ser o seguinte:


-
Pea o destino do passageiro.
-
Pea a distncia em Quilmetro do destino.
-
Pea quantos pedgios tem no caminho.
-
Calcule o acrscimo de R$ 2,00 de tarifa de embarque.
-
Calcule acrscimo de R$ 0,45 por quilmetro rodado
-
Calcule acrscimo de R$ 9,00 por pedgio no caminho.
-
Calcule um acrscimo de 80% sobre o resultado at agora
calculado. Este ser o preo da passagem
-
nforme o valor da passagem para o passageiro com a
seguinte frase:
O
Passageiro, a passagem custa: ......
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
61

Estrutura de #eciso

So utilizadas quando h a necessidade de verificar


condies para a realizao de uma instruo ou de
sequncia de instrues.

Os comandos de deciso ou desvio fazem parte das


tcnicas de programao que conduzem a estruturas de
programas que no so totalmente sequenciais

As principais estruturas de deciso so:

Se Ento fimse

Se Ento Seno fimse


Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
62

Estrutura de #eciso

Se Ento fimse

A estrutura de deciso "SE normalmente vem


acompanhada de um comando,

ou seja, se determinada condio for satisfeita pelo


comando SE ento execute determinado comando.

magine um algoritmo que determinado aluno somente


estar aprovado se sua mdia for maior ou igual a 6.0, o
algoritmo como ficaria assim:
se (MEDA >= 5.0) entao
escreva("ALUNO APROVADO)
fimse
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
63

Estrutura de #eciso

Se Ento

Exemplo de um algoritmo que verifica se o nmero


digitado foi par ou impar:
algoritmo "par ou impar"
var num : inteiro
inicio
escreva ("Informe um nmero:"!
leia (num!
se num mo" # $ % entao
escreva ("Nmero par"!
fimse
se num mo" # &' % entao
escreva ("Nmero impar"!
fimse
fimalgoritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
64

Estrutura de #eciso

Se Ento

Exemplo de um algoritmo que verifica se o usurio


deseja executar a equao 1 (()*! ou a 2 ((+,-*!:
algoritmo "e.ua/o 0 ou #"
var opc, (, *, resp : inteiro
inicio
escreval ("1elecione 0 para resolver: 2)3"!
escreval ("1elecione # para resolver: 2+, -
3"!
leia (num!
se opc $ 0 entao
escreva ("Informe o valor "e 2:"!
leia ((!
44444
fimse

se opc $ # entao
escreva ("Informe o valor "e 3:"!
leia (*!
44444
fimse
fimalgoritmo

Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
65

Estrutura de #eciso

Se Ento

Exemplo de um algoritmo que verifica se os nmeros


informados pelo usurio so maiores do que 100:
algoritmo "Maior do que 100"
var num1, num2 : inteiro
inicio
escreva ("nfome o numero 1:")
leia (num1)
escreva ("nfome o numero 2:")
leia (num2)
se (num1 > 100) e (num2 > 100)entao
escreva ("Os nmeros so maiores do que 100")
fimse
se (num1 <= 100) ou (num2 <= 100) entao
escreva ("Pelo menos um nmero no maior do que 100")
fimse
fimalgoritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
66

Estrutura de #eciso

Se Ento Exerccios

Faa um algoritmo que pea o nome do usurio, sua idade.


Se a idade for maior que 18 anos, escreva: Fulano, voc j
pode obter sua CNH; Se a idade for menor que 18 anos,
escreva: Fulano, voc no pode obter sua CNH;

Faa um algoritmo que pea dois nmeros e determine, para


o usurio, o maior deles.

Paulo Afonso (PA) estava com dvidas de qual seria sua nota
bimestral e se ela estaria ou no dentro da mdia.
Considerando que a mdia 6.0 e que o clculo da mesma
realizado pela equao PROVA*0.8 + TRAB*0.2, desenvolva
um algoritmo que pea as respectivas notas a PA e determine
se ele est na mdia bimestral ou no.

Construa um algoritmo que leia o valor de uma conta de luz


(CL) e, caso o valor seja maior que R$ 80,00 apresente a
mensagem: "Voc est gastando muito. Caso contrrio exiba
a mensagem: "Seu gasto foi normal.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
67

Estrutura de #eciso

Se Ento Senao fimse

A estrutura de deciso SE/ENTO/SENO, funciona


exatamente como a estrutura "SE, com apenas uma
diferena:

SE somente pode executar comandos caso a


condio seja verdadeira.

SE/SENO um comando ser executado


independente da condio, ou seja, caso a condio
seja "verdadeira o comando da condio ser
executado, caso contrrio o comando da condio
"falsa ser executado.

Exemplo:
se MEDA >= 5.0 entao
escreva ("ALUNO APROVADO)
senao
escreva ("ALUNO REPROVADO)
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
68

Estrutura de #eciso

Se Ento

Exemplo de um algoritmo que verifica se os nmeros


informados pelo usurio so maiores do que 100:
algoritmo "Maior do que 100"
var num1, num2 : inteiro
inicio
escreva ("nfome o numero 1:")
leia (num1)
escreva ("nfome o numero 2:")
leia (num2)
se (num1 > 100) e (num2 > 100) entao
escreva ("Os nmeros so maiores do que 100")
senao
escreva ("Ambos os nmeros no so maiores do que 100")
fimse
fimalgoritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
69

Estrutura de #eciso

Se Ento

Conceder bnus de 10% para os funcionrios que


trabalham 5 anos ou mais e de 5% para os demais:
algoritmo "aumento"
var salario :real
tempo :inteiro
inicio
escreva ("nforme o salrio:")
leia (salario)
escreva ("nforme o tempo de servio:")
leia (tempo)
se (tempo >= 5) entao
salario <- salario * 1.1
senao
salario <- salario * 1.05
fimse
fimalgoritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
70

Estrutura de #eciso

Se Ento - Encadeada

uma sequncia de testes de seleo, os quais sero


exercitados ou no de acordo com o resultado das
condies e de acordo com o encadeamento dos testes.

Considere o exemplo:
O
Elaborar um programa que efetue o clculo do
reajuste de salrio de um funcionrio. Considere
que o funcionrio deva receber um reajuste de 15%
caso seu salrio seja menor que 500. Se o salrio
for maior ou igual a 500, mas menor ou igual a
1000, seu reajuste ser de 10%; caso seja ainda
maior que 1000, o reajuste ser de 5%.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
71


algoritmo _&eajusta Galario_
var
salario,novoXsalarioA real
inicio
escreva /_3igite o salario atual do empregadoA _6
leia /salario6
se /salario ^ N;;6 entao
novoXsalario ^= salario U ::N
senao
se /salario ^* :;;;6 entao
novoXsalario ^= salario U ::;
senao
novoXsalario ^= salario U :;N
fimse
fimse
escreva /_. empregado teve o salario reajustado paraA_, novoXsalario6
fimalgoritmo
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
72

Estrutura de #eciso

Se Ento - Exerccios

Desenvolva um algoritmo que pea 1 nmero e verifique


se maior ou menor ou igual a 100.

Voc est fazendo um trabalho de classificao de solo.


Aps colher uma amostra e verificar a porcentagem de
gua presente nela, classificou a amostra em:

Rochosa: se menos ou igual a 10% de gua

Firme: se mais do 10% e menos ou igual a 40%

Pantanosa: se mais do 40 e menos ou igual a 80%


Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
73

Estrutura de #eciso

Se Ento - Exerccios

Construa um algoritmo que determine quanto ser gasto para


encher o tanque de um carro. O usurio fornecer os
seguintes dados: Preo do Etanol (PE), Preo da Gasolina
(PG), Tipo de carro (TC) (G gasolina ou A lcool) e
Capacidade do tanque (CT), em litros. Aps a escolha do tipo
de veculo e da capacidade do tanque, como sada, ser
informado para o usurio, o valor, em reais, do preo de se
enche tanque de combustvel.

Construa um algoritmo que, recebendo os valores de vendas


do ms de determinado vendedor (VM) e o nome do mesmo
(NOME), apresente o nome, quando o valor da venda estiver
entre R$ 10.000,00 e R$ 50.000,00 (inclusive) e a mensagem
"A venda est baixa, caso a venda ela seja menor do que R$
10.000,00.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
74

Estrutura de #eciso

Caso

Em algumas situaes ao chegarmos a uma determinada


instruo de um algoritmo devemos selecionar um dentre
alguns trechos a seguir, tendo como base para esta escolha
um conjunto de valores.

Exemplo: Testar o valor do estado civil de um determinado


usurio (Solteiro,Casado,Divorciado,Vivo); testar o tipo
sanguneo (A,B,O,AB), entre outros exemplos.

O Comando CASO, tem o seguinte formato:


Algoritmos
escolha /varivel6
caso valor::, valor:2, , valor:n
SSsequncia=de=comandos=:
caso valor2:, valor22, , valor2m
SSsequncia=de=comandos=2

outrocaso
SSsequncia=de=comandos=e7tra
fimescolha
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
75

Estrutura de #eciso

Caso Exemplo 1
Algoritmos
var timeA literal
inicio
escreva /_!ntre com o nome de um time de futebolA _6
leia /time6
escolha time
caso _<lamengo_, _<luminense_, _Dasco_, _(otafogo_
escreval /time, _ um time carioca_6
caso _Gantos_, _Go 0aulo_, _0almeiras_, _1orinthians_
escreval /time,_ um time paulista_6
outrocaso
escreval /time, _ de outro estado_6
<imescolha
fimalgoritmo
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
76

Estrutura de #eciso

Caso Exemplo 2
Algoritmos
var valor, resultA real
formaXpagtoAliteral
inicio
escreva /_!ntre com o valor da mercadoriaA_6
leia /valor6
escreva /_!ntre com a forma de pagamento /a vista, cheque, dinheiro, carto6A_6
leia /formaXpagto6
escolha formaXpagto
caso _a vista_, _cheque_, _dinheiro_
result ^= valor = /valor U ;:6
escreval /_. valor a ser pago com :;f de desconto A_, resultA:;A26
caso _cartao_
result ^= valor = /valorU;;N6
escreval /_. valor a ser pago com Nf de desconto A_, resultA:;A26
fimescolha
fimalgoritmo
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
77

Estrutura de #eciso

Caso Exerccio
-
Faa um algoritmo que pea ao usurio
escolher entre as cidades: Votuporanga,
Fernandpolis, turama, Uberlndia. Se for uma
das duas primeiras, mostre a frase: uma
cidade paulista e a capital So Paulo. Se
forma uma das duas ltimas, escreva: uma
cidade mineira e a capital Belo Horizonte.

Exerccio extra (sem o comando caso)


-
Escreva um algoritmo que leia as idades de 2
homens e de 2 mulheres (considere que as
idades dos homens sero sempre diferentes
entre si, bem como as das mulheres). Calcule e
escreva a soma das idades do homem mais
velho com a mulher mais nova, e o produto das
idades do homem mais novo com a mulher
mais velha.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
78

Estrutura de Repetio

Em determinadas situaes, temos de repetir o programa


ou parte dele vrias vezes, como no clculo das mdias
das notas de um grupo de alunos.

Reiniciar o programa para cada clculo no uma soluo


muito prtica e algumas vezes invivel.

O conceito de repetio (looping) utilizado quando se


deseja repetir um certo trecho de instrues por um
nmero de vezes

O nmero de repeties pode ser conhecido anteriormente


ou no, mas necessariamente precisa ser finito.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
79

Estrutura de Repetio

Estrutura 5A6A

A estrutura de repetio PARA tambm conhecida


como Looping com vari7vel "e controle.

Esta estrutura tem o seu funcionamento controlado por


uma varivel denominada contador.

Sendo assim, poder executar um determinado conjunto


de instrues um determinado nmero de vezes.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
80

Estrutura de Repetio

Estrutura 5A6A

Sintaxe:
para &vari7vel "e controle' &8 &in9cio' ate &fim' faca
&instru/:es'
fimpara

mportante:

A vari7vel "e controle deve ser do tipo inteiro.

Exemplo:
para i &8 0 ate #% faca
a &8 i + #
fimpara
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
81

Estrutura de Repetio

Estrutura 5A6A

Considere o exemplo:

Faa um algoritmo que mostre na tela a mensagem:


"Linha X. Onde X ser um nmero que partir do 1
at o valor mximo estipulado pelo usurio.
algoritmo " 5rimeiro La/o"
var
i, ma( :inteiro
inicio
escreva ("Informe o valor m7(imo "o loop:"!
leia (ma(!
para i&80 ate ma( faca
escreval("Lin;a " , i!
fimpara
fimalgoritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
82

Estrutura de Repetio

Estrutura 5A6A

Considere o exemplo:

Faa um algoritmo que mostre a tabuada de um


nmero qualquer.
algoritmo "ta<ua"a"
var
i, ta< :inteiro
inicio
escreva ("Informe a ta<ua"a:"!
leia (ta<!
escreval ("A ta<ua"a "o nmero " , ta<, " =:"!
para i&80 ate 0% faca
escreval(i, " (" ,ta<, " ", i + ta<!
fimpara
fimalgoritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
83

Estrutura de Repetio

Exerccios

1) Faa um algoritmo para calcular a tabuada do 2.

2) Faa um algoritmo para calcular as tabuada do 4 e do


8.

3) Escreva um algoritmo para mostrar na tela os valores


do 1 at max, onde max um nmero definido pelo
usurio.

4) Altere o algoritmo 2 para mostrar simultaneamente os


valores da tabela 4 e 8, desta maneira:
O
4 x 1 = 4
O
8 x 1 = 8
O
4 x 2 = 8
O
8 x 2 = 16
O
4 x 3 = 12
O
> ( , $ #?
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
84

Estrutura de Repetio

Estrutura 5A6A

Considere o exemplo:

Apresentar os nmeros divisveis por 3 que estejam


entre 4 a 12.
algoritmo "@ivis9vel por ,"
var
i:inteiro
resp :real
inicio
escreval ("Os nmeros "ivis9veis por , so:"!
para i&8? ate 0# faca
se (i mo" , $ %! entao
escreval("Altiplo "e ,:", i!
fimse
fimpara
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
85

Estrutura de Repetio

Estrutura 5A6A

Considere o exemplo:

D 3 tentativas para o usurio adivinhar a senha:.


algoritmo "1en;a"
var
i:inteiro
1en;a : literal
inicio
para i&80 ate , faca
escreva(B@igite a sen;a:C!
Leia (sen;a!
se (sen;a $ B0#,?DEC! entao
escreval("Acesso li<era"oC!
1enao
Escreva (B1en;a Invali"aC!
fimse
fimpara
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
86

Estrutura de Repetio

Estrutura 5A6A

Algoritmo para calcular a mdia de 4 nmeros


fornecidos pelo usurio.
algoritmo "A="ia"
var
i:inteiro resp, valor :real -+ Na pr7tica isso no po"e4+-
inicio
escreval ("FocG "ever7 informar ? valores:"!
para i&80 ate ? faca
escreva("Informe o ", i, " valor:"!
leia(valor!
resp &8 resp ) valor
fimpara
resp &8 resp - ?
escreva ("A m="ia "os nmeros =:" , resp!
fimalgoritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
87

Estrutura de Repetio

Estrutura 5A6A 8 Composta

um comando PARA dentro de outro PARA

Apresentar as tabuadas do 1 ao 5.
algoritmo "Ha<ua"as"
var
i, ii:inteiro
inicio
escreval ("Ha<ua"as"!
para i&80 ate D faca
escreval ("++++Ha<ua"a "o ", i!
para ii &8 0 ate 0% faca
escreval(ii, " ( " , i, " $", i+ii!
fimpara
fimpara
fimalgoritmo
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
88

Estrutura de Repetio

Estrutura 5A6A 8 E(erc9cios

Apresentar todos os valores numricos inteiros mpares


situados na faixa de 100 a 200.

Escreva um algoritmo para o usurio entrar com uma


senha. A cada tentativa errada, mostra a frase:Tentativa
errada nmero X onde X ser substitudo pelo valor de i

Apresentar o total da soma obtido de N nmeros inteiros


onde N um nmero digitado pelo usurio.

Elaborar um algoritmo para calcular o fatorial de um


nmero fornecido pelo usurio.Entretanto o nmero
deve estar entre 1 a 10. Dica: o fatorial calculado
assim:
O
4! = 1 x 2 x 3 x 4 = 24
O
6! = 1 x 2 x 3 x 4 x 5 x 6 = 720
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
89

Estrutura de Repetio % Enquanto...Faca


O
Na estrutura en.uanto, a condio de repetio
verificada antes de entrar no lao.
-
sto , ela testada no incio do lao.
O
Se o resultado for verdadeiro, o bloco de instrues ser
executado.
O
Sintaxe:
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
90

Estrutura de Repetio % Enquanto...Faca


O
Exemplo:
-
Faa um algoritmo que mostre a tabuada de um
nmero qualquer.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
91

Estrutura de Repetio % Enquanto...Faca


O
Exemplo:
-
Apresentar os nmeros de 1 a 10.
Algoritmos
var
iAinteiro
inicio
i ^= ;
enquanto i ^ :; faca
i ^= i ):
escreval /_Dalor de iA_,i6
fimenquanto
fimalgoritmo
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
92

Estrutura de Repetio % Enquanto...Faca


O
Exemplo:
-
Apresentar os nmeros divisveis por 3 que estejam
entre 4 a 12.
Algoritmos
var
ini, fim,resultAinteiro
inicio
ini ^= I
fim ^=:2
enquanto ini ^ fim faca
se ini mod # * ; entao
escreval /_. nYmero _, ini, _ mYltiplo de #_6
fimse
ini ^= ini ):
fimenquanto
fimalgoritmo
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
93

Estrutura de Repetio % Enquanto...Faca


O
Exerccio:
-
Altere o exemplo anterior para que o usurio entre com
o valor de N e FM. Faa tambm a somatria dos
nmeros mltiplos de 3.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
94

Estrutura de Repetio % Enquanto...Faca


O
Exemplo:
-
Construo de um menu
Algoritmos
var
opcAinteiro
inicio
opc ^= ;
enquanto opc ^g # faca
escreval /_: = inserir_6
escreval /_2 = pesquisar_6
escreval /_# = sair_6
escreva /_!scolha a opoA_6
leia/opc6
se opc * : entao
escreval /_Doc escolheu a opo :_6
fimse

se opc * 2 entao
escreval /_Doc
escolheu a opo 2_6
fimse
fimenquanto
fimalgoritmo
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
95

Estrutura de Repetio % Enquanto...Faca


O
Exerccios
O
Faa um algoritmo para somar os nmeros pares < 1000 e
ao final imprimir o resultado. Faa com o comando para e
o en.uanto.
O
Faa um programa que fique mostrando a mensagem
BComan"o en.uantoC. A cada frase mostrada, d a opo
para que o usurio escolha se continua ou no.
O
Escreva um algoritmo que solicita ao usurio para digitar
um nmero inteiro positivo, e mostre-o por extenso. Este
nmero dever variar entre 1 e 5. Se o usurio introduzir
um nmero que no pertena a este intervalo, mostre a
frase "nmero invlido. O programa deve ficar
executando at que o usurio digite 0.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
96

&etores
O
Os vetores consistem em uma tcnica de programao
que permite trabalhar com o agrupamento de vrias
informaes dentro de uma mesma varivel.
O
Este agrupamento ocorrer obedecendo sempre ao
mesmo tipo de dado, e por esta razo chamado de
estruturas de dados homogneas ou matriz.
O
Caracteriza-se por ser definida uma nica varivel
dimensionada com um determinado tamanho.
O
A dimenso de uma matriz constituda por constantes
inteiras e positivas.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
97

&etores
O
Considere o exemplo:
O
O clculo da mdia seria feito da seguinte maneira:
-
1oma&8A@0)A@#)A@,)A@?)A@D)A@E)A@I)A@>
-
Ae"ia&8soma->4
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
98

&etores
O
Para o exemplo, foram utilizadas 8 variveis
O
Com o uso do vetor utilizar-se- apenas uma.
O
A representao com vetor seria assim:
-
MD[1]=4.5;
-
MD[2]=6.5;
-
MD[3]=8.0;
-
MD[4]=3.5;
-
MD[5]=6.0;
-
MD[6]=7.0;
-
MD[7]=6.5;
-
MD[8]=6.0
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
99

&etores
O
Observe que o nome um s, o que muda a informao
indicada dentro dos colchetes.
O
A esta informao d-se o nome de ndice, sendo este o
endereo onde o elemento est armazenado.
O
Para definir um vetor utiliza-se a seguinte sintaxe:
-
variavel : Matriz[<dimenso>] de <tipo de dado>
O
Desta forma utilizaria-mos no exemplo :
-
Far A@ : vetorJ044>K "e realL
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
100

&etores
O
A leitura e escrita da matriz feita passo a passo, um
elemento por vez com as instrues leia e escreva, como
as variveis simples, embora deva-se observar o ndice.
O
Exemplos:
-
Escreva A@J#K {este comando escrevera o valor 6.5}
-
Leia (A@J0K! {este comando efetua a leitura de um
valor para a nota do 1 aluno}
-
Escreva MD[3] {este comando escrevera o valor 8}
-
Leia (MD[7]) {este comando efetua a leitura de um
valor para a nota do 7 aluno}
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
101

&etores
O
Exemplo1: Abaixo apresentado o algoritmo da leitura da
notas dos 8 alunos, clculo da mdia e a apresentao da
mesma e apresentao das notas lidas.
Algoritmos
0rograma mdiaXturma
Dar
?3 A vetorh:+i de real
Goma, media A realH
Q A inteiroH
Qnicio
Goma^=;
0ara i de : at + faa
!screva/V3igite a notaAW6
@eia ?3hii
Goma^=soma)?3hii
<impara
0ara i de : at + faa
Goma^=soma)?3hii
<impara
?edia^=somaS+
!screva media
0ara i de : at + passo : faa
!screva ?3hii
<impara
<im
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
102

&etores
O
Exemplo2: J o programa abaixo, l, alm das notas dos
alunos, seus respectivos nomes.
Algoritmos
0rograma VmdiaXturmaW
Dar
5omeA vetorh:+i de literal
?dA vetorh:+i de real
Q A inteiroH
Qnicio
0ara i de : at + faa
!screva/V3igite o nomeAW6
@eia /nomehii6
!screva/V3igite a notaAW6
@eia ?3hii
<impara
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
103

&etores
O
Exemplo3: Mostrando os valores invertidos de um vetor:
Algoritmos
0rograma VinverteXvetorW
Dar
vetA vetorh:Ni de inteiroH
i A inteiroH
Qnicio
0ara i de : at N faa
!screva/V3igite um nYmeroAW6
@eia /vethii6
<impara
!screval/V.s valores invertidos soAW6
0ara i ^= N ate : passo =: faca
escreval /vethii6
<impara
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
104

&etores
O
Exemplo4: Copiar dados de um vetor para outro
Algoritmos
0rograma V1opia vetorW
Dar
v:,v2A vetorh:Ni de inteiroH
i A inteiroH
Qnicio
0ara i de : at N faa
!screva/V3igite um nYmeroAW6
@eia /v:hii6
<impara
!screval/V1opiando os dadosW6
0ara i ^=: ate N faca
v2hii^= v:hii
<impara
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
105

&etores % Exerccios
O
Desenvolva um programa que efetue a leitura de 10
valores para uma matriz A e que esses valores sejam
passados para a matriz B acrescentando 10 porcento a
cada elemento.
O
Desenvolva um programa que efetue a leitura de 10
valores para uma matriz A e que esses valores sejam
passados para a matriz B verificando se o ndice for par
dever ser multiplicado por 5 e se for impar, somado a 5.
O
Faa um algoritmo que armazene o volume de chuva
mensal de um ano todo. Depois calcule a mdia do
volume de chuva do ano.
O
Faa um programa que leia 10 nomes e depois mostre-os
em ordem inversa de entrada.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
106

'atri(es
O Matrizes so vetores (arrays) que necessitam de dois ndices para
individualizar um elemento do conjunto. O primeiro ndice representa as
linhas e o segundo as colunas.
O Declarao:
varivel : vetor[ndice1-inicial..ndice1-final,
ndice2-inicial..ndice2-final] de tipo ...
O Exemplos:
- A@: vetorJ044D,044DK "e inteiro{este comando cria uma matriz de
5 linhas por 5 colunas}
- Leia (A@J0,0K! {este comando efetua a leitura de um valor que
est na linha (1) e coluna (1)}
- Escreva MD[3, 4] {este comando escrevera um valor na posio
que est na linha (3) e coluna (4)}
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
107

'atri(es % Exerccios
O
Criar um algoritmo que leia os elementos de uma matriz
inteira 3 x 3 e escreva os elementos da ltima linha.
Percorra a matriz com o comando para.
O
Altere o exerccio anterior para mostrar tambm a ltima
coluna da matriz. Percorra a matriz com o comando para.
O
Desenvolva um algoritmo que some os valores de todos
os elementos de uma matriz 2 x 2.
O
Criar um algoritmo que leia os elementos de uma matriz
inteira 3 x 3 e escreva os elementos da diagonal principal.
O
Projete um algoritmo que copie todos os elementos de
uma matriz 3x2 para outra de mesma dimenso.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
108

'atri(es % Exerccios
O
Altere o exerccio anterior para mostrar tambm a ltima
coluna da matriz. Percorra a matriz com o comando para.
O
Desenvolva um algoritmo que some os valores de todos
os elementos de uma matriz 2 x 2.
O
Criar um algoritmo que leia os elementos de uma matriz
inteira 3 x 3 e escreva os elementos da diagonal principal.
O
Projete um algoritmo que copie todos os elementos de
uma matriz 3x2 para outra de mesma dimenso. Faa
usando o comando para.
O
Projete um algoritmo que pea valores de duas matrizes
2x2 e inclua o resultado da diferena entre os elementos
em uma terceira matriz da mesma dimenso. Faa usando
o comando para.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
109

'atri(es % Exerccios
O
Desenvolva uma algoritmo que receba o nome e o
endereo de 5 pessoas. Depois mostre os valores em
ordem invertida.
O
Desenvolva um programa que efetue a leitura de 5 valores
para uma matriz onde na primeira coluna deve ser
armazenado o RA do aluno e na segunda coluna deve ser
armazenado a mdia final do aluno. Ao final imprimir os
valores armazenados.
O
Desenvolva um programa que efetue a leitura de 4 notas
para 3 alunos, calcular a mdia e armazenar na 5 coluna
da matriz. Ao final imprimir a mdia final de cada alunos.
Algoritmos
nstituto Federal de Votuporanga -
Prof. MSc. Andr Gobbi / Prof. Dr
. Evandro Jardini
110
FM

Você também pode gostar