Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução à Lógica
Fundamentos Matemáticos para a Computação
Introdução à Programação Visual
P. C
EXPEDIENTE
GOVERNO DO ESTADO DO CEARÁ
Camilo Sobreira de Santana
Governador
Maria Izolda Cela de Arruda Coelho
Vice-Governadora
SECRETARIA DA EDUCAÇÃO
Eliana Nunes Estrela
Secretária da Educação
Maria Jucineide da Costa Fernandes
Secretária Executiva de Ensino Médio e Profissional
Gezenira Rodrigues da Silva
Coordenadora de Educação em Tempo Integral
Ana Gardennya Linard Sírio Oliveira
Assessora Especial de Gabinete da Seduc e Coordenadora Acadêmica do Projeto
Maria Elizabete de Araújo
Assessora Especial de Gabinete
Julianna da Silva Sampaio
Coordenadora de Comunicação
Autores:
José Maria da Silva Monteiro Filho
Mara Franklin Bonates
Eder Jacques Porfírio Farias
Joaquim Bento Cavalcante Neto
Jorge Herbert Soares de Lira
Ana Gardennya Linard Sírio Oliveira
P. D
|Sumário
1 Introdução à Lógica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Introdução à Lógica Proposicional 1
1.2 Operadores Lógicos 7
1.2.1 Negação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2 Conjunção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.3 Disjunção Inclusiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.4 Disjunção Exclusiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.5 Condicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.6 Bicondicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3 Precedência dos Operadores Lógicos 15
1.4 Fórmulas Bem-formadas 16
1.5 Tabela-verdade 17
1.6 Tautologia, Contradição e Contingência 19
1.6.1 Tautologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.6.2 Contradição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.6.3 Contingência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.7 Implicação e Equivalência Lógica 24
1.8 Exercícios Propostos sobre Lógica Proposicional 26
1.9 Raciocínio Lógico-Dedutivo 33
1.10 Formação de Padrões e Sequências 39
1.11 Jogos Lógicos 45
1.12 Exercícios Propostos sobre Jogos Lógicos 48
1 |Introdução à Lógica
A finalidade deste capítulo é servir de apoio a estudantes do ensino médio que desejem estudar
os fundamentos da lógica matemática com o objetivo de aplicá-la na construção de soluções
computacionais para os mais diversos problemas. O domínio da lógica matemática ajuda a
organizar nossos pensamentos, encadeando as ideias de forma coerente, facilitando a resolução de
problemas. Além disso, a lógica nos ajuda a argumentar corretamente e chegar em conclusões
confiáveis. A lógica é um dos pilares do pensamento computacional. Na computação, a lógica
pode ser utilizada para conceber circuitos lógicos (que são os componentes mais básicos de um
computador), representar o conhecimento, criar programas (soluções computacionais), além de
validar e corrigir programas. E aí? Vamos iniciar nossa aventura pelo fantástico mundo da lógica?
É logico que sim!
Observe que podemos atribuir um valor verdadeiro ou falso a cada uma dessas proposições.
Note ainda que as duas últimas proposições são constantes. Por estes motivo, elas são chamadas
de proposições constantes.
De maneira geral, não são proposições as sentenças imperativas, interrogativas ou exclamativas.
Vejamos alguns exemplos.
Exemplo 1.5 Exemplos de sentenças que NÃO são proposições:
• Feche a porta!
• Será que vai chover amanhã?
• Vixe!
Observe que NÃO é possível atribuir um valor verdadeiro ou falso a cada uma dessas
sentenças.
Observe ainda os seguintes exemplos:
Exemplo 1.6 Exemplos de sentenças que NÃO são proposições:
• x > 3.
• x 6= 5.
• x é primo.
• x divide y.
Observe que não podemos decidir se as sentenças anteriores são verdadeiras ou falsas. A
verdade ou falsificação das sentenças acima depende dos valores das variáveis (x e y).
P. 3 Seção 1.1
Agora que temos bem definido o que é uma proposição podemos classificá-las em simples
(atômicas) ou compostas (moleculares).
Definição 1.1.2 Uma proposição é dita simples ou atômica quando ela não contém em
sua estrutura nenhuma outra proposição. Assim, as proposições simples constituem a unidade
mínima da lógica proposicional.
A seguir, ilustramos alguns exemplos de proposições simples ou atômicas.
Exemplo 1.7 Exemplos de proposições simples ou atômicas:
Definição 1.1.3 Uma proposição é dita composta ou molecular quando ela é formada por
mais de uma proposição. Assim, uma proposição composta possui como parte integrante de si
mesma pelo menos uma outra proposição.
A seguir, ilustramos alguns exemplos de proposições compostas ou moleculares.
Exemplo 1.8 Exemplos de proposições compostas ou moleculares:
Como mencionamos anteriormente, a lógica não está interessada em julgar se uma determinada
proposição é verdadeira ou falsa, mas em verificar se o raciocínio (a argumentação) é correto ou
não. Neste sentido, comumente substituímos as proposições por letras do alfabeto. Vamos ver
um exemplo:
Exemplo 1.9 Traduzindo uma proposição composta para a linguagem da lógica:
(a) Boa sorte! Não é uma proposição pois não podemos atribuir um valor verdadeiro (V) ou
falso (F).
(b) Márcio não é irmão do Mário. É uma proposição pois podemos atribuir um valor verdadeiro
(V) ou falso (F).
(c) Maria é rapper. É uma proposição pois podemos atribuir um valor verdadeiro (V) ou falso
(F).
(d) Qual a maior torcida organizada do nordeste? Não é uma proposição pois não podemos
atribuir um valor verdadeiro (V) ou falso (F).
(e) Cuscuz é bom tanto com ovo quanto com carne moída. É uma proposição pois podemos
atribuir um valor verdadeiro (V) ou falso (F).
A lógica matemática adota como regras fundamentais do pensamento os dois seguintes
princípios ou axiomas.
Definição 1.1.4 Princípio da não contradição: uma proposição não pode ser verdadeira e
falsa ao mesmo tempo.
Notação: Seja p uma proposição qualquer, V(p) indica o valor lógico da proposição p.
Obs Assim, se a proposição p for verdadeira, V(p) = V; se a proposição p for falsa, V(p) = F.
p
V
F
Para proposições compostas, veremos que o número dos componentes simples determina o
número de linhas das tabelas-verdade. Inicialmente, vamos construir as tabelas-verdade dispondo
todas as possibilidades de valores lógicos das proposições componentes.
Para uma proposição composta P formada por duas proposições simples p e q, teremos a
tabela-verdade ilustrada na Tabela 1.2.
p q
V V
V F
F V
F F
Tabela 1.2: Tabela-verdade para uma Proposição Composta P formada por duas Proposições
Simples p e q.
Para uma proposição composta P formada por três proposições simples p, q e r, teremos a
tabela-verdade ilustrada na Tabela 1.3.
p q r
V V V
V V F
V F V
V F F
F V V
F V F
F F V
F F F
Tabela 1.3: Tabela-verdade para uma Proposição Composta P formada por três Proposições
Simples p, q e r.
Teorema 1.1 O número de linhas distintas de uma tabela-verdade é dado por 2n , onde n é
número de proposições simples componentes e 2 representa o número de valores lógicos possíveis
(V ou F).
Problema 2 Atribua o valor lógico verdadeiro (V) ou falso (F) nas sentenças que são proposições
e marque um X quando a sentença não for uma proposição:
Solução. Atribua o valor lógico verdadeiro (V) ou falso (F) nas sentenças que são proposições
e marque um X quando a sentença não for uma proposição:
Problema 3 — FCC/ICMS-SP. Das cinco frases a seguir, quatro delas têm uma mesma caracte-
rística lógica em comum, enquanto uma delas não tem essa característica.
(a) I.
(b) II.
(c) III.
(d) IV.
(e) V.
Problema 4 — CESPE 2008. Uma proposição é uma sentença afirmativa ou negativa que pode
ser julgada como verdadeira (V) ou falsa (F), mas não como ambas.
Nesse sentido, considere o seguinte diálogo:
A lógica proposicional possui ao todo seis (6) operadores lógicos: Conjunção, Disjunção
Inclusiva, Disjunção Exclusiva, Negação, Condicional e Bicondicional. Os símbolos utilizados
para esses operadores são apresentados na Tabela 1.4. A seguir, iremos detalhar cada um desses
operadores.
1.2.1 – Negação
O operador lógico “Negação” inverte o valor lógico de uma proposição. Na linguagem que
utilizamos no nosso dia a dia, quase sempre usamos a palavra “não” quando desejamos negar
uma dada afirmação.
Na linguagem da lógica proposicional podemos utilizar dois símbolos diferentes para representar
a “Negação”: o “til” (∼) e a “cantoneira” (¬). Desta forma, se p é uma proposição qualquer,
“não” p é representado simbolicamente por ∼ p ou ¬p (lê-se não p). Assim se uma proposição
p é verdadeira, então ¬p é falsa. Já se p é falsa, então ¬p é verdadeira. A tabela-verdade da
“Negação” é ilustrada na Tabela 1.5.
p ¬p
V F
F V
• p: Pedro é estudante.
• ¬p: Pedro NÃO é estudante.
• ¬(¬p): Não é verdade que Pedro NÃO é estudante.
• ¬(¬p): Pedro é estudante.
Podemos comprovar essa observação por meio da tabela-verdade, ilustrada na Tabela 1.6.
p ¬p ¬(¬p)
V F V
F V F
1.2.2 – Conjunção
Duas proposições p e q podem ser combinadas pelo conectivo “e” (representado pelo símbolo
∧) para formar uma proposição composta S denominada conjunção das proposições originais.
A conjunção das proposições p e q, denominada S, será representada pelos símbolos p ∧ q. A
conjunção S terá valor lógico verdadeiro se, e somente se, os seus dois componentes (p e q)
tiverem valor verdadeiro. Caso contrário, a conjunção S terá valor lógico falso. A expressão p ∧ q
é lida como “p e q”. A tabela-verdade da “Conjunção” é ilustrada na Tabela 1.7.
p q p∧q
V V V
V F F
F V F
F F F
Duas proposições p e q podem ser combinadas pelo conectivo “ou” (representado pelo símbolo
∨) para formar uma proposição composta S denominada disjunção inclusiva das proposições
originais. A disjunção inclusiva das proposições p e q, denominada S, será representada pelos
símbolos p ∨ q. A disjunção inclusiva S terá valor lógico verdadeiro se pelo menos um de seus
dois componentes (p ou q) tiver valor verdadeiro. Caso contrário, ou seja, se tanto a proposição
p quanto q tiverem valor falso, a disjunção inclusiva S terá valor lógico falso. A expressão p ∨ q é
lida como “p ou q”. A tabela-verdade da “Disjunção Inclusiva” é ilustrada na Tabela 1.8.
p q p∨q
V V V
V F V
F V V
F F F
Observe que a proposição p ∨ q não apresenta nenhum impedimento ao fato de que eu possa
estudar tanto inglês quanto computação, durante esse ano. Logo, eu posso estudar esses dois
temas: inglês e computação.
Vamos ver mais um exemplo.
Exemplo 1.17 Considere as seguintes proposições:
Observe que a proposição p ∨ q não apresenta nenhum impedimento ao fato de que eu possa
ir tanto para a praia quanto para o cinema. Logo, por exemplo, eu posso pegar uma praia pela
manhã e dar um rolê no cinema a noite.
Definição 1.2.3 Se p e q são proposições, então p ∨ q também é uma proposição.
Problema 7 Sejam as proposições p: Paulo ama Ana e q: Paulo ama Carol. Traduzir para a
linguagem simbólica as seguintes proposições:
Duas proposições p e q podem ser combinadas pelo conectivo “ou” (representado pelo símbolo
∨) para formar uma proposição composta S denominada disjunção exclusiva das proposições
originais. A disjunção exclusiva das proposições p e q, denominada S, será representada pelos
símbolos p∨q. A disjunção exclusiva S terá valor lógico verdadeiro se exatamente um de seus
dois componentes (p ou q) tiver valor verdadeiro. Em outras palavras, a disjunção exclusiva S
terá valor lógico verdadeiro se um, e somente um, de seus dois componentes (p ou q) tiver valor
verdadeiro. Caso contrário, a disjunção exclusiva S terá valor lógico falso. A expressão p∨q é lida
como “p ou exclusivo q”. A tabela-verdade da “Disjunção Exclusiva” é ilustrada na Tabela 1.9.
p q p∨q
V V F
V F V
F V V
F F F
Observe que a proposição p∨q apresenta um impedimento temporal, uma vez que eu não
posso estar em dois lugares ao mesmo tempo. Note também que em muitos casos a Disjunção
Exclusiva é apresentada com o uso do “duplo ou” (Hoje às 19h OU eu vou à academia OU eu
vou ao cinema).
Problema 8 Sejam as proposições p: Paulo ama Ana e q: Paulo ama Carol. Traduzir para a
linguagem simbólica as seguintes proposições:
(a) p∨q
(b) ¬(p∨q)
Seção 1.2 P. 12
1.2.5 – Condicional
Duas proposições p e q podem ser combinadas pelo conectivo “se, então” (representado pelo
símbolo →) para formar uma proposição composta S denominada condicional das proposições
originais. A condicional das proposições p e q, denominada S, será representada pelos símbolos
p → q (lê-se: se p, então q). A condicional p → q pode ainda ser lida das seguintes maneiras:
• q, se p;
• p é condição suficiente para q;
• q é condição necessária para p.
seguintes formas:
p q p→q
V V V
V F F
F V V
F F V
Agora, vamos tentar compreender melhor a tabela verdade do operador lógico condicional.
Uma proposição condicional do tipo p → q nos diz exatamente que se p, o antecedente, ocorrer
(tiver valor verdadeiro) então q, o consequente, também deve ocorrer (ou seja, ter valor verdadeiro).
Por este motivo, dizemos que a ocorrência de p é suficiente para garantir a ocorrência de q, e,
também, que quando p ocorrer q deve necessariamente ocorrer.
Considerando este significado (semântica), podemos justificar a primeira linha da tabela
verdade do operador lógico condicional, ou seja, na situação em que o antecedente e o consequente
tiverem valor verdadeiro, o condicional também terá valor verdadeiro. Assim, a semântica da
proposição se antecedente então consequente está sendo respeitada.
Seguindo este raciocínio, somente a segunda linha da tabela parece violar a semântica da
proposição condicional, uma vez que, nesta linha, o antecedente ocorre (possui valor verdadeiro)
e o consequente não ocorre (possui valor falso). Por este motivo, o valor da condicional p → q é
falso.
P. 13 Seção 1.2
Adicionalmente, note que a proposição se antecedente então consequente não nos diz
nada a respeito de qual deve ser o valor do consequente (verdadeiro ou falso) quando o antecedente
é falso. Desta forma, tanto a terceira linha da tabela (antecedente falso e consequente falso)
quanto a quarta linha (antecedente falso e consequente verdadeiro) não violam a semântica
da proposição se, então. Por este motivo, o valor da condicional p → q nestes dois casos é
verdadeiro.
Note que, se o consequente é verdadeiro, pouco importa o valor lógico do antecedente, pois
Obs a condicional será sempre verdadeira.
(a) p → q
(b) ¬(p → q)
Problema 10 Sejam as proposições p: Marta está estudando bastante e q: Marta será aprovada
no ENEM. Traduzir para a linguagem simbólica as seguintes proposições:
(a) Se Marta está estudando bastante então Marta será aprovada no ENEM.
(b) Marta Não está estudando bastante E Marta Não será aprovada no ENEM.
(c) Não é verdade que Marta Não está estudando bastante.
(d) OU Marta Não está estudando bastante OU Marta será aprovada no ENEM.
Solução. Sejam as proposições p: Marta está estudante bastante e q: Marta será aprovada
no ENEM. Traduzir para a linguagem simbólica as seguintes proposições:
(a) p→q
(b) (¬p) ∧ (¬q)
(c) ¬(¬p)
(d) (¬p)∨q
Seção 1.2 P. 14
1.2.6 – Bicondicional
Duas proposições p e q podem ser combinadas pelo conectivo “se, e somente se” (representado
pelo símbolo ↔) para formar uma proposição composta S denominada bicondicional das
proposições originais. A bicondicional das proposições p e q, denominada S, será representada
pelos símbolos p ↔ q (lê-se: p se, e somente se q). A condicional p ↔ q pode ainda ser lida das
seguintes maneiras:
• Um número inteiro ser par é condição suficiente para um número inteiro ser múltiplo de 2.
• Um número inteiro ser múltiplo de 2 é condição necessária para um número inteiro ser par.
• Um número inteiro ser múltiplo de 2 é condição suficiente para um número inteiro ser par.
• Um número inteiro ser par é condição necessária para um número inteiro ser múltiplo de 2.
p q p↔q
V V V
V F F
F V F
F F V
¬ ∧ ∨ → ↔
4 3 2 1 0
Contudo, em alguns casos as regras de precedência dos operadores não são suficientes para
remover todas as ambiguidades. Por exemplo, considere a proposição composta p → q → r.
Observe que, como o operador lógico é o mesmo, não fica claro em que ordem as operações
serão realizadas. Note que a proposição composta p → q → r tanto pode ser entendida como
p → (q → r) quanto como (p → q) → r, dependendo da parentização utilizada. Neste caso, a
utilização dos parênteses foi fundamental para remover as ambiguidades.
Seção 1.4 P. 16
• p → (q ∧ r);
• ¬q ∧ ((¬r ∧ s) ↔ (p → ¬q));
• ((p → q) ∧ p) → ¬p;
Exemplo 1.23 Como exemplos de expressões que não são fórmulas bem-formadas podemos
citar:
• p q r;
• (r Verdadeiro →);
• (Falso ∧∨ (↔ q p))
1.5 – Tabela-verdade
Como mencionamos anteriormente, a tabela-verdade é uma maneira prática de dispor orga-
nizadamente os valores lógicos envolvidos em uma proposição. Agora, vamos discutir alguns
problemas que envolvem a elaboração de tabelas-verdade.
Problema 14 Monte a tabela verdade para a proposição P = p ∨ ¬q.
p q ¬q p ∨ ¬q
V V F V
V F V V
F V F F
F F V V
p q ¬q p ∧ ¬q
V V F F
V F V V
F V F F
F F V F
p q r p∨q (p ∨ q) ∧ r
V V V V V
V V F V F
V F V V V
V F F V F
F V V F F
F V F F F
F F V F F
F F F F F
Seção 1.5 P. 18
(a) 1.
(b) 2.
(c) 3.
(d) 4.
(e) 5.
Problema 18 Considere a,b e c três proposições falsas. Qual o valor lógico da proposição
D = [(a ∨ ¬c) ↔ b] ↔ [(b ∧ ¬a) ↔ ¬b]?
Problema 19 Assinale a alternativa que representa a proposição “x” correta para a tabela
verdade a seguir.
p q x
V V F
V F F
F V V
F F F
(a) p ∧ ¬q.
(b) p ∨ q.
(c) p∧q
(d) ¬p ∧ q
O vídeo a seguir traz uma interessante discussão acerca dos conceitos de proposição e operadores
lógicos, além de vários exemplos interessantes.
v Saiba mais
P. 19 Seção 1.6
1.6.1 – Tautologia
Definição 1.6.1 Uma proposição composta S é uma tautologia se o seu valor lógico é sempre
verdadeiro (V), quaisquer que sejam os valores lógicos das proposições componentes.
p ¬p p ∨ ¬p
V F V
F V V
• P = p ∨ (q ∧ negq) ↔ p;
• P = (p ∧ r) → (¬q ∨ r);
(a) ¬p ∧ p.
(b) ¬p ∧ ¬q.
(c) (p ∧ q) → (p ∨ q).
(d) (p ∨ q) → (p ∧ q).
(e) p ∨ q.
(a) p ∨ (q ∨ ¬p).
(b) (q → p) → (p → q).
(c) p → (p → q ∧ ¬q).
(d) p ∨ ¬q → (p → ¬q).
(e) p∨q →p∧q
(a) Se Rafael é inteligente ou Fabrício é chato então Rafael é inteligente e Fabrício é chato..
(b) Se Rafael é inteligente ou Fabrício é chato então Rafael não é inteligente e Fabrício não
é chato.
(c) Se Rafael é inteligente e Fabrício é chato então Rafael é inteligente ou Fabrício é chato.
(d) Se Rafael é inteligente e Fabrício é chato então Rafael é inteligente e Fabrício não é
chato.
P. 21 Seção 1.6
1.6.2 – Contradição
Definição 1.6.2 Uma proposição composta S é uma contradição se o seu valor lógico é
sempre falso (F), quaisquer que sejam os valores lógicos das proposições componentes.
• p: Vai chover;
• ¬p NÃO Vai chover;
• S : p ∧ ¬p;
p ¬p p∧¬p
V F F
F V F
p q ¬p ¬q p ∧ ¬q ¬p ∧ (p ∧ ¬q)
V V F F F F
V F F V V F
F V V F F F
F F V V F F
1.6.3 – Contingência
Definição 1.6.3 Uma proposição composta S é uma contingência (ou uma indeterminação)
quando ela não é uma tautologia e também não é uma contradição.
p q p∨q (p ∨ q) → p
V V V V
F F V V
F V V F
F F F V
p q r p∧q p∧r (p ∧ q) ∨ (p ∧ r)
V V V V V V
V V F V F V
V F V F V V
V F F F F F
F V V F F F
F V F F F F
F F V F F F
F F F F F F
Problema 32 Considere a seguinte proposição: “No ENEM, Carolina de Jesus será aprovada
ou não será aprovada.”. Analisando segundo a lógica, essa afirmação é um exemplo claro de:
(a) contradição.
(b) tautologia.
(c) contingência.
(d) equivalência.
(e) implicação.
Problema 34 Define-se por contradição a operação lógica que assume como valores falsos (F)
para quaisquer valores das proposições componentes. Sendo assim, assinale a alternativa que
contém um caso de contradição.
(a) p ∧ ¬p.
(b) p ∧ ¬q.
(c) p ∨ q.
(d) p ∧ q.
(e) p ∨ q.
(a) (p ∧ ¬p) ∧ p;
(b) (p ∧ ¬q) ∧ p;
(c) (p ∧ ¬p) ∨ q;
(d) (q ∧ ¬p) ∨ r;
(e) p ∧ (q → r) ∨ (p ∨ q).
(a) (p → q) ∨ ¬q.
(b) (p ∧ ¬p) → q
(c) ¬(p ∨ q) ↔ (p ∨ q).
(d) (p ↔ p) ∧ (p ∨ q).
(e) (p ↔ q) ∨ (q ∨ ¬q).
Seção 1.7 P. 24
• P : p ∧ q;
• Q : p;
• P → Q é uma implicação lógica?;
p q p∧q (p ∧ q) → p
V V V V
V F F V
F V F V
F F F V
• P : (p → q);
• Q : (¬p ∨ q);
• P equivale a Q?;
p q p→q ¬p ∨ q
V V V V
V F F F
F V V V
F F V V
Equivalência Nome
¬(p ∧ q) ⇐⇒ (¬p ∨ ¬q) Lei de De Morgan
¬(p ∨ q) ⇐⇒ (¬p ∧ ¬q) Lei de De Morgan
(p ∨ q) ⇐⇒ (q ∨ p) Comutação
(p ∧ q) ⇐⇒ (q ∧ p) Comutação
(p ∨ (q ∨ r))) ⇐⇒ ((p ∨ q) ∨ r) Associação
(p ∧ (q ∧ r)) ⇐⇒ ((p ∧ q) ∧ r)) Associação
(p ∧ (q ∨ r)) ⇐⇒ ((p ∧ q) ∨ (p ∧ r)) Distributiva
(p ∨ (q ∧ r)) ⇐⇒ ((p ∨ q) ∧ (p ∨ r)) Distributiva
p ⇐⇒ ¬¬p Dupla Negação
(p → q) ⇐⇒ (¬q → ¬p) Transposição
(p → q) ⇐⇒ (¬p ∨ q) Implicação Material
((p ∧ q) → r) ⇐⇒ (p → (q → r)) Exportação
p ⇐⇒ (p ∧ p) Tautologia
p ⇐⇒ (p ∨ p) Tautologia
p ↔ q ⇐⇒ (p → q) ∧ (q → p) Substituição
p → (q → r) ⇐⇒ (p ∨ q) → r Prova Condicional
(a) (p ∧ q) e q;
(b) ¬(p ∧ q) e (¬p ∨ ¬q);
(c) (¬p ∨ q) e (p → q)
O vídeo a seguir traz uma breve revisão e um exercício interessante sobre equivalência lógica.
v Saiba mais
Seção 1.8 P. 26
Problema 38 — FCC. Considere a proposição “Sabina estuda, mas não passa no ENEM”.
Nessa proposição. o conectivo lógico é:
• A: Anita estuda
• B: Betina briga
• C: Carla canta
A linguagem corrente “Se Carla não canta, então não é verdade que Anita estuda e Betina
não briga” pode ser representada, na forma simbólica, por:
(a) ¬C → ¬A ∧ B.
(b) C → ¬A ∧ ¬B.
(c) C → ¬(A ∨ B).
(d) ¬C → neg(A ∧ ¬B).
(e) ¬C → ¬(A ∨ B).
(a) (A ∧ B) → (C ∧ ¬D ∨ B).
(b) (A ∨ B) → (C ∨ ¬D) ∧ ¬B).
(c) (A ∧ ¬B) → C ∧ (¬D ∨ B).
(d) (A ∧ B) → (C ∧ ¬D) ∨ B).
(e) (A ∧ ¬B) → (C ∧ ¬D ∨ B).
(a) 2.
(b) 4.
(c) 8.
(d) 16.
(e) 32.
P. 27 Seção 1.8
(a) 2.
(b) 4.
(c) 8.
(d) 16.
(e) 32.
(a) I.
(b) II.
(c) III.
(d) I e II.
(e) I e III.
Seção 1.8 P. 28
I (7 + 3 = 10) ∧ (5 − 12 = 7).
II A palavra crime é dissílaba.
III Se “lâmpada” é uma palavra trissílaba, então “lâmpada” tem acentuação gráfica.
IV (8 − 4 = 4) ∧ (10 + 3 = 13).
V Se x=4, então x+3<6.
(a) uma F.
(b) duas F.
(c) três F.
(d) quatro F.
(e) todas são F.
(a) 4 valores F.
(b) 4 valores V.
(c) 1 valor V e 3 valores F.
(d) 1 valor F e 3 valores V.
(e) 2 valores V e 2 valores F.
P. 29 Seção 1.8
Problema 50 — CESGRANRIO. Dizer que não é verdade que “José é gordo e Carlos é alto” é
logicamente equivalente a dizer que é verdade que:
(a) Um silogismo.
(b) Uma tautologia.
(c) Uma equivalência.
(d) Uma contingência.
(e) Uma contradição.
Problema 54 — AFC-ESAF. Dizer que não é verdade que Pedro é pobre e Alberto é alto, é
logicamente equivalente a dizer que é verdade que:
(a) Artur e Paulo não são agentes administrativos e Mauro mora em Brasília.
(b) Artur e Paulo não são agentes administrativos ou Mauro mora em Brasília.
(c) Artur e Paulo não são agentes administrativos ou Mauro não mora em Brasília.
(d) Artur ou Paulo não são agentes administrativos e Mauro não mora em Brasília.
(e) Artur ou Paulo não são agentes administrativos ou Mauro não mora em Brasília.
Problema 59 — IF Sertão 2016. Dizer que “Se Paulo vai correr, então ele vai cair ” é equivalente
a:
(a) Se Paulo não vai cair, então ele não vai correr.
(b) Paulo vai cair e correr.
(c) Se Paulo não vai correr, então ele não vai cair.
(d) Paulo vai correr ou cair.
(e) Se Paulo vai cair, então ele vai correr.
P. 31 Seção 1.8
Problema 60 — FCC. Do ponto de vista da lógica, a proposição “se tem OAB, então é
advogado” é equivalente a:
Problema 63 — FCC - 2016. Edson não gosta de frango ou Marilda gosta de feijão e gosta de
arroz. Uma afirmação que corresponda à negação lógica dessa é:
(a) Marilda não gosta de arroz ou não gosta de feijão e Edson gosta de frango.
(b) Edson gosta de frango e Marilda não gosta de feijão e não gosta de arroz.
(c) Se Edson não gosta de frango, então Marilda gosta de feijão e arroz.
(d) Se Marilda não gosta de feijão e arroz, então Edson gosta de frango.
(e) Edson gosta de arroz e Marilda gosta de frango e feijão.
Problema 64 — IBFC - 2016. De acordo com a lógica proposicional, a frase que é equivalente
a: “Se Marcos estudou, então foi aprovado” é:
Problema 65 — FCC - 2016. Se João canta ou Maria sorri, então Josefa chora e Luíza não
grita. Uma afirmação equivalente a afirmação anterior é:
(a) Se Luíza grita e Josefa não chora, então João não canta e Maria não sorri.
(b) Se João não canta ou Maria não sorri, então Josefa não chora e Luíza grita.
(c) João canta ou Maria sorri, e Josefa não chora e Luíza grita.
(d) Se João canta, então Josefa chora e se Maria sorri, então Luíza grita.
(e) Se Luíza não grita e Josefa chora, então João canta ou Maria sorri.
Problema 66 — FCC - 2016. Se a conexão com a internet cai, então não há possibilidade de
comunicação. Uma afirmação que corresponde à negação lógica da afirmação anterior é:
Problema 67 — FCC - 2016. Se João chegar bravo em casa, então Claudete foge para o quarto
e Beto não entra em casa. Uma afirmação que corresponde à negação da afirmação anterior é:
(a) João não chega bravo em casa e, Claudete não foge para o quarto ou Beto entra em casa.
(b) Se João não chega bravo em casa, então Claudete não foge para o quarto e Beto entra
em casa.
(c) João chega bravo em casa e, Claudete não foge para o quarto ou Beto entra em casa.
(d) Se Claudete não foge para o quarto ou Beto entra em casa, então João não chegou bravo
em casa.
(e) Se Claudete foge para o quarto e Beto não entra em casa, então João chegou bravo em
casa.
(a) Se Fábio não é ator, então Glória é dançarina ou cantora, mas não ambos.
(b) Se Fábio é ator, então Glória não é dançarina nem cantora ou Glória é dançarina e
cantora.
(c) Se Fábio é ator, então Glória não é dançarina, mas é cantora.
(d) Se Glória não é dançarina nem cantora ou é dançarina e cantora, então Fábio é ator.
(e) Se Fábio não é ator, então Glória é dançarina, mas não é cantora ou Glória não é
dançarina, mas é cantora.
(a) Se o salário não entrou na conta, então eu não paguei o aluguel e não comprei comida.
(b) Se eu paguei o aluguel e comprei comida, então o meu salário entrou na conta.
(c) O meu salário entrou na conta e eu comprei comida e paguei o aluguel.
(d) Se o salário não entrou na conta, então eu não paguei o aluguel ou não comprei comida.
(e) Se eu não paguei o aluguel e não comprei comida, então o meu salário não entrou na
conta.
P. 33 Seção 1.9
Definição 1.9.2 Falácia é um “falso silogismo” uma vez que consiste em uma argumentação
(raciocínio) inválida na sua construção. Assim, a falácia pode ser definida como um argumento
enganoso, uma ideia equivocada ou uma crença falsa.
Exemplo 1.30 Exemplo de falácia:
Para que as proposições anteriores sejam consideradas um silogismo, a conclusão deveria ser:
Alguns pássaros não são negros. Logo, temos uma falácia.
Agora, vamos a mais uma definição importante: os quantificadores.
Quantificadores são termos que indicam a quantos elementos de uma determinada classe se
aplica uma propriedade. Existem dois quantificadores principais: o quantificador universal e o
quantificador existencial.
Definição 1.9.3 O quantificador universal indica que TODOS os elementos possuem ou
não uma determinada propriedade. O quantificador universal é representado pelo símbolo ∀.
Definição 1.9.4 O quantificador existencial indica que PELO MENOS UM (ou seja,
algum ou existe um) elemento que possui ou não uma determinada propriedade. O quantificador
existencial é representado pelo símbolo ∃.
Seção 1.9 P. 34
O silogismo é verdadeiro, pois existem alguns matemáticos que não são ricos.
A primeira premissa afirma que o conjunto dos quadrúpedes tem pelo menos um elemento
em comum com o conjunto dos leões, portanto, colocamos um “X” na região de interseção entre
os dois círculos. Contudo, essa região está dividida em duas partes pelo circulo C. É necessário
descobrir em qual dessas duas partes deve ser colocado o X. Agora, como sabemos que os leões
são carnívoros, então poderíamos pensar em colocar o X na região de interseção dos três círculos.
Porém, isso seria um equívoco, pois estamos diagramando apenas a primeira premissa, e ela não
indica que os leões de quatro pés são ou não carnívoros. Por este motivo, colocamos o X na
fronteira entre os carnívoros e os não carnívoros.
P. 37 Seção 1.9
A segunda premissa afirma que o conjunto dos leões é um sob-conjunto do conjunto dos
carnívoros. Para diagramar essa relação, pintamos a região que representa os leões que não são
carnívoros. Observe que ao diagramar a segunda premissa fizemos com que o x não representasse
um não carnívoro. Agora, podemos concluir que o X (que representa pelo menos um leão de
quatro pés) deve ficar na interseção dos três círculos.
É importante ressaltar que as premissas indicam que pelo menos um leão de quatro pés seja
carnívoro. Mas é justamente isso que a conclusão afirma. Portanto, ao diagramar as premissas,
diagramamos também a conclusão. Isso indica que se as premissas são verdadeiras, então a
conclusão também é verdadeira, ou seja, o argumento é valido.
Para diagramar a primeira premissa (“Todo M é P”) vamos pintar toda parte de M que não
esteja contida em P (ou seja, que não esteja na interseção com P).
Para diagramar a primeira premissa (“Todo S é M”) vamos pintar toda parte de S que não
esteja contida em M (ou seja, que não esteja na interseção com M).
Observe que ao diagramar as duas premissas, a conclusão já está diagramada. Note que se
fôssemos diagramar a conclusão (“Todo S é P”) teríamos que pintar a parte de S não contida em
P. Porém, esta região já está pintada. Logo, o argumento é valido.
Problema 73 — Negreiros & Miranda. Verifique a validade dos silogismos mostrados a seguir.
Para isso, utilize o diagrama de Venn.
Problema 74 — Negreiros & Miranda. Verifique a validade dos silogismos mostrados a seguir.
Para isso, utilize o diagrama de Venn.
Problema 75 — Negreiros & Miranda. Represente cada uma das seguintes proposições utili-
zando o diagrama de Venn.
A negação da proposição V é:
(a) I.
(b) II.
(c) III.
(d) IV.
(e) Nenhuma das alternativas.
P. 39 Seção 1.10
Uma sequência é uma listagem de elementos (ou termos) de um conjunto qualquer que estão
dispostos em certa ordem.
Exemplo 1.33 São exemplos de sequências:
Assim, podemos observar que algumas sequências obedecem uma certa lógica quantitativa.
Por exemplo, a sequência dos números pares (0, 2, 4, 6, 8, · · · ) pode ser obtida tomando-se o 0
como valor inicial e, a partir dai, somando-se o valor 2 a cada elemento anterior para obter o
próximo número da série.
• 0×2 = 2
• 2×2 = 4
• 4×2 = 6
• 6×2 = 8 · · ·
A sequência dos números pares pode ainda ser obtida fazendo 2 ∗ N , onde N é a sequência
dos números naturais.
• 0×2 = 0
• 1×2 = 2
• 2×2 = 4
• 3×2 = 6
• 4×2 = 8 · · ·
(a) 1,3,5,7,?
(b) 2,7,12,17,22,27,?
(c) 0,1,4,9,16,25,36,?
(d) 0,4,16,36,64,?
(e) 1,1,2,3,5,8,?
(f) 1, 3, 5, 7, 9, 11, ?
(g) 0, 2, 4, 6, 8, 10, ?
(h) 3, 6, 9, 12, ?
(i) 1, 4, 9, 16, ?
(j) 37, 31, 29, 23, 19, 17, ?
Seção 1.10 P. 40
Problema 79 — Negreiros & Miranda. Observe as figuras a seguir e desenhe a próxima figura
da sequência. Em seguida, escreva a sequência numérica formada pelas figuras.
Problema 80 — Negreiros & Miranda. As figuras a seguir possuem números que representam
uma sequência lógica. Complete com o número que está faltando.
Problema 84 — PHILLIPS 2010. Mesmo trabalhando, Gabriel sempre gosta de criar, durante o
expediente, algum problema de lógica e matemática para desenvolver o seu raciocínio. Como
recepcionista de um Hotel, um de seus passatempos favoritos é reorganizar o quadro de chaves
na sequência mostrada na figura abaixo. Dessa vez, ele pediu ao seu colega Marcos para
decifrar a sequência. Ajude o Marcos com a tarefa, substituindo os pontos de interrogação por
números?
10 3 6 7 ?
1 ? 5 4 9
(a) 12, 8, 4
(b) 20, 25, 30
(c) 5, 10, 15
(d) 6, 12, 19
(e) 10, 15, 20
(a) 19
(b) 22
(c) 25
(d) 28
Problema 87 A partir da sequência definida por an = (8, 24, 12, 36, 18, 54, a7 , a8 ), assinale a
√ √
alternativa que apresenta o correto valor para 3 a7 ∗ a8 .
(a) 26
(b) 27
(c) 28
(d) 29
Problema 88 — Vunesp 2012. Uma criança possui várias etiquetas adesivas nas cores: amarelo
[A] e vermelho [V], e quer enfeitar todas as 96 páginas de seu caderno, colando uma etiqueta em
cada página, começando com a primeira página onde será colada uma etiqueta A e obedecendo
a seguinte ordem de cores: A A A V V A A A V V · · · e assim sucessivamente, isto é, três
páginas com uma etiqueta amarela em cada uma, seguida por duas páginas com uma etiqueta
vermelha em cada uma. Como ela só dispõe de 30 etiquetas vermelhas, então, a última etiqueta
vermelha será colada no seu caderno na página:
Seção 1.10 P. 42
(a) 74
(b) 75
(c) 76
(d) 77
(e) 78
Problema 89 — FUNRIO 2012. A sequência (5, 13, 25, 41, X, 85) obedece a uma regra lógica.
O termo X dessa série é:
(a) 45
(b) 51
(c) 57
(d) 61
(e) 69
Problema 90 — FUNRIO 2012. A sequência 1, 4, 10, 22, 46, 94, · · · , obedece a uma regra
lógica. O termo dessa série subsequente ao número 94 é:
(a) 112
(b) 130
(c) 165
(d) 190
(e) 215
Problema 91 — FCC 2012. Observe que em cada um dos dois primeiros pares de palavras a
seguir, a palavra da direita foi formada a partir da palavra da esquerda, utilizando-se um
mesmo critério.
DIANA - ANDA
CRATERA - ARCA
BROCHES - ?
Com base nesse critério, a palavra que substitui corretamente o ponto de interrogação é:
(a) RECO
(b) ROBE
(c) SECO
(d) SEBO
(e) SOBE
(a) -72
(b) -80
(c) -108
(d) -162
(e) -364
P. 43 Seção 1.10
Problema 93 — TRT 6R 2012. Em uma praia chamava a atenção um catador de cocos (a água
do coco já havia sido retirada). Ele só pegava cocos inteiros e agia da seguinte maneira: o
primeiro coco ele colocava inteiro de um lado; o segundo ele dividia ao meio e colocava as
metades em outro lugar; o terceiro coco ele dividia em três partes iguais e colocava os terços
de coco em um terceiro lugar, diferente dos outros lugares; o quarto coco ele dividia em quatro
partes iguais e colocava os quartos de coco em um quarto lugar diferente dos outros lugares.
No quinto coco agia como se fosse o primeiro coco e colocava inteiro de um lado, o seguinte
dividia ao meio, o seguinte em três partes iguais, o seguinte em quatro partes iguais e seguia
na sequência: inteiro, meios, três partes iguais, quatro partes iguais, inteiro, meios, três partes
iguais, quatro partes iguais. Fez isso com exatamente 59 cocos quando alguém disse ao catador:
eu quero três quintos dos seus terços de coco e metade dos seus quartos de coco. O catador
consentiu e deu para a pessoa:
(a) 1.
(b) 2.
(c) 3.
(d) 4.
(e) 5.
Problema 95 Escreva os cinco primeiros termos da sequência definida pela fórmula: nˆ2 + 1,
onde N é a sequência dos números naturais.
Problema 98 — TCE SP 2012. Observe as sequências de letras obtidas com uma mesma ideia.
I. A; B; D; G; K; P.
II. B; C; E; H; L; Q.
III. C; D; F; I ; M; R.
IV. D; E; ?; J; ?; S.
Utilizando a mesma ideia, a sequência IV. deverá ser completada, respectivamente, com as
letras:
(a) F e K.
(b) G e O.
(c) G e N.
(d) O e Q.
(e) R e U.
Problema 99 — TCE SP 2012. A sequência D é obtida com a seguinte regra: exceto o primeiro
termo, que é escolhido aleatoriamente, todos os outros são obtidos com este cálculo: o dobro
do termo anterior menos dois. A sequência T é obtida com a seguinte regra: exceto o primeiro
termo, que é escolhido aleatoriamente, todos os outros são obtidos com este cálculo: o triplo
do termo anterior menos três. Suponha a sequência T e a sequência D ambas com o primeiro
termo igual a 3. A diferença entre o quinto termo de T e o quinto termo de D é:
(a) 90.
(b) 94.
(c) 97.
(d) 105.
(e) 112.
O site a seguir traz uma série de jogos e exercícios envolvendo padrões e sequências.
v Saiba mais
P. 45 Seção 1.11
Sabendo-se que apenas um dos suspeitos mentiu e que todos os outros disseram a verdade,
pode-se concluir que o culpado é?
Solução. Primeiramente, temos como informação que apenas um mentiu e que os outros
quatro falaram a verdade.
Ao ler as afirmações vemos que duas são contraditórias: Caio e Edu não podem ser
culpados ao mesmo tempo, pois apenas uma pessoa cometeu o crime.
Assim, ou Bernardo está mentindo ou Caio está mentindo, e os outro falam a verdade.
Podemos então assinalar V (verdadeiro) ou F(falso) nas afirmações:
1a Opção 2a Opção
André: V André: V
Bernardo: V Bernardo: F
Caio: F Caio: V
Daniel: V Daniel: V
Edu:V Edu:V
Solução. Observe que a única linha que satisfaz todas as condições é a linha II.
Problema 102 Qual das substituições a seguir tornaria outra linha aceitável?
Solução. Observe que a única alteração que irá fazer com que mais uma linha atenda todas
as condições é Caco, no lugar de saco, na linha I. Então, a resposta é a alternativa (a).
Problema 103 Seguindo as mesmas condições, que palavra completa de maneira adequada a
linha a seguir?
Jeca beca ? cota nota
(a) Pino.
(b) Seta.
(c) Bota.
(d) Lota.
(e) Jota.
Solução. Observe que a única palavra que irá completar a linha de maneira a atender todas
as condições é Lota. A linha completa ficaria: jeca beca lota cota nota. Então, a resposta é a
alternativa (d).
P. 47 Seção 1.11
(a) Com certeza o computador atenderá suas necessidades. Isso não podemos afirmar, pois não
sabemos quais são as necessidades do Sr. Aderbal.
(b) Pode ser que esse computador atenda suas necessidades. Sim, pode ser. Essa alternativa
apresenta uma possibilidade real, que pode atender as necessidades do Sr. Aderbal.
(c) Esse computador não atenderá suas necessidades. Não sabemos as necessidade do Sr.
Aderbal, mas sabemos que existe uma possibilidade de que o computador atenda suas
necessidades. Portanto, não podemos afirmar com certeza que esse computador não atenderá
o Sr. Aderbal.
(d) Possuindo uma placa de vídeo, este computador com certeza atenderá suas necessidades. O
texto não traz nenhuma informação sobre a importância ou necessidade de uma placa de
vídeo. Logo, não podemos afirmar nada a esse respeito.
(e) As alternativas (b) e (d) estão corretas. Como observado anteriormente, nada podemos
afirmar sobre a alternativa (d).
Problema 105 — SERATES 1998. Quatro amigos vão ao museu e um deles entra sem pagar.
Um fiscal quer saber quem foi o penetra. Ao serem interrogados pelos fiscal, eles afirmaram:
Problema 106 — MORGADO; CESAR 2008. Ana, Beatriz, Célia e Dora apostaram uma corrida.
Ana disse: Célia ganhou, Beatriz chegou em 2o lugar.
Beatriz disse: Célia chegou em 2o lugar e Dora, em 3o .
Célia disse: Dora foi a última; Ana, a 2a .
Cada uma das meninas disse uma verdade e uma mentira.
Qual a colocação de cada menina?
Problema 107 — SERATES 1998. Roberto, Toni e Hipácia são irmãos. Indagados sobre a
veracidade das afirmações dos três, obteve-se as seguintes declarações:
Problema 108 — MORGADO; CESAR 2008. Quatro suspeitos de praticar um crime fazem as
seguintes declarações:
Sabendo que apenas um dos suspeitos disse a verdade, determine quem é o criminoso e quem
falou a verdade.
Problema 109 — MORGADO; CESAR 2008. Na porta da minha casa, passam dois ônibus, em
A e outro B. Um deles passa pelo Ministério da Fazenda; o outro, não. Na casa ao lado da
minha, moram dois irmãos. Um só diz a verdade, outro só diz mentira. Ao indagar sobre qual
ônibus tomar para chegar ao Ministério da Fazenda, um dos irmãos me disse: “Se meu irmão
estivesse aqui, mandaria você tomar o ônibus A”. Que ônibus devo tomar?
P. 49 Seção 1.12
I A é vermelho.
II B não é vermelho.
III C não é azul.
Problema 111 — AFTN. Aline, Bianca e Camila, são três amigas que têm os carros, não
necessariamente nesta ordem, um Gol, um Uno e um Pálio. Um dos carros é prata, o outro
vermelho e o outro preto. O carro de Aline é o prata; O carro de Camila é o pálio; O carro de
Bianca não é vermelho e não é o Gol. As cores do Gol, do Uno e do Pálio são, respectivamente:
Problema 112 — AFTN. Um estudante deseja realizar um plano de estudos individuais durante o
semestre. Para atingir seu objetivo deve realizar os procedimentos que seguem, em determinada
ordem. Depois de examinar os procedimentos listados, assinale a alternativa de resposta que
julgar traduzir a ordem correta.
Problema 113 — www.somatematica.com.br. Duas salas estão ligadas entre si por um corre-
dor. Na primeira sala existem 3 lâmpadas (a, b, c), que estão ligadas a 3 interruptores (1, 2, 3)
localizados na segunda sala. Como saber que interruptor corresponde a cada lâmpada tendo
só uma oportunidade de passar de uma sala para a outra? Considere que não há possibilidade
de espreitar de uma sala para a outra.
Seção 1.12 P. 50
I A pessoa de Porto Seguro deixa seu quarto no 419 para ir fazer compras.
II Uma hora depois, liga para Carlos que está hospedado em um hotel em Recife.
III Enquanto isso, Joel vê televisão no seu quarto no 526.
Problema 115 — SERATES 1997. Como colocar em linha reta três caçadores (X), três lobos
(Y), três cabras (W) e três couves (Z), sem perigo para a paz e sem perigo de destruições, não
colocando, portanto, um caçador junto a um lobo, um lobo junto a uma cabra e uma cabra
junto a uma couve e, sem manter lado a lado, os dois caçadores, dois lobos, duas cabras e duas
couves?
Para responder as duas próximas questões considere o seguinte trecho: “João é um viajante.
Para se divertir vai ao cinema, ao teatro, ao museu ou ao parque. João vai ao teatro só quando
não existe cinema na cidade. Ele sempre vai ao museu se existe um na cidade, mas ele sempre
prefere ir ao teatro do que ao parque. Quando João passou por Lazerópolis , ele foi ao teatro.
João conhecia todas as opções de lazer da cidade e saiu para se divertir somente uma vez.”
Problema 116 — SERATES 1997. Qual (is) das seguintes afirmativas é (são) verdadeira (s)?
Problema 117 — SERATES 1997. Quando João visitou Tediópolis ele não saiu do hotel, apesar
de conhecer todas as opções de lazer da cidade.
Problema 118 — ANPAD. Cinco CDs de músicas de estilos diferentes (clássico, popular,
sertanejo, rock e samba) estão dispostos em uma pilha. O sertanejo está abaixo do clássico e
acima do popular. O samba está acima do rock, e este está abaixo do sertanejo. O clássico e
o sertanejo estão encostados um no outro, assim como o sertanejo e o rock. Então, pode-se
afirmar que os estilos dos CDs que estão no topo e na base da pilha são, respectivamente:
Problema 119 — SERATES 1997. Quando dois rios se unem, o que determina qual é o afluente
é o fluxo médio de cada rio. O que for menor é o afluente. Considerando que o famoso rio
Sena, símbolo nacional da França, une-se com o rio Yonne antes de cruzar Paris e seus fluxos
médios são, respectivamente, 77m3 e 95m3 , podemos inferir que:
(a) Um dos maiores símbolos nacionais da França, o rio Sena, não pode ser afluente de outro
rio.
(b) O rio que banha Paris é, na verdade, o rio Yonne e não o Sena.
(c) O critério de fluxo médio ao deve ser adotado neste caso. O Sena é o principal, devido à
sua maior extensão.
(d) O rio Sena é o rio afluente porque possui um fluxo médio inferior ao rio Yonne.
(e) O rio Yonne é o afluente porque possui um fluxo médio maior que o rio Sena.
Problema 120 — SERATES 1997. Segundo Gottfried Leibniz, no Prefácio à Ciência Geral,
“como a felicidade consiste na paz de espírito e como a duradoura paz de espírito depende da
confiança que tenhamos no futuro, e como essa confiança é baseada na ciência que devemos
conhecer da natureza de Deus e da alma”, segue-se que:
Problema 121 — SERATES 1997. Para ter sucesso no próximo século um país, como o Brasil,
deve ter as seguintes características: governo estável, funcionando dentro da legalidade –
incluindo as leis comerciais – e trazendo condições previsíveis para os negócios. Uma alta taxa
de poupança interna também é desejável, pois permite que companhias e empresários tenham
acesso a financiamento a boas taxas de juros. Na China e no Sudoeste Asiático, um quarto da
renda vai para a poupança.
De acordo com o texto, a única alternativa que NÃO procede é:
(a) Governo estável, com leis comerciais que sejam seguidas ajudarão um país a ter sucesso
o próximo século.
(b) Os negócios serão facilitados, no próximo século, caso o nível de poupança interna do
Brasil aumente.
(c) Na China e no sudeste Asiático a taxa de juros gera um quarto da poupança interna.
(d) A China e o sudeste Asiático têm grandes chances de obter sucesso no próximo século
devido ao alto nível de poupança interna.
(e) Boas taxas de juros podem ser conseguidas com uma poupança interna elevada.
Problema 122 — FGV. O dono de uma livraria enfrenta um problema para administrar seu
estoque. Ele precisa optar por uma metodologia que mantenha uma grande quantidade de
livros organizada, de forma que seus funcionários possam encontrar o que o cliente deseja.
Sabe-se que 100% dos livros que vende são para os alunos de um colégio de 1o e 2o graus
localizado em frente à sua loja e que, conhecendo os hábitos de seus clientes, os pequenos
estudantes, que normalmente já viram o livro que desejam mas sempre esquecem o nome do
autor e o nome do livro, a forma mais rápida e prática de organizar seu estoque atendendo
suas necessidades é:
Seção 1.12 P. 52
(a) Disciplina / Assunto / Cor da capa.
(b) Autor / Nome do Livro.
(c) Editora / Autor / Nome do livro.
(d) Assunto / Editora / Autor / Nome do Livro.
(e) Disciplina / Assunto / Editora / Autor / Nome do Livro.
Problema 123 — FGV. Dois dicionários de sinônimos e antônimos de uma mesma língua
apresentam definições diferentes para uma mesma palavra. Os dois são de autores diferentes e
produzidos na mesma época. Podemos concluir que:
Problema 124 — Negreiros & Miranda. Para que certa dieta seja efetiva, ou seja, proporcione
perda de peso corporal à pessoa que a ela se submete, é necessário que seja administrada
exatamente como prescrita por um nutricionista qualificado. A dieta é administrada exatamente
como prescrita por um nutricionista qualificado apenas se a pessoa que a ela se submete paga
por uma consulta particular com esse profissional. Sabe-se que, em geral, nutricionistas
qualificados cobram valores de consulta acessíveis a apenas uma pequena parcela da população
brasileira. A partir das informações acima, é possível concluir que:
(a) Se uma pessoa administra a dieta exatamente como prescrita por um nutricionista
qualificado, conseguirá perder peso corporal.
(b) Uma pessoa que não possua renda elevada não poderá perder peso corporal por meio
dessa dieta.
(c) Entre as pessoas que se submeterem a essa dieta, a proporção das que possuem alta
renda deverá ser superior à proporção das que possuem baixa renda.
(d) Se uma pessoa não perde peso corporal ao administrar essa dieta, é porque não a
administrou exatamente como prescrita por um nutricionista qualificado.
(e) Se uma pessoa não paga por uma consulta particular com um nutricionista qualificado,
não perderá peso corporal ao administrar essa dieta.
Sabendo que apenas uma das suspeitas está mentindo, determine quem é a criminosa.
(a) Janaína.
(b) Penélope.
(c) Cecília.
(d) Paulete.
P. 53
• + (adição)
• − (subtração)
• ∗ ou × ou . (multiplicação)
• / ou : (divisão)
Na prática, é comum que uma única expressão aritmética inclua várias operações. Neste
sentido, é fundamental saber qual operação deverá ser executada primeiro. Em uma expressão
aritmética, deve-se resolver primeiro: i) parênteses ( ), colchetes [ ] e chaves { }, ii) potência ou
raiz, iii) multiplicação ou divisão e, iv) soma ou subtração.
Vamos resolver alguns exercícios bem simples.
Problema 126 Resolva a expressão: 2 + 6 x 3 - 7 – 8 / 2
• a + b = b + a;
• (a + b) + c = a + (b + c);
• se a < b, então a + c < b + c;
• se a + c < b + c, então a < b;
• se a + c = b + c, então a = b;
• a < b e c < d, então a + c < b + d;
• Se a × b = 0, então a = 0 ou b = 0;
• a × b = b × a;
• a × (b × c) = (a × b) × c;
• (a + b) × c = a × c + b × c;
• c x (b - a) = c x b - c x a;
• Se a < b e c > 0, então c × a < c × b;
v Saiba mais
P. 55 Seção 2.2
• A é o dividendo;
• B é o divisor;
• Q é o quociente;
• R é o resto;
Muitas vezes estamos interessados somente no valor do resto da divisão de A por B. Nesses
casos, podemos utilizar o operador resto (do inglês modulo, abreviado como mod). Usando os
mesmos A, B, Q e R descritos anteriormente, podemos escrever:
A mod B = R (2.2)
Podemos ler essa expressão como A módulo B é igual a R, onde R é o módulo (ou resto) da
divisão de A por B.
Vamos ver um exemplo:
Problema 130 Calcule o valor de 13 mod 5.
Solução. 135
= 2 resto 3
Logo, 13 mod 5 = 3.
A operação módulo tem um comportamento interessante, que se assemelha a um relógio.
Vejamos no que resulta a divisão de números consecutivos por 3.
0
3
= 0 resto 0
1
3
= 0 resto 1
2
3
= 0 resto 2
3
3
= 1 resto 0
4
3
= 1 resto 1
5
3
= 1 resto 2
6
3
= 2 resto 0
O resto começa em 0 e, em seguida, vai sendo incrementado de 1 em 1, até que seja um a
menos do que o número pelo qual estamos dividindo. Depois disso, a sequência se repete.
Desta forma, podemos usar círculos para visualizar o operador módulo.
Nós escrevemos 0 no topo de um círculo e, continuando no sentido horário, escrevemos os
números inteiros 1, 2 · · · até o valor do quociente menos um.
Por exemplo, se calcularmos os valores de 0 mod 12 até 12 mod 12, chegaríamos a um relógio
convencional.
A partir dessa característica, podemos conceber um método prático e rápido para calcular o
resultado de A mod B.
Por fim, vale destacar que muitas linguagens de programação possuem um operador
Obs mod, que, em geral, é representado pelo símbolo %. Assim, nestas linguagens 8 mod 4 é
representado por 8%4.
P. 57 Seção 2.2
Problema 134 Com relação ao resto da divisão entre dois números inteiros, assinale a alterna-
tiva verdadeira:
(a) O resto r de uma divisão sempre será menor que o quociente q dessa operação, ou seja,
sempre será verdade que r < q.
(b) O resto r da divisão entre dois números inteiros iguais sempre será maior que zero.
(c) O resto r da divisão de x por y sempre será igual a zero quando y = xn, com n
pertencendo ao conjunto dos números naturais.
(d) O resto r de uma divisão será sempre menor que 10.
(e) Quando o resto r da divisão não for igual a zero, sempre será possível continuar o cálculo
e, mesmo assim, obter resultados inteiros.
Problema 135 Em uma balada, cinco “vetins” ficaram na mesma mesa. Ao final do “rolezinho”
a conta deu um total de R$ 152,00. A conta foi dividida igualmente entre eles. “Pirambu”, um
dos “vetins”, sugeriu dar o resto dessa divisão de gorjeta para o garçom, seu Gérson. Depois de
pagarem a conta, os “vetins” solicitaram um veículo por meio de um aplicativo de transporte
particular, a fim de retornarem para as suas áreas. O valor da corrida deu R$ 79,00. Eles
decidiram dividir a conta entre eles e dar o resto dessa divisão de gorjeta para o motorista,
seu Nélson. Assinale a alternativa correta:
(a) Como o valor gasto na balada foi bem maior que o valor gasto na “corrida”, o garçom
ganhou uma gorjeta maior que o motorista.
(b) A gorjeta do seu Gérson foi de R$ 2,00, assim como a gorjeta do seu Nélson.
(c) A gorjeta de ambos, Gérson e Nélson, foi de R$ 4,00.
(d) Como as divisões foram exatas, nem seu Gérson e nem seu Nélson ganharam gorjeta.
(e) A gorjeta do se Gérson foi menor que R$ 5,00, e a gorjeta do seu Nélson foi maior que
R$ 0,00.
v Saiba mais
Seção 2.3 P. 58
Equações são expressões algébricas que possuem uma igualdade. Essas expressões são chamadas
de algébricas porque possuem pelo menos uma incógnita, que é um número desconhecido
representado por uma letra. As equações relacionam os termos do primeiro membro aos termos
do segundo membro por meio de uma igualdade.
Exemplo 2.2 Vamos ver um exemplo de uma equação:
4x + 2x − 7x=16 − 5x
Termo é o nome que se dá ao produto de algum número por alguma letra. Para identificá-los,
basta procurar pelas multiplicações separadas por sinais de adição ou subtração. No exemplo
anterior, os termos são:
• 4x
• 2x
• -7x
• 16
• -5x
Nas equações, o primeiro e segundo membros são separados pela sinal de igualdade. Todos
os termos dispostos à esquerda da igualdade compõem o primeiro membro da equação. Todos
os termos dispostos à direta da igualdade determinam o segundo membro de uma equação ou
inequação. No exemplo anterior, teríamos:
• Primeiro termo: 4x + 2x − 7x
• Segundo termo: 16 − 5x
O sinal de igual é utilizado quando existe um valor para as incógnitas que faz com que
o resultado dos cálculos propostos no primeiro membro seja igual ao resultado dos cálculos
propostos no segundo membro.
O grau de uma equação pode ser encontrado da seguinte maneira:
Se a equação possui apenas uma incógnita, então, o grau dela é dado pelo maior expoente da
incógnita. Por exemplo, o grau da equação 4x3 + 3x2 + 2x = 24 é 3.
Se a equação possui mais de uma incógnita, então, o seu grau é dado pela maior soma entre
os expoentes de um mesmo termo. Por exemplo, o grau da equação 2xy + 3x2 y 2 z 2 = 0 é 6.
Exemplo 2.3 Exemplos de equações:
• 4x = 16
• 2x − 8 = 32
• 18x2 = 2x−8
2x
Exemplo 2.4 Vamos lembrar como solucionar uma equação de primeiro grau. Considere a
equação 2x − 8 = 3x − 10. Como encontrar o valor de x?
• 2x − 8 = 3x − 10
• 2x − 3x = −10 + 8
• −x = −2
• x=2
P. 59 Seção 2.3
Problema 137 O dobro de um número adicionado com 5 é igual a 155. Determine esse número.
• 2n + 5 = 155
• 2n = 155 − 5
• 2n = 150
• n = 150
2
• n = 75
Problema 138 Roberta é quatro anos mais velha que Bárbara. A soma das idades das duas é
44. Determine a idade de Roberta e Bárbara.
• r =b+4
• r + b = 44
• (b + 4) + b = 44
• 2b = 44 − 4
• 2b = 40
• b = 40
2
• b = 20
Encontramos a idade da Bárbara. Bárbara tem 20 anos. Como Roberta é 4 anos mais velha que
Bárbara, então Roberta tem 24 anos.
Problema 140 João e Marcelo passaram alguns meses guardando dinheiro para comprar uma
bicicleta de R$ 380,00. Ao final de 6 meses, os dois irmãos haviam juntado o mesmo valor,
mas ainda faltavam R$ 20,00 para pagar a bicicleta. Determine quanto dinheiro cada um
conseguiu poupar.
Problema 141 Quando nasci, minha mãe tinha 12 cm a mais que o triplo de minha altura. Se
minha mãe tem 1,68 m, como àquela época, com que altura eu nasci?
Problema 142 Fernanda e Maria têm, respectivamente, 18 e 14 anos. Daqui a quantos anos a
soma das idades das duas atingirá 80 anos?
Problema 143 Em um torneio de tênis, são distribuídos prêmios em dinheiro para os três
primeiros colocados, de modo que o prêmio do segundo colocado é a metade do prêmio do
primeiro, e o terceiro colocado ganha a metade do que recebe o segundo. Se são distribuídos
R$ 350.000,00, quanto ganha cada um dos três premiados?
Problema 144 Em uma partida de basquete, todos os 86 pontos de um time foram marcados
por apenas três jogadores: Adão, Aldo e Amauri. Se Adão marcou 10 pontos a mais que
Amauri e 9 pontos a menos que Aldo, quantos pontos cada jogador marcou?
Problema 145 Em virtude da interdição de uma ponte, os motoristas que transitavam por um
trecho de estrada tiveram que percorrer um desvio com 52 km. Se esse desvio era 8 km maior
que o dobro do comprimento do trecho interditado, qual o comprimento do trecho original da
estrada?
Problema 146 Encontre três números pares consecutivos cuja soma dê 828.
Problema 147 Sabe-se que 6 unidades somadas ao dobro de um número x é igual a 82. Qual
é o valor de x?
(a) 24.
(b) 32.
(c) 38.
(d) 43.
(e) 48.
As inequações são relações muito semelhantes às equações, contudo, apresentam uma desi-
gualdade no lugar da igualdade. Assim, as inequações indicam que o resultado das operações
envolvendo os termos do primeiro membro são maiores ou menores que o resultado das operações
envolvendo os termos do segundo membro.
Nas inequações a desigualdade pode ser representada por um dos quatro símbolos seguintes:
• Menor: <
• Maior: >
• Menor ou igual ≤
• Maior ou igual: ≥
Esses símbolos mostram que o conjunto de operações do primeiro membro possui um resultado
“menor”, “maior”, “maior ou igual” ou “menor ou igual” ao resultado do segundo membro.
Exemplo 2.5 Vamos ver um exemplo de uma inequação:
3x − 9x ≤ 15 − 4x
Os termos desta inequação são:
• 3x
• -9x
• 15
• -4x
• Primeiro termo: 3x − 9x
• Segundo termo: 15 − 4x
• 6x + x2 ≤ 6
• 12 ≥ x + 7
• 18x2 < 12x + 4
• 2x + 3 ≤ 9
• 2x ≤ 9 − 3
• 2x ≤ 6
• x ≤ 26
• x≤3
Assim, a solução da inequação são todos os números reais menores ou iguais a 3. E podemos
escrever seu conjunto-solução de duas maneiras:
Problema 149 Entre as opções a seguir, qual é a que melhor representa a idade de Maria?
Sabendo-se que Ana tem duas vezes a idade que Maria terá daqui a dez anos, entretanto, a
idade de Ana não supera o quádruplo da idade de Maria.
Problema 150 Sabendo que um quadrado possui quatro lados congruentes, que condição deve
ser cumprida para que a área de um quadrado seja maior que seu perímetro?
Problema 151 Uma pequena empresa que fabrica copos personalizados para festas de aniver-
sário tem gastos fixos de R$400,00 mais o custo de R$3,00 por copo produzido. Sabendo que
cada unidade será vendida a R$11,00, quantos copos deverão ser produzidos para que o valor
arrecadado supere os gastos?
(a) 50 copos.
(b) 70 copos.
(c) 90 copos.
(d) A arrecadação nunca será superior.
(e) Os gastos nunca serão superiores.
O vídeo a seguir traz uma interessante discussão acerca das equações e inequações do primeiro
grau.
v Saiba mais
P. 63 Seção 2.4
• 4x2 + 4x − 6 = 0, onde a= 4; b =4 e c = – 6;
• x2 − 5x + 10 = 0, onde a = 1; b = -5 e c = 10;
• 0,5x2 + x − 2 = 0, onde a = 0,5; b = 1 e c = –2;
Definição 2.4.1 Uma equação do 2o grau é chamada de completa quando todos os coeficientes
são diferentes de 0, ou seja, a 6= 0, b 6= 0 e c 6= 0.
Definição 2.4.2 Uma equação do 2o grau é chamada de incompleta quando o valor dos
coeficientes b ou c são iguais a 0, isto é, b = 0 ou c = 0.
Exemplo 2.9 Vejamos alguns exemplos de equações do segundo grau incompletas:
• 4x2 − 4 = 0, onde a = 4; b = 0 e c= – 4;
• −2x2 + 3x = 0, onde a = – 2; b = 3 e c = 0;
• x2 = 0, onde a = 1; b =0 e c =0;
Note que o valor do coeficiente a NUNCA é igual a 0, pois, caso isso ocorra, a equação
Obs deixa de ser do 2o grau.
A solução de uma equação do 2o grau ocorre quando encontramos os valores que atribuídos à
incógnita x tornam o primeiro membro da equação igual ao segundo membro. Esses valores são
chamados de raízes da equação.
Exemplo 2.10 Considere a equação x2 − 1 = 0.
Quais as soluções desta equação?
Quais as raízes desta equação?
Observe que x0 = 1 e x00 = −1 são soluções (raízes) da equação anterior, uma vez que
substituindo esses valores na expressão, teremos uma igualdade verdadeira. Vejamos:
Fazendo x = 1, temos:
• x2 − 1 = 0
• 12 − 1 = 0
• 1−1=0
• 0=0
• x2 − 1 = 0
• (−1)2 − 1 = 0
• 1−1=0
• 0=0
Seção 2.4 P. 64
• ax2 + c = 0
• ax2 = −c
• x2 = −c
a
q
• x = ± −c a
• 4x2 − 36 = 0
• 4x2 = 36
• x2 = 36
4q
• x = ± 36
√4
• x=± 9
• x = ±3
• x0 = 3 e x00 = −3
O método para encontrar as soluções de uma equação com c = 0, consiste em utilizar a fatoração
por evidência, conforme ilustrado a seguir.
• ax2 + bx = 0
• x(ax + b) = 0
• x = 0 ou ax + b = 0
• x0 = 0 e x00 = −b
a
• 10x2 − 90x = 0
• 10x(x − 9) = 0
• 10x = 0 =⇒ x0 = 0
• x − 9 = 0 =⇒ x00 = 9
• x2 + 16x = 0
• x(x + 16) = 0
• x = 0 =⇒ x0 = 0
• x + 16 = 0 =⇒ x00 = −16
• 5x2 + 6x = 0
• x(5x + 6) = 0
• x = 0 =⇒ x0 = 0
• 5x + 6 = 0 =⇒ x00 = −6/5
P. 65 Seção 2.4
• ∆ = b2 − 4ac
• ∆ = (−1)2 − 4×1×(−12)
• ∆ = 1 + 48
• ∆ = 49
1± 49
• x= 2
• x = 1±72
• x0 = 1+72
• x0 = 82
• x0 = 4
• x00 = 1−72
• x00 = −62
• x00 = −3
O termo delta (∆) também é conhecido como discriminante. Observe que o delta está
inserido em uma raiz quadrada. Vale lembrar também que não é possível extrair raiz quadrada
de um número negativo.
Conhecendo o valor do discriminante, podemos chegar a algumas conclusões importantes a
respeito da solução de uma equação do 2o grau:
• Se o valor do discriminante for positivo (∆ > 0), então a equação possui duas soluções;
• Se o valor do discriminante for igual a zero (∆ = 0), então a equação possui duas soluções
iguais (ou seja, x0 = x00 );
• Se o valor do discriminante for negativo (∆ < 0), então a equação não admite solução real.
• ∆ = b2 − 4ac
• ∆ = (−6)2 − 4×1×(8)
• ∆ = 36 − 32
• ∆ = 4 (Duas raízes distintas)
6± 4
• x= 2
• x = 6±22
• x0 = 6+22
• x0 = 28
• x0 = 4
• x00 = 6−22
• x00 = 24
• x00 = 2
Analisando o sinal de y, podemos concluir que o gráfico possui concavidade para cima, pois a
= 1 > 0. Podemos ainda afirmar que, como ∆ = 4 > 0, a função tem duas raízes (2 e 4). Observe
a seguir a variação do sinal para y:
Para que valores de x teremos y < 0?
Esses valores são 2 < x < 4.
Observe que:
• ∆ = b2 − 4ac
• ∆ = (−3)2 − 4×(−1)×(−2)
• ∆=9−8
• ∆ = 1 (Duas raízes distintas)
• x00 = −1
Analisando o sinal de y, podemos concluir que o gráfico possui concavidade para baixo, pois
a = -1 < 0. Podemos ainda afirmar que, como ∆ = 1 > 0, a função tem duas raízes (-2 e -1).
Observe a seguir a variação do sinal para y:
Para que valores de x teremos y ≤ 0?
Esses valores são x ≤ −2 ou x ≥ −1.
Observe que:
• y ≤ 0 =⇒ x ≤ −2 ou x ≥ −1
• y = 0 =⇒ x = −2 ou x = −1
• y ≥ 0 =⇒ −2 ≥ x ≤ −1
• ∆ = b2 − 4ac
• ∆ = (−6)2 − 4×(1)×(9)
• ∆ = 36 − 36
• ∆ = 0 (Uma única raiz real)
• x = 62
• x0 = x00 = 3
Analisando o sinal de y, podemos concluir que o gráfico possui concavidade para cima, pois
a = 1 > 0. Podemos ainda afirmar que, como ∆ = 0, a função tem uma única raíz real (3).
Observe a seguir a variação do sinal para y:
Para que valores de x teremos y > 0?
Esses valores são x 6= 3.
Observe que:
• y > 0 =⇒ x 6= 3
• y = 0 =⇒ x = 3
• y < 0 =⇒ não existem valores
• ∆ = b2 − 4ac
• ∆ = (−2)2 − 4×(−3)×(−1)
• ∆ = 4 − 12
• ∆ = −8 (A inequação não possui raízes reais)
Observe que a parábola não intercepta o eixo x, logo não possui raízes reais. Dessa forma,
podemos concluir que o conjunto solução é: S = φ.
Problema 153 — PUC-RIO 2009. Quantas soluções inteiras a inequação x2 +x−20 ≤ 0 admite?
(a) 2.
(b) 3.
(c) 7.
(d) 10.
(e) 13.
Problema 155 — UFRGS 2017. Sendo a e b números reais, considere as afirmações a seguir.
(a) Apenas I.
(b) Apenas II.
(c) Apenas III.
(d) Apenas I e II.
(e) I,II e II.
O vídeo a seguir traz uma interessante discussão acerca das equações e inequações do segundo
grau.
v Saiba mais
P. 71 Seção 2.5
p = 4×l (2.5)
Observe que a medida p do perímetro depende da medida l do lado do quadrado, o que pode
ser verificado na Tabela 2.1.
O conceito de função pode ser entendido e definido por meio da Teoria dos Conjuntos, uma vez
que as colunas da tabela anterior representam conjuntos numéricos. Vamos ver um exemplo:
Exemplo 2.21 Dados os conjuntos L = {1, 1.5, 2, 2.5, 3} e P = {0, 2, 4, 6, 8, 10, 12, 14}, seja a
relação (função) de L em P expressa pela fórmula p = 4 ∗ l, com l ∈ L e p ∈ P .
Dizemos que para toda função temos um conjunto denominado domínio e sua respectiva
imagem. No exemplo anterior, o domínio é o conjunto L, o contra-domínio é o conjunto P e a
imagem são todos os elementos de P que estão relacionados com os elementos de L. Vale destacar
que cada elemento l do domínio se relaciona a um e somente um elemento p do contradomínio.
Vale ressaltar que não necessariamente a imagem da função é igual ao contradomínio.
Exemplo 2.22 Dado que o litro da gasolina custa R$ 7,00, podemos estabelecer uma relação
entre a quantidade de litros utilizada para abastecer um veículo e o valor total a pagar. Essa
relação pode ser representada pela fórmula matemática y = 7×x, onde x é a quantidade de litros
e y é o valor a pagar. Observe essa relação na Tabela 2.2.
Definição 2.5.1 Uma função é uma regra que relaciona cada elemento de um conjunto X a
um único elemento de outro conjunto Y . O primeiro conjunto é chamado de domínio (X), e o
segundo, contradomínio da função (Y ).
A formalização matemática para a definição de função é dada por: Seja X um conjunto com
elementos de x e Y um conjunto dos elementos de y, temos que:
f :x→y (2.6)
A partir dessa definição, é possível constatar que x é a variável independente e que y ou f (x)
é a variável dependente. Isso porque, em toda função, para encontrar o valor de y, devemos ter
inicialmente o valor de x.
Se os elementos do domínio e da imagem de uma função pertencem ao conjunto dos números
inteiros, por exemplo, dizemos que f : Z → Z, lemos que “f é uma função cujo domínio pertence
aos inteiros e cuja imagem pertence aos inteiros” ou, simplesmente, “f é uma função de inteiros
em inteiros”.
Algumas relações não são consideradas funções. Vamos ver alguns exemplos sobre isso. Na
Figura 2.9 temos uma relação do conjunto A com o B.
A relação exibida na Figura 2.9 não é uma função pois um único elemento do conjunto A se
relaciona com vários elementos do conjunto B, violando assim a definição de função.
A relação exibida na Figura 2.10 não é uma função pois existem elementos em A que não se
relacionam com elementos do conjunto B, violando também a definição de função.
Seção 2.5 P. 74
√
Problema 159 Dada a função f (x) = 4x − 16, qual das alternativas a seguir apresenta um
elemento que não pertence ao domínio dessa função?
(a) 2.
(b) 4.
(c) 6.
(d) 8.
(e) 12.
P. 75 Seção 2.5
As funções podem ser representadas graficamente. Para que isso seja feito, utilizamos duas
coordenadas, que são x e y. O plano desenhado é bidimensional. A coordenada x é chamada de
abscissa e a y, de ordenada. Juntas em funções, elas formam leis de formação. Veja a imagem do
gráfico do eixo x e y na Figura 2.12:
Observe que o domínio da função é dado pelo conjunto: D(f ) = {1, 2, 3, 4, 5}. Já a imagem
da função é formada pelo conjunto: Im(f ) = {2, 4, 6}. E o contradomínio da função é o conjunto:
CD(f ) = {2, 4, 6}.
P. 77 Seção 2.5
Observe que o domínio da função é dado pelo conjunto: D(f ) = {1, 2, 3}. Já a imagem da
função é formada pelo conjunto: Im(f ) = {2, 4, 6}. E o contradomínio da função é o conjunto:
CD(f ) = {2, 4, 6}.
É importante ressaltar que existem funções que não são nem injetoras e nem sobrejetoras.
Obs Elas simplesmente não apresentam classificação sob esse critério. Uma função é dita simples
se ela não é injetora nem sobrejetora.
Função Constante
Na função constante, todo valor do domínio (x) tem a mesma imagem (y). A função constante
tem a seguinte fórmula geral:
f (x) = c (2.7)
Onde c é uma constante.
A Figura 2.16 ilustra o plano cartesiano de uma função constante genérica.
Função Linear
A função linear é um caso particular da função afim (f (x) = ax + b), mais precisamente quando
o coeficiente b é igual a zero (b = 0). Desta forma, a função linear tem a seguinte fórmula geral:
−x
Figura 2.20: Função Linear f (x) = 3
Seção 2.5 P. 80
Função Exponencial
Em uma função exponencial a variável x está no expoente em relação à base de um termo
numérico ou algébrico a. Caso o termo a seja maior que 1, o gráfico da função exponencial
é crescente. Já se o termo a for um número entre 0 e 1, o gráfico da função exponencial é
decrescente. A função exponencial tem a seguinte fórmula geral:
f (x) = ax (2.11)
Exemplo 2.28 Observe o gráfico da função exponencial f (x) = 2x .
Função Par
Uma função é dita par, se e somente se f (−x) = f (x). Na função par, valores simétricos de x
possuem a mesma imagem.
Função Impar
Uma função é dita ímpar, se e somente se f (−x) = −f (x). Na função impar, valores simétricos
de x possuem imagens simétricas.
Existem funções que não podem ser classificadas quanto a paridade, ou seja, não são nem
Obs pares nem ímpares.
P. 83 Seção 2.5
Problema 160 — UA-AM. Após vários testes em laboratório, observou-se que a concentração de
uma substância utilizada para o tratamento da COVID-19, no sangue dos pacientes voluntários,
varia de acordo com a função f (x) = 12x − 2x2 , onde x é o tempo decorrido, em horas, após
a ingestão do medicamento. Nessas condições, qual o tempo necessário para atingir o nível
máximo de concentração dessa substância, no sangue dos voluntários?
Problema 161 — ENCCEJA 2018. Uma prestadora de serviços de internet cobra pela visita à
residência do cliente e pelo tempo necessário para realizar o serviço. O valor da visita é R$ 40
e o valor da hora para realização do serviço é R$ 20.
Uma expressão que indica o valor a ser pago (P) em função das horas (h) necessárias à
execução do serviço é:
(a) P = 40h.
(b) P = 60h.
(c) P = 20 + 40h.
(d) P = 40 + 20h.
(e) P = 800h.
(a) x − 2.
(b) x − 6.
(c) x − 6/5.
(d) 5x − 2.
(e) 5x + 2.
Problema 163 Em uma função do seu grau chamamos de “zeros da função” os valores de x
nos quais o gráfico corta o eixo das abscissas. Qual das alternativas a seguir indica os zeros da
função f (x) = 3x2 + 6x − 9?
(a) (-3;-2).
(b) (-3;1).
(c) (2;-1).
(d) (-2;1).
(e) (3;-1).
v Saiba mais
Seção 2.6 P. 84
Note que a árvore é construída da esquerda para a direita e que o número de “ramos” que
saem de cada escolha inicial (ou possibilidade inicial) corresponde ao número de possibilidades
da próxima escolha.
Podemos concluir, portanto, que ao todo teremos 6 possibilidades de combinações entre as
duas calças e as três camisas.
P. 85 Seção 2.6
Exemplo 2.32 Uma moeda tem duas faces: cara (C) e coroa (K). Lança-se a moeda três vezes
consecutivas e observa-se qual face ficou voltada para cima. Quais e quantos são os resultados
possíveis?
Analisando o Diagrama de Árvore da Figura 2.28 podemos notas que os resultados possíveis
são: Ω = {(C, C, C); (C, C, K); (C, K, C); (C, K, K); (K, C, C); (K, C, K); (K, K, C); (K, K, K)}.
Desta forma, podemos concluir que ao todo temos 8 possibilidades.
Exemplo 2.33 Há quatro estradas ligando as cidades A e B, e três estradas ligando as cidades
B e C. De quantas maneiras distintas pode-se ir de A até C, passando por B?
Problema 164 Um teatro tem 4 portas. De quantas maneiras diferentes uma pessoa pode
entrar e sair do teatro?
Solução. Um teatro tem 4 portas. De quantas maneiras diferentes uma pessoa pode entrar
e sair do teatro?
Aplicando o princípio fundamental da contagem (PFC), temos que:
p1 : existem 4 possibilidades para entrar no teatro.
p2 : existem 4 possibilidades para sair do teatro.
Logo: existem p1 ×p2 = 4×4 = 16 maneiras para entrar e sair do teatro.
Problema 165 Quantos são os números de três algarismos distintos que podemos formar com
os algarismos do sistema decimal?
Solução. Quantos são os números de três algarismos distintos que podemos formar com os
algarismos do sistema decimal?
Aplicando o princípio fundamental da contagem (PFC), temos que:
Temos três posições para preencher: 1o algarismo 2o algarismo e 3o algarismo.
O sistema decimal possui dez algarismos: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9.
Para formar números de três algarismos distintos temos duas restrições. O primeiro algarismo
não pode ser 0, pois neste caso o número só teria dois algarismos. Logo, apenas 9 dígitos
(algarismos) do sistema decimal podem ser utilizados na primeira posição do número que
desejamos formar. Além disso, os três algarismos utilizamos para gerar o número precisam ser
distintos. Portanto, podemos afirmar que:
p1 : existem 9 possibilidades para o primeiro algarismo, já que o dígito 0 (zero) não pode ser
utilizado na primeira posição.
p2 : existem 9 possibilidades para a segunda posição, já que o algarismo utilizado na primeira
posição não pode mais ser utilizado. Note que o dígito zero (0) agora já poderia ser utilizado.
p3 : existem 8 possibilidades para a terceira posição, já que os algarismos utilizados na primeira
e segunda posições não podem mais ser utilizados.
Logo: existem p1 ×p2 ×p3 = 9×9×8 = 648 maneiras para entrar e sair do teatro.
P. 87 Seção 2.6
Problema 166 Quantas placas de veículos podem ser criadas, se forem usadas duas letras de
um alfabeto de 26 letras, seguidas por 4 algarismos?
Solução. Quantas placas de veículos podem ser criadas, se forem usadas duas letras de um
alfabeto de 26 letras, seguidas por 4 algarismos?
Aplicando o princípio fundamental da contagem (PFC), temos que:
Temos duas posições para preencher com letras e quatro posições para preencher com
algarismos. Note que não existe nenhuma restrição quanto a repetição de letras ou algarismos.
Portanto, podemos afirmar que:
p1 : existem 26 possibilidades para a primeira letra.
p2 : existem 26 possibilidades para a segunda letra.
p3 : existem 10 possibilidades para o primeiro algarismo.
p4 : existem 10 possibilidades para o segundo algarismo.
p5 : existem 10 possibilidades para o terceiro algarismo.
p6 : existem 10 possibilidades para o quarto algarismo.
Logo: existem p1 ×p2 ×p3 ×p4 ×p5 ×p6 = 26 ∗ 26 ∗ 10 ∗ 10 ∗ 10 ∗ 10 = 6.760.000 placas distintas
possíveis.
O estudo da análise combinatória exige o domínio de uma operação específica chamada
fatorial, o qual é representado pelo símbolo de exclamação (“!”). O fatorial de um número n é
dado pelo produto de n pelos seus antecessores.
Exemplo 2.34 O fatorial de 5 (representado por 5!) é:
5×4×3×2×1 = 120
Definição 2.6.2 O fatorial de 0 (0!) é: 1.
O fatorial de um número n (n!) é: n×(n − 1)×(n − 2) · · · ×(n − (n − 1)).
Note que o fatorial de um número n também pode ser representado como: n×(n − 1)×(n −
Obs 2) · · · ×1.
Num conjunto A com n elementos, são arranjos simples todos os agrupamentos ordenados
formados por p elementos distintos escolhidos entre os n elementos distintos dados, com p menor
ou igual a n.
n!
An,p = (2.12)
(n − p)!
Lê-se arranjo de n elementos tomados p a p.
Problema 167 O conselho administrativo de uma escola organizou-se para escolher os ocupantes
dos cargos mais importantes, que são: diretor, secretário e coordenador financeiro. Esses
cargos são escolhidos a partir de votação de todos os membros do conselho administrativo
da escola. Em cada voto será indicado um trio (tripla) de membros do conselho para ocupar
cada um dos cargos. Sabendo que existem 5 candidatos (os quais concorrem aos 3 cargos), o
número de comissões administrativas que podem ser formadas é?
Solução. Observe que será realizada uma escolha de 3 entre 5 possibilidades (candidatos).
Note também que a ordem é importante. Por exemplo, o voto para Ana, Gal e Zé não é o mesmo
que o voto para Gal, Zé e Ana – uma vez que são atribuídas funções diferentes para cada um
deles (diretor, secretário e coordenador financeiro). Portanto, a ordem é importante, o que torna
essa questão um problema de arranjo. Logo, vamos calcular A5,3 :
5! 5! 5×4×3×2!
A5,3 = (5−3)!
= 2!
= 2!
= 5×4×3 = 60 possibilidades.
Problema 168 Quantos números naturais de quatro algarismos distintos podem ser formados
usando-se os algarismos 2, 3, 4, 5, 6, 7, 8 e 9?
Solução. Observe que este problema envolve um arranjo simples, uma vez que 2345 6= 5432.
Logo, vamos calcular A8,4 :
8! 8! 8×7×6×5×4!
A8,4 = (8−4)!
= 4!
= 4!
= 8×7×6×5 = 1.120 possibilidades.
ARn,p = np (2.13)
Problema 169 A senha de um banco possui cinco dígitos formados exclusivamente por números,
qual é a quantidade de senhas possíveis?
Solução. Sabemos que a senha é uma sequência de cinco dígitos e que não há restrição em
relação a repetições. Logo, este é um problema que envolve arranjo com repetição. Note que
cada dígito pode da senha pode receber um entre 10 algarismos diferentes (0, 1, 2, 3, 4, 5, 6, 7, 8
ou 9). Portanto, queremos calcular o arranjo com repetição de 10 elementos tomados de cinco
em cinco. Assim, vamos calcular AR10,5 .
AR10,5 = 105 = 10.000 possibilidades de senhas diferentes.
P. 89 Seção 2.6
Problema 170 Sabendo que as placas dos veículos são formadas por três letras e quatro
números, quantas placas distintas é possível formar?
Solução. Nosso alfabeto é composto por 26 letras. Além disso, existem 10 possibilidades de
números (0, 1, 2, 3, 4, 5, 6, 7, 8 ou 9). Bom, vamos dividir o problema em dois.
Primeiramente, vamos calcular a quantidade de arranjos possíveis para as letras.
AR26,3 = 263 = 17.576.
Em seguida, vamos calcular a quantidade de arranjos possíveis para os números.
AR10,4 = 104 = 10.000.
Por fim, basta multiplicar essas duas quantidades.
AR26,3 ×AR10,4 = 17.576×10.000 = 1.757.600.000 placas distintas.
Pn = p! (2.14)
Solução. Podemos entender Anagrama como a troca de posição entre as letras de uma
palavra, formando novas palavras, que podem fazer sentido ou não na nossa língua. Esse problema
consiste em uma permutação simples, uma vez que estamos calculando todos os agrupamentos
possíveis ao mudar a ordem de todos os elementos do conjunto. Note que a palavra AMOR
possui 4 letras. Portanto, o total de anagramas possíveis é dado pela permutação de quatro
elementos. Assim, vamos calcular o valor de P4 :
P4 = 4! = 4×3×2×1 = 24 anagramas.
Problema 172 Determine a quantidade de anagramas da palavra castelo que começam com a
letra “c”.
Solução. Note que a palavra CASTELO possui 7 letras. Porém, queremos encontrar a
quantidade de anagramas que começam com a letra “c”. Logo, devemos fixar a letra “c” e calcular
o anagrama das demais. Ao fixarmos a letra c, sobram seis leras para calcularmos a permutação.
Assim, vamos calcular o valor de P6 :
P6 = 6! = 6×5×4×3×2×1 = 720 anagramas.
Problema 173 Os resultados do último sorteio da Mega-Sena foram os números 04, 10, 26, 37,
47 e 57. De quantas maneiras distintas pode ter ocorrido essa sequência de resultados?
Problema 174 — U.F.Pelotas-RS. Tomando como base a palavra UFPEL, resolva as questões
a seguir.
i Quantos anagramas podem ser formados de modo que as vogais estejam sempre juntas?
ii Quantos anagramas podem ser formados com as letras UF juntas?
iii Quantos anagramas podem ser formados com as letras PEL juntas e nessa ordem?
Seção 2.6 P. 90
A permutação com repetição é aquela na qual precisamos fazer as trocas dos elementos de
um conjunto, mas este contém elementos repetidos. Assim, na permutação com repetição, as
repetições são permitidas.
Podemos calcular a quantidade de permutações com repetição através da seguinte fórmula:
n!
Pnn1 ,n2 ,n3 ··· = (2.15)
n1 !×n2 !×n3 ! · · ·
Onde, n é a quantidade de elementos e n1 ,n2 ,n3 , · · · são os elementos repetidos.
Problema 175 De quantas maneiras é possível reorganizar as letras da palavra OVO?
Problema 177 Calcular a quantidade de permutações com repetição que podem ser formadas
com as letras da palavra MATEMÁTICA.
Solução. Calcular a quantidade de permutações com repetição que podem ser formadas
com as letras da palavra MATEMÁTICA.
Observe que temos uma permutação com repetição (MATEMATICA), onde a letra “M”
aparece duas vezes, a letra “A” aparece três vezes e a letra “T” aparece duas vezes. Logo,
devemos calcular:
Pnn1 ,n2 ,n3 = n1 !×nn!2 !×n3 !
3,2,2
P10 = 3!×10!
2!×2!
3,2,2
P10 = 10×9× 8×7×6×5×4×3!
3!∗2×1×2×1
= 10×9×8×47×6×5×4 = 10×9×8×7×6×5 = 151.200 possibilidades.
Problema 178 Ao preencher um cartão da loteria esportiva, André optou pelas seguintes
marcações: 4 coluna um, 6 coluna do meio e 3 coluna dois. De quantas maneiras distintas
André poderá marcar os cartões?
Problema 179 Em um torneio de futsal um time obteve 8 vitórias, 5 empates e 2 derrotas, nas
15 partidas disputadas. De quantas maneiras distintas esses resultados podem ter ocorrido?
P. 91 Seção 2.6
Solução. Observe que será realizada uma escolha de 2 entre 30 possibilidades. Além disso,
é possível perceber que a ordem não é importante, pois se a comissão for composta por Ana, Gal
ou Gal, Ana, por exemplo, não haverá diferença alguma. Como a ordem não importa e estamos
escolhendo subconjuntos de um conjunto de 30 possibilidades, esse problema consiste em uma
combinação de 30 elementos tomados 2 em 2. Assim, vamos calcular o valor de C30,2 :
Problema 181 — Brasil Escola. Em uma sala de aula, tem-se cinco homens e sete mulheres.
Quantos grupos de três homens e quatro mulheres podem ser formados?
Solução. Inicialmente, observe que a ordem na qual escolhemos os estudantes não importa,
por exemplo o grupo formado por Dé, Sá e Zé é o mesmo grupo formado por Sá, Zé e Dé.
Portanto, trata-se de um problema de combinação.
Vamos calcular separadamente a quantidade de grupos que podem ser formados por homens
e mulheres, e, em seguida, vamos multiplicar esses resultados, pois cada grupo de homens pode
misturar-se com cada grupo de mulheres.
A quantidade de grupos formados por alunos homens é dada por:
5! 5! 5×4×3! 5×4 20
C5,3 = ((5−3)!) ×3! = 2!×3! = 2!×3! = 2×1 = 2 = 10.
A quantidade de grupos formados por alunos homens é dada por:
7×6×5×4! ×6×5
7!
C7,4 = ((7−4)!) 7!
×4! = 3!×4! = 3!4!
= 37×2×1
= 7×66×5 = 7×5 = 35.
Logo, o total de grupos que podem ser formados por três homens e quatro mulheres é:
Problema 182 — UNICAMP 2017. Sabe-se que, em um grupo de 10 pessoas, o livro A foi lido
por 5 pessoas e o livro B foi lido por 4 pessoas. Podemos afirmar corretamente que, nesse
grupo:
Problema 183 — ENEM 2009. Doze times se inscreveram em um torneio de futebol amador.
O jogo de abertura do torneio foi escolhido da seguinte forma: primeiro foram sorteados 4
times para compor o Grupo A. Em seguida, entre os times do Grupo A, foram sorteados 2
times para realizar o jogo de abertura do torneio, sendo que o primeiro deles jogaria em seu
próprio campo, e o segundo seria o time visitante. A quantidade total de escolhas possíveis
para o Grupo A e a quantidade total de escolhas dos times do jogo de abertura podem ser
calculadas por meio de:
Problema 184 — Mundo Educação. O diretor de uma escola convidou os 280 alunos do
terceiro a participarem de uma brincadeira. Havia 5 objetos e 6 personagens em uma casa de
9 cômodos. Um dos personagens deveria esconder um dos objetos em um dos cômodos da
casa. O objetivo da brincadeira era adivinhar qual objeto foi escondido, por qual personagem
e em qual cômodo da casa.
Todos os alunos decidiram participar. A cada vez um aluno era sorteado e dava a sua
resposta. As respostas deveriam ser sempre distintas das anteriores, e um mesmo aluno não
poderia ser sorteado mais de uma vez. Se a resposta do aluno estivesse correta, ele seria
declarado vencedor e a brincadeira seria encerrada.
O diretor sabia que algum aluno acertaria a resposta porque havia:
Problema 185 — Brasil Escola. Em uma sala de aula existem 12 alunas, onde uma delas
chama-se Gal, e 8 alunos, onde um deles atende pelo nome de Sá. Deseja-se formar comissões
de 5 alunas e 4 alunos. Determine o número de comissões, onde simultaneamente participam
Gal e Sá.
Problema 187 — Brasil Escola. No jogo de basquetebol, cada time entra em quadra com cinco
jogadores. Considerando-se que um time para disputar um campeonato necessita de pelo
menos 12 jogadores, e que desses, 2 são titulares absolutos, determine o número de equipes
que o técnico poderá formar com o restante dos jogadores, sendo que eles atuam em qualquer
posição.
Problema 188 — Brasil Escola. Um pesquisador científico precisa escolher três cobaias, num
grupo de oito cobaias. Determine o número de maneiras que ele pode realizar a escolha.
Problema 189 — PUC-RIO 2008. O número total de maneiras de escolher 5 dos números
1, 2, 3, · · · , 52 sem repetição é:
Problema 190 — FUVEST 2017. João tem R$ 150,00 para comprar canetas em 3 lojas. Na loja
A, as canetas são vendidas em dúzias, cada dúzia custa R$ 40,00 e há apenas 2 dúzias em
estoque. Na loja B, as canetas são vendidas em pares, cada par custa R$ 7,60 e há 10 pares
em estoque. Na loja C, as canetas são vendidas avulsas, cada caneta custa R$ 3,20 e há 25
canetas em estoque. O maior número de canetas que João pode comprar nas lojas A, B e C
utilizando no máximo R$ 150,00 é igual a:
(a) 46.
(b) 45.
(c) 44.
(d) 43.
(e) 42.
Problema 191 — UDESC 2010. Doze equipes participarão de um torneio internacional de vôlei;
os participantes foram divididos em dois grupos de seis equipes cada. A fase classificatória
deste torneio prevê a realização de dois turnos. No primeiro turno, cada equipe jogará contra os
adversários do seu próprio grupo e, no segundo, as equipes enfrentarão os times do outro grupo.
Ao término da fase de classificação, os dois primeiros colocados de cada grupo avançarão para
a fase final, que será disputada em turno único, num só grupo, com cada classificado jogando
contra todos os outros times. O time que obtiver a primeira colocação na fase final será
declarado campeão do torneio. De acordo com este regulamento, o total de jogos realizados
durante o torneio é igual a:
(a) 102.
(b) 66.
(c) 77.
(d) 72.
(e) 108.
Seção 2.6 P. 94
Problema 192 — INFOESCOLA. O número mínimo de pessoas que deve haver em um grupo
para que possamos garantir que nele há pelo menos três pessoas nascidas no mesmo dia da
semana é igual a:
(a) 21.
(b) 20.
(c) 15.
(d) 14.
(e) 10.
Problema 193 — ITA – SP. (Quantos anagramas com 4 letras distintas podemos formar com as
10 primeiras letras do alfabeto e que contenham duas das letras a, b e c?
(a) 1692.
(b) 1572.
(c) 1520.
(d) 1512.
(e) 1392.
Problema 194 Determine o número de anagramas que podem ser formados com as letras do
nome PARAJURU.
(a) 5.
(b) 15.
(c) 5!/(5 − 3)!.
(d) 5!/(5 − 3)!2!.
(e) 5!/(5 − 3)!3!.
v Saiba mais
P. 95 Seção 2.7
Definição 2.7.2 Experimento Aleatório é qualquer experiência cujo resultado não seja
conhecido.
Vamos discutir alguns exemplos de experimentos aleatórios. Jogar uma moeda e observar a
face superior (cara ou coroa) é um experimento aleatório, uma vez que é impossível saber qual
das faces da moeda ficará voltada para cima. Exceto, se a moeda for viciada, ou seja, modificada
para ter um resultado mais frequentemente. Jogar um dado e observar o número que ficará na
face superior também é um experimento aleatório, uma vez que é impossível saber qual das faces
do dado ficará voltado para cima. Exceto, se o dado for viciado.
Definição 2.7.3 Experimento Determinístico é qualquer experiência cujo resultado seja
previamente conhecido.
Para representar o espaço amostral utilizamos a notação de conjuntos. Por exemplo, o espaço
amostral referente ao experimento “lançamento de uma moeda” é o conjunto Ω = {cara, coroa}.
Já o espaço amostral referente ao experimento “lançamento de um dado” é o conjunto Ω =
{1, 2, 3, 4, 5, 6}.
n(E)
PE = (2.17)
n(Ω)
Onde, n(E) é o número de resultados favoráveis e n(Ω) é o número de resultados possíveis
(ou seja, o numero de elementos do espaço amostral).
Exemplo 2.36 No lançamento de um dado, qual a probabilidade de sair o número um?
Nesse experimento, sair o número um é o evento E. Assim, n(E) = 1. O espaço amostral
desse experimento contém seis elementos: 1, 2, 3, 4, 5 e 6. Logo, n(Ω) = 6.
Assim, podemos calcular PE da seguinte maneira:
n(E) 1
PE = n(Ω)
= 6
= 0,1666 · · ·
Portanto,
PE = 16,6%
Exemplo 2.37 No lançamento de um dado, qual a probabilidade de sair o número par?
Nesse experimento, sair o número par é o evento E. Assim, n(E) = 3. O espaço amostral
desse experimento contém seis elementos: 1, 2, 3, 4, 5 e 6. Logo, n(Ω) = 6.
Assim, podemos calcular PE da seguinte maneira:
n(E) 3
PE = n(Ω)
= 6
= 0,5 · · ·
Portanto,
PE = 50%
Exemplo 2.38 No lançamento de um dado, qual a probabilidade de sair o número 7?
Nesse experimento, sair o número 7 é o evento E. Assim, n(E) = 0. Logo, E é um evento
impossível.
Exemplo 2.39 No lançamento de um dado, qual a probabilidade de sair um número maior ou
igual a 1 e menor ou igual a 6?
Nesse experimento, sair um número maior ou igual a 1 e menor ou igual a 6 é o evento E.
Assim, n(E) = 6. O espaço amostral desse experimento contém seis elementos: 1, 2, 3, 4, 5 e 6.
Logo, n(Ω) = 6. Observe que PE = 6/6 = 1. Assim, E é um evento certo.
P. 97 Seção 2.7
Problema 197 Uma urna contém bolas brancas, vermelhas e verdes. Sabendo-se que nela há
12 bolas brancas, 8 vermelhas e que as 5 restantes são verdes, se uma bola for retirada ao
acaso, qual é a probabilidade de que ela seja branca?
Solução. Nesse experimento, sair uma bola branca é o evento E. Assim, n(E) = 12. O
espaço amostral desse experimento contém 25 elementos. Logo, n(Ω) = 25.
Assim, podemos calcular PE da seguinte maneira:
n(E) 12
PE = n(Ω)
= 25
= 0,48
Portanto,
PE = 48%
Problema 198 — ENEM. Em uma central de atendimento, cem pessoas receberam senhas
numeradas de 1 até 100. Uma das senhas é sorteada ao acaso. Qual é a probabilidade de a
senha ser um número de 1 a 20.
(a) 1/100.
(b) 19/100.
(c) 20/100.
(d) 21/100.
(e) 80/100.
Problema 199 — Fundatec – 2019. Ao lançar uma moeda não viciada três vezes consecutivas,
a probabilidade de sair pelo menos duas caras é de:
(a) 10%.
(b) 20%.
(c) 30%.
(d) 40%.
(e) 50%.
Solução. A cada lançamento da moeda, há dois resultados possíveis: cara (c) ou coroa (k).
Como a moeda será lançada três vezes, há um total de 23 resultados possíveis. Logo, n(Ω) = 8.
Agora, vamos analisar os resultados possíveis:
Ω = {(c, c, c); (c, c, k); (c, k, c); (k, c, c); (k, k, k); (k, k, c); (k, c, k); (c, k, k)}
Seja E o evento desejado, ou seja, sair pelo menos duas caras, temos que:
Portanto, n(E) = 4.
Seção 2.7 P. 98
1 A probabilidade pode ser representada como fração, como porcentagem ou como número
decimal.
2 Se E e E 0 são eventos complementares, então: PE + PE 0 = 1.
3 A probabilidade de um evento E é sempre um número entre 0 (probabilidade de evento
impossível) e 1 (probabilidade do evento certo), ou uma porcentagem entre 0% e 100%.
Observe que, quando A e B forem eventos independentes (ou seja, o fato de ter ocorrido o
Obs evento B não altera a probabilidade de ocorrência do evento A) a fórmula anterior se reduz
a:
P (A ∩ B) = P (A)×P (B) (2.19)
Ω = {(C, 1); (C; 2); (C, 3); (C, 4); (C, 5); (C, 6); (K; 1), (K, 2); (K, 3); (K, 4); (K, 5); (K, 6)}
• A: ocorrer coroa
• B: ocorrer número primo
Observe que esses dois eventos são independentes, ou seja o fato do lançamento do dado
ter resultado em um número primo não altera a probabilidade de obter cara no lançamento da
moeda (e vice-versa).
Dessa forma, podemos utilizar a seguinte fórmula:
P (A ∩ B) = P (A)×P (B)
P. 99 Seção 2.7
n(A) 1
Note que P (A) = n(Ω)
= 2
= 0,5 = 50%.
n(B) 3
Veja que P (B) = n(Ω)
= 6
= 0,5 = 50%.
Logo,
1×1 1
P (A ∩ B) = P (A)×P (B) = 2 2
= 4
= 0,25 = 25%
Observe que, como não há reposição das etiquetas, esses dois eventos NÃO são independentes.
O fato de se obter uma vogal na primeira extração altera a probabilidade de obter uma vogal na
segunda extração, uma vez que não haverá a mesma quantidade de etiquetas durante a realização
do segundo evento.
Dessa forma, devemos utilizar a seguinte fórmula:
P (A ∩ B) = P (A|B)×P (B)
n(B) 3
Note que P (B) = n(Ω)
= 10
, pois, das dez letras, apenas 3 são vogais.
n(B)
Veja que P (A|B) = n(Ω)
= 29 , pois, se B ocorreu, restaram 9 letras e, dessas, apenas 2 são
vogais.
Logo,
2× 3 6 1
P (A ∩ B) = P (A|B)×P (B) = 9 10
= 90
= 15
v Saiba mais
Seção 2.8 P. 100
Definição 2.8.2 Os numerais são as palavras por meio das quais nos referimos às quantidades,
às ordens, aos múltiplos ou frações. Alguns exemplos de numerais são: um, dois, dez, treze,
primeiro, quinto, dobro, metade, etc. Neste material, vamos trabalhar com os numerais
cardinais, que expressam quantidades, tais como: um, dois etc.
Definição 2.8.3 Os algarismos são os símbolos que representam os números. Por exemplo: 1,
2, 13, 20 (algarismos indo-arábicos), IV, L, CD, M (algarismos romanos) etc. Neste material,
vamos trabalhar com os algarismos indo-arábicos.
Observe um detalhe interessante sobre o Exemplo 2.42. A ordem (unidade, dezena, centena) de
cada algarismo pode ser expressa como uma potência de base 10. Assim, podemos escrever:
Podemos observar uma relação entre a ordem do algarismo e o expoente aplicado à potência de
base 10.
N 8 4 7
dígitos (para n=3) d2 d1 d0
expoentes da base (para n = 3) 2 1 0
2 1
potências 10 10 100
produtos 8×102 4×101 7×100
Exemplo 2.44 Alguns números decompostos seguindo a regra geral descrita na fórmula 2.22:
• 12 = 1×101 + 2×100
• 8 = 8×100
• 1496 = 1×103 + 4×102 + 9×101 + 6×100
• 230 = 2×102 + 3×101 + 0×100
Problema 202 Decomponha os números a seguir conforme a regra geral apresentada na equação
2.22:
(a) 32 =
(b) 807 =
(c) 350 =
(d) 6=
(e) 13825 =
Seção 2.8 P. 102
(a) 53210.
(b) 53021.
(c) 50321.
(d) 500321.
(a) 9.
(b) 90.
(c) 900.
(d) 9000.
(e) 90000.
Problema 205 Nos números 1320, 203 e 2932, o valor posicional do algorismo 3 é, respectiva-
mente:
(a) 1001
(b) 0101
(c) 10
(d) 10101100
A lógica por trás da representação de um número na base binária é a mesma que vimos para
o sistema decimal; a única diferença é a base. Desta forma, podemos decompor os números
binários do Exemplo 2.45 da seguinte forma:
O sistema binário pode ser utilizado para representar qualquer conjunto dual, como desligado
e ligado, não e sim, falso e verdadeiro, 0 e 1, etc. Os dispositivos eletrônicos que baseiam-se em
circuitos digitais usam o sistema binário como “linguagem” e, nelas, ele é representado por 0s e
1s (dígitos binários ou simplesmente bit – do inglês de binary digit).
Vale destacar ainda que sistema binário é base da Álgebra Booleana (ou Álgebra de Boole),
por meio da qual é possível realizar operações lógicas e aritméticas com apenas dois estados.
Desta forma, é possível representar números, símbolos, caracteres e fazer operações ariméticas
e lógicas por meio de circuitos eletrônicos digitais bastante simples, os quais são chamados de
portas lógicas. Esses circuitos são capazes de executar operações aritméticas e lógicas de forma
extremamente rápida.
Alguns agrupamento de bits recebem nomes específicos (que muito provavelmente você já
Obs conhece):
• 1 byte = 8 bits;
• 1 kilobyte = 1.024 bytes;
• 1 gigabyte = 1.000.000.000 bytes,
Seção 2.8 P. 104
Observe a notação com os subscritos 2 e 10, para indicar a base de numeração dos valores
Obs listados.
Problema 207 Realize a conversão dos seguintes números binários para o sistema decimal:
(a) 1101012 =
(b) 10010112 =
(c) 101002 =
(d) 11100012 =
(e) 12 =
(f) 02 =
Problema 208 — IESES 2012. A seguir, apresentamos quatro números em suas representações
binárias: 0101001, 1101001, 0001101, 1010110. Assinale a alternativa que apresenta o somatório
dos 4 números acima convertidos para o formato decimal.
(a) 245.
(b) 101.
(c) 111.
(d) 267.
(e) 354.
P. 105 Seção 2.8
Para converter um dado número decimal para a base binária, realizamos sucessivas divisões do
número dado por 2, que é a base do sistema de numeração binário. Paramos de realizar as
divisões quando o quociente da divisão for menor que a base, que é 2.
21 2
(1) 10 2
(0) 5 2
(1) 4 2
(0) 2 2
(0)1
O processo para quando obtemos quociente igual a 1. Neste momento, o número binário
resultante da conversão é simplesmente a leitura, de baixo para cima, deste último quociente,
seguido de todos os restos das divisões. Assim, o número 21 em decimal é 100101 em binário.
Podemos escrever: 2110 = 100102 .
(a) 2510 =
(b) 1110 =
(c) 510 =
(d) 1310 =
Problema 210 — UFF 2012. Os computadores utilizam o sistema binário ou de base 2 que é um
sistema de numeração em que todas as quantidades se representam com base em dois números,
ou seja, (0 e 1). Em um computador o número 2012, em base decimal, será representado, em
base binária, por:
(a) 110111.
(b) 11111011100.
(c) 111110111000.
(d) 111110111.
(e) 1111010101.
Seção 2.8 P. 106
Números binários podem ser muito longos. Como exemplo, se convertermos o número 39410 para
a base binária, temos o número 1100010102 .
Em virtude disso, em algumas situações, outros sistemas são considerados para efeito de
representação e cálculo. O Sistema Hexadecimal é uma dessas opções, que vamos descrever
aqui.
A base desse sistema é 16. Os algarismos utilizados para representar números são: 0, 1, 2, 3,
4, 5, 6, 7, 8, 9, A, B, C, D, E, F.
As letras de A a F representam, respectivamente, os números de 10 a 15. Desta forma,
o número 394, ao ser convertido para a base hexadecimal, fica 18A. Para compreender este
resultado, vamos conhecer os processos de conversão entre este sistema e o sistema decimal.
O processo para conversão de um número na base hexadecimal para um número na base decimal
é o mesmo que vimos para a conversão binário-decimal. Seguiremos a mesma forma geral
apresentada na Equação 2.22. A única diferença será a base, que aqui é 16.
Exemplo 2.47 Vamos converter o número ABC para a base decimal:
(a) AAA16 =
(b) F F16 =
(c) 9B1216 =
(d) BB =
P. 107 Seção 2.8
Neste processo de conversão, vamos seguir a mesma lógica aplicada à conversão de binário para
decimal. A única diferença é que faremos sucessivas divisões por 16.
Exemplo 2.48 Vamos converter o número 438 para a base hexadecimal:
438 16
(6) 27 16
(11) 1
O número hexadecimal é dado pelo quociente da última divisão, seguido dos restos de todas as
divisões, tomados de baixo para cima. Com isto, temos o número 1116. Mas, como o número
11 é representado pelo algarismo B na base hexadecimal, devemos escrever 1B6. Resumindo:
43810 = 1B616 .
(a) 5810 =
(b) 3310 =
(c) 36010 =
(d) 24110 =
(a) 100(10) ;
(b) 155(10) ;
(c) 137(10) ;
(d) 9(10) ;
(e) 444(10) ;
(f) 999(10) ;
(g) 399(10) ;
(h) 13(10) ;
(i) 1000(10) ;
(j) 333(10) ;
(k) 666(10) ;
(l) 0001(10) ;
(m) 0011(10) ;
P. 109
Embora nosso estudo esteja voltado especificamente a computadores, vale ressaltar que
Obs outros aparelhos ou dispositivos tecnológicos, como smartphones, tablets e consoles de jogos
eletrônicos são também constituídos de hardware e software.
3.1.1 – Hardware
Hardware é a parte física do computador, que inclui monitor, teclado, gabinete e mouse. Tais
dispositivos podem ser categorizados como:
Existem alguns dispositivos que funcionam tanto para entrada quanto para saída. Como
Obs exemplo, podemos citar as telas touchscreen, presentes em alguns monitores e em smartpho-
nes e tablets.
Solução. Os dispositivos indicados nos itens (a) a (d) na Figura 3.1 são:
Dispositivos de Armazenamento
No dia-a-dia, normalmente utilizamos cadernos e blocos (ou até mesmo aplicativos) de notas para
guardarmos informações que desejamos ser capazes de recuperar rapidamente para relembrar
sempre que necessário.
O computador tem como uma de suas principais caraterísticas a capacidade de guardar um
grande volume de dados e de manipulá-los com muita rapidez. Que dados são esses? Vamos ver
alguns exemplos no Exemplo 3.1.
Exemplo 3.1 Alguns exemplos de dados que o computador armazena e manipula:
• Arquivos de fotos;
• Arquivos de músicas;
• Documentos de texto;
• Arquivos de programas;
• Arquivos de vídeo etc.
Os múltiplos de bits começam com o byte, que é representado por oito bits. A partir do
byte, são definidos os múltiplos utilizados para representar quantidades manipuladas:
A evolução dos computadores resultou em um aumento significativo da capacidade de ar-
mazenamento e processamento. Assim, podemos encontrar dispositivos de armazenamento com
capacidade medida em Terabyte (TB), que equivale a 240 bytes, ou 1.024 Gigabytes (GB).
Além de seu tamanho, a memória se caracteriza por ser de dois tipos distintos: a Memória
Principal e a Memória Secundária.
Memória Principal
A Memória Principal é encarregada de armazenar dados que estão sendo utilizados no momento
em que um usuário está utilizando o computador. Portanto, ela funciona somente quando o
computador está ligado. Ela fica na parte interna do computador, por isso dificilmente ela é vista.
A Figura 3.2 ilustra um exemplo de chip de memória.
Por funcionar somente quando o computador está ligado, a memória principal é dita volátil.
Isso significa que, quando o computador é desligado, tudo o que estava nessa memória se perde!
Assim, quando você está trabalhando em um documento, numa planilha de dados ou outro tipo
de arquivo, é importante que você os salve para não perdê-los. Alguns aparelhos e aplicativos
possuem a função de salvar automaticamente, porém não é uma boa ideia se acostumar a utilizar
somente esses recursos. O ideal é adotar o hábito de ativamente salvar seus arquivos enquanto
trabalha. Ao salvar um arquivo, ele está sendo enviado para um dispositivo de armazenamento
secundário, a Memória Secundária.
Memória Secundária
Processador
• A unidade de controle (UC) assume toda a tarefa de controle das ações a serem realizadas
pelo computador, comandando todos os demais componentes da máquina. É a UC que deve
garantir a correta execução dos programas e a utilização dos dados corretos nas operações
que as manipulam.
• Os registradores compõem uma memória interna à CPU, que permite o armazenamento de
valores intermediários ou informação de comando. São memórias de altíssima velocidade,
mas com capacidade de armazenamento bem limitada.
Exemplo 3.3 A Figura 3.4 ilustra a evolução gráfica em jogos de duas famosas franquias. O
surgimento da GPU possibilitou “liberar” a CPU do processamento de cálculos mais pesados
necessários à exibição gráfica, sem comprometer a velocidade de processamento da CPU. A GPU
fica localizada na chamada placa de vídeo.
• Unidade de processsamento
3.1.2 – Software
São os programas que nos permitem realizar atividades específicas num computador. Jogos,
editores de texto, editores de fotos e navegadores web são exemplos de software.
O hardware e o software sempre trabalham em conjunto. Enquanto o software faz as operações,
o hardware é a parte física com a qual essas funções podem ser realizadas.
A variedade de softwares que encontramos à nossa disposição é imensa, e eles podem ser
classificados conforme o seu propósito. Assim, podemos dividir os softwares nos seguintes tipos:
software básico, software aplicativo e software utilitário.
Software Básico
São programas utilizados para o funcionamento do sistema. Por exemplo, quando queremos abrir
um arquivo, não precisamos nos preocupar com os mecanismos físicos que devem ser acionados
para que esse arquivo seja encontrado e exibido. Resumindo, o software básico promove a
interação entre máquina e usuário. Exemplos de softwares básicos são o sistema operacional,
compiladores etc.
Software Aplicativo
São programas utilizados pelos usuários para auxiliar nas tarefas realizadas no dia a dia. Dentre os
softwares aplicativos, podemos citar os editores de texto, navegadores web, planilhas eletrônicas,
programas gráficos, editores de vídeo etc.
Software Utilitário
São programas que permitem ao usuário realizar tarefas adicionais àquelas oferecidas pelo sistema
operacional. Exemplos de softwares utilitários são os compactadores de arquivos (como o Winzip),
os antivírus, os aplicativos para desfragmentação de unidades de discos etc.
Exercício 3.3 Classifique os componentes abaixo como hardware ou software:
Vimos, na Definição 3.1, que o computador é uma máquina capaz de executar instruções. Nesta
seção, vamos aprender como podemos escrever e organizar essas instruções, conhecendo seus
principais comandos e estruturas. Vamos, portanto, aprender a construir algoritmos.
Definição 3.2.1 Um Algoritmo é uma sequência de instruções a serem executadas para a
resolução de um problema.
• As instruções devem ser listadas de modo a seguir uma ordem lógica. A Seção 3.2.3
aprofundará a discussão sobre este requisito.
• Como as instruções serão executadas para produzir uma resultado, ou uma solução para
um problema, tais instruções devem garantir que a quantidade de passos a serem
executados seja finita.
• As instruções não podem conter ambiguidades, ou seja, cada passo a ser executado
deve ser escrito de forma a não permitir mais de uma interpretação. Uma máquina não é
capaz de interpretar metáforas, nem resolver ambiguidades!
O vídeo a seguir mostra uma campanha publicitária da Associação Brasileira de Imprensa, que
destaca o problema da ambiguidade na língua portuguesa por meio de exemplos de frases e
informações que mudam seu sentido por meio do emprego da vírgula.
Exemplo 3.4 Um exemplo clássico de algoritmo é uma receita de bolo. A receita descreve as
regras e operações necessárias para a conclusão de seu objetivo: a preparação de um bolo. A
Figura 3.6 mostra um exemplo de receita.
Ao observar uma receita com atenção, vemos que ela começa descrevendo os ingredientes e
suas quantidades. Em seguida, a receita apresenta as regras para o preparo do bolo, como, por
exemplo, a ordem em que os ingredientes devem ser incluídos, como misturá-los, instruções para
assar a massa, etc.
Repare que, para o bolo sair da maneira como indica a receita, é necessário que as instruções
para o seu preparo sejam executadas corretamente. Se alguma instrução tiver sido executada na
ordem trocada, ou a quantidade de alguns ingredientes for alterada, o resultado será diferente
daquele esperado.
Da mesma forma, em programação, precisaremos que o computador execute as instruções de
modo a solucionar um dado problema. Assim, é nossa responsabilidade escrever algoritmos de
modo a prover as instruções na ordem correta, sem ambiguidades e em uma quantidade finita de
etapas.
Analisando o Exemplo 3.4, percebemos que um algoritmo se mostra útil quando desejamos
ensinar uma pessoa a realizar determinada tarefa.
P. 117 Seção 3.2
Exemplo 3.5 Na Figura 3.7, podemos ver uma sequência de instruções para ensinar uma pessoa
a sacar dinheiro em um caixa eletrônico.
É importante notar que a solução apresentada no algoritmo apresentado na Figura 3.7 pode
ser mais detalhada, incluindo mais passos para deixar as instruções ainda mais claras.
Exercício 3.5 Que outros passos você sugeriria incluir no algoritmo do Exemplo 3.5 (Figura
3.7) para deixá-lo mais preciso e detalhado?
Solução. Não existe solução única para o Exercício 3.5. No entanto, vamos deixar aqui uma
das inúmeras possíveis soluções para aprimorar o algoritmo do Exemplo 3.5 (veja Figura 3.8).
Solução. É possível ver nas Figuras 3.9, 3.10 e 3.11 propostas bem rudimentares de al-
goritmos para cada problema. Você pode propor melhorias e aprimoramentos aos algoritmos
apresentados.
Seção 3.2 P. 118
Algoritmo aprimorado para sacar dinheiro em um caixa eletrônico.
Início
1 - ir até o caixa eletrônico.
2 - inserir o cartão.
3 - aguardar terminal solicitar a senha.
4 - digitar a senha.
5 - escolher operação a ser efetuada: “saque”.
6 - informar valor a sacar.
7 - retirar dinheiro e cartão.
8 - guardar dinheiro e cartão.
9 - sair do caixa eletrônico.
Fim
Como foi dito antes, os algoritmos apresentados nas Figuras 3.9, 3.10 e 3.11 são sequências
de instruções rudimentares. Observando com atenção, podemos aprimorar essas sequências
de instruções, adicionando detalhes a cada passo a ser executado, e até mesmo propondo um
conjunto diferente de passos para resolver os mesmos problemas.
É importante despertar o olhar crítico sobre os exemplos apresentados (em especial, as soluções
do Exercício 3.6), e tentar propor melhorias a cada um deles. Mas, não se preocupe: com a
prática, vamos adquirindo essa habilidade. Aqui vão algumas dicas de como proceder antes de
escrever um algoritmo:
(a) Verifique se você compreendeu bem o problema. Isso é essencial para propor os passos para
se chegar à sua solução;
(b) Procure reconhecer e listar os elementos necessários à solução do problema;
(c) Pense em uma ordem lógica para os passos que vão utilizar e manipular os elementos
envolvidos na solução.
Escrever algoritmos é como andar de bicicleta. Quando mais praticamos, mais habilidosos
Obs ficamos!
P. 119 Seção 3.2
Solução do Exercício 3.6(b): Algoritmo para fazer uma tapioca com coco ralado.
Início
1 - pegar a goma da tapioca.
2 - despejar a goma em uma vasilha.
3 - pegar o coco ralado.
4 - despejar o coco ralado na mesma vasilha da goma.
5 - adicionar sal à mistura de tapioca e coco ralado.
6 - pegar um frigideira.
7 - colocar a frigideira no fogão.
8 - esperar a frigideira aquecer.
9 - colocar um pouco de tapioca na frigideira quente.
10 - esperar a goma assar.
11 - virar a tapioca.
12 - servir a tapioca em um prato.
Fim
Figura 3.10: Um algoritmo para fazer uma tapioca com coco ralado.
Vamos praticar a escrita de algoritmos para solucionar alguns jogos. Nesta subseção, vamos
analisar alguns exemplos.
Exemplo 3.6 Considere o seguinte jogo: você tem três missionários e três canibais juntos, à
margem de um rio. Sua missão é atravessar os missionários e os canibais para a outra margem
do rio, sob as seguintes condições:
Um dos possíveis algoritmos para solucionar este problema está apresentado na Figura 3.12.
Você pode acessar o jogo dos missionários e canibais no site do Racha Cuca. Aproveite
Obs para experimentar outros jogos disponíveis no site!
Exemplo 3.7 Considere o jogo a seguir: um robô precisa da sua ajuda para chegar até uma
Tela do jogo da travessia dos missionários e canibais, do site Racha Cuca. Acesso em 26/08/2021.
• A trajetória do robô deve ser feita de modo que ele ocupe um ladrilho por vez.
• Cada novo ladrilho a ser ocupado pelo robô deve compartilhar uma aresta com o ladrilho
onde ele estava anteriormente. As Figuras 3.14(a) e 3.14(b) indicam movimentações
válidas para o robô.
• Não são permitidas movimentações entre ladrilhos que não compartilham uma aresta entre
si. A Figura 3.14(c) indica um movimento não permitido para o robô.
• Cada movimentação ocorrerá mediante uma instrução dada por você. As instruções poderão
ser:
– Mover para a frente. Esta instrução faz o robô avançar um ladrilho apenas.
– Girar para a direita X graus. Esta instrução faz o robô girar para a direita, sem
sair do ladrilho onde está. O ângulo do giro será dado pelo valor que você der a X.
– Girar para a esquerda X graus. Esta instrução faz o robô girar para a esquerda,
sem sair do ladrilho onde está. O ângulo do giro será dado pelo valor que você der a
X.
Exercício 3.7 É possível observar que o Algoritmo apresentado na Figura 3.15 não é a única
sequência de instruções possível para resolver o problema. Para praticar, proponha um outro
algoritmo para resolver o jogo do Robô.
Solução. Podemos ver, na Figura 3.16, uma solução alternativa para o algoritmo apresentado
P. 121 Seção 3.2
na Figura 3.15.
É importante ressaltar que você pode encontrar uma solução diferente da apresentada na
Obs Figura 3.16!
Exercício 3.8 Considere o seguinte jogo: temos um robô capaz de realizar trajetórias específicas,
deixando um rastro por onde passa. Nossa missão é ajudá-lo a descrever trajetórias, de modo
a deixar rastros que formem desenhos.
O robô é capaz de compreender instruções do tipo:
Proponha instruções para que o robô deixe rastros desenhando as seguintes figuras geomé-
tricas:
Solução. Os algoritmos apresentados nas Figuras 3.17 e 3.18 são exemplos de soluções para
os Exercícios 3.8(a) e 3.8(b).
Exemplo 3.8 Considere o jogo das Torres de Hanoi. O jogo consiste em mover os três anéis
coloridos organizados por tamanho, empilhados na haste ORIGEM, para a haste DESTINO, sob
as seguintes condições:
Seção 3.2 P. 122
Algoritmo para o jogo do Robô.
Início
1 - Girar para a esquerda 45 graus.
2 - Mover para a frente.
3 - Girar para a direita 90 graus.
4 - Mover para a frente.
5 - Mover para a frente.
6 - Mover para a frente.
7 - Girar para a esquerda 90 graus.
8 - Mover para a frente.
9 - Mover para a frente.
10 - Mover para a frente.
11 - Girar para a esquerda 90 graus.
12 - Mover para a frente.
13 - Girar para a direita 90 graus.
14 - Mover para a frente.
Fim
Deve-se observar que a solução apresentada é apenas uma das soluções possíveis. Ou-
Obs tras sequências de passos podem ser propostas, contanto que solucione o problema sem
desobedecer às suas regras.
Os algoritmos vistos até este ponto do nosso material descreveram passos para realizar tarefas
comuns do dia-a-dia, ou para solucionar alguns jogos. A seguir, vamos observar alguns outros
exemplos de algoritmos para a solução de problemas voltados a um contexto matemático.
Exemplo 3.9 Considere uma aplicação que recebe, de um usuário, dois números e imprima o
resultado da soma desses dois números. O algoritmo da Figura 3.21 apresenta uma sequência de
instruções para que esta tarefa seja executada.
Exemplo 3.10 Considere uma aplicação que recebe, de um usuário, dois números e imprime
o resultado do produto entre esses dois números. O algoritmo da Figura 3.22 apresenta uma
sequência de instruções para que esta tarefa seja executada.
Exemplo 3.11 Considere uma aplicação que recebe dois números e imprime o resultado da
divisão do primeiro número fornecido pelo segundo número fornecido. O algoritmo da Figura
3.23 apresenta uma sequência de instruções para que esta tarefa seja executada.
Exemplo 3.12 Considere uma aplicação que calcula a média aritmética simples de dois números
informados por um usuário. O algoritmo da Figura 3.24 apresenta uma sequência de instruções
para que esta tarefa seja executada.
P. 123 Seção 3.2
Figura 3.17: Um algoritmo para ajudar o robô do Exercício 3.8(a) a descrever uma trajetória
quadrada.
Exercício 3.9 Com base nos exemplos vistos nas Figuras 3.21 a 3.24, proponha um algoritmo
para calcular a área de um triângulo.
Solução. O algoritmo proposto na Figura 3.25 é uma das possíveis soluções para o Exercício
3.9.
Exercício 3.10 Com base nos exemplos vistos nas Figuras 3.21 a 3.24, proponha um algoritmo
para calcular a área de um quadrado.
Solução. O algoritmo proposto na Figura 3.26 é uma das possíveis soluções para o Exercício
3.10.
Seção 3.2 P. 124
Algoritmo para o robô do Exercício 3.8(b).
Início
1 - Andar para a frente 2 metros.
2 - Girar para a direita 60 graus.
3 - Andar para a frente 2 metros.
4 - Girar para a direita 60 graus.
5 - Andar para a frente 2 metros.
Fim
Figura 3.18: Um algoritmo para ajudar o robô do Exercício 3.8(b) a descrever uma trajetória
triangular.
Os algoritmos vistos anteriormente neste material têm sido representados como um texto estrutu-
rado, ao qual damos o nome de Descrição Narrativa. Porém, existe uma representação gráfica
para algoritmos, denominada Fluxograma.
Definição 3.2.2 Um Fluxograma é um diagrama utilizado para representar um algoritmo.
Exercício 3.11 Proponha um algoritmo para calcular a área de um círculo, dada a medida do
seu raio. Represente seu algoritmo como descrição narrativa e como fluxograma.
Solução. Um algoritmo para resolver o problema do Exercício 3.11 pode ser visto na Figura
3.29.
P. 125 Seção 3.2
Figura 3.20: Uma solução possível para o jogo das Torres de Hanoi.
Alguns problemas, para serem solucionados por meio de um algoritmo, podem necessitar de um
conjunto mais “sofisticado” de instruções. É possível que seja necessário, por exemplo, listar
dentro do algoritmo subconjuntos de instruções, que deverão ser executadas somente mediante
a ocorrência de alguma situação específica. Além disso, em algumas situações, precisaremos
sinalizar, em nossa escrita, a necessidade de se executar uma mesma instrução mais de uma
vez (sem escrever a mesma instrução repetidas vezes). Nesta seção, vamos conhecer algumas
estruturas que nos auxiliam a organizar a escrita dos nossos algoritmos. Tais estruturas são
denominadas Estruturas de Controle, e serão abordadas nas subseções 3.2.3, 3.2.4 e 3.2.5.
3.2.3 – Sequenciação
A própria Definição 3.2 nos mostra que um algoritmo é uma sequência de instruções. Diante deste
conceito, um aspecto importante que devemos destacar é que as instruções serão executadas
na sequência em que foram escritas. Por isto, é muito importante que possamos ordenar as
instruções de maneira apropriada. Para compreender melhor, vamos analisar alguns exemplos.
Exemplo 3.14 Vamos considerar uma versão modificada do algoritmo da Figura 3.11, que
consiste em instruções para uma pessoa atravessar uma rua. A versão modificada pode ser vista
na Figura 3.30.
Neste caso, a troca na ordem das instruções 1 e 2 não surtiu nenhum efeito drástico. Observe,
porém, o que aconteceria se uma dessas duas primeiras instruções tivesse sido trocada com a
instrução 3. Esta nova versão pode ser vista na Figura 3.31.
O algoritmo da Figura 3.31 surtiria um efeito indesejado: uma pessoa que seguisse essas
instruções poderia correr perigo!
Exemplo 3.15 Vamos, agora, considerar o algoritmo para preparar uma tapioca com coco
ralado, descrito na Figura 3.10, e vamos trocar de lugar algumas de suas instruções.
Podemos notar que o algoritmo não teria a sua execução concluída, ao se trocar a ordem de
Seção 3.2 P. 126
Algoritmo para calcular o produto entre dois números fornecidos.
Início
1 - obter o primeiro número, fornecido pelo usuário.
2 - obter o segundo número, fornecido pelo usuário.
3 - efetuar a operação de multiplicação entre os dois números.
4 - exibir o resultado da operação para o usuário.
Fim
certos passos. O passo 7 (esperar a goma assar), por exemplo, jamais seria concluído, pois a
frigideira sequer tinha sido aquecida. A frigideira só vai aquecer depois dos passos 8 e 9. Assim,
a sequência de passos apresentada na Figura 3.32 não constitui um algoritmo para realizar a
tarefa proposta.
Exemplo 3.16 A Figura 3.33 mostra um algoritmo que não resultará na solução do problema a
ser resolvido. As instruções desse algoritmo não estão organizadas em uma sequência lógica, que
permita a correta execução dos seus passos.
Analisando os Exemplos 3.14 a 3.16, é possível notar que a ordem dos passos de um algo-
ritmo é de grande importância. É necessário sequenciar as instruções de maneira apropriada,
compreendendo as dependências entre cada passo a ser executado.
Definição 3.2.3 Concluindo, podemos dizer que a sequenciação é uma convenção que de-
termina que as instruções de um algoritmo serão executadas seguindo a ordem ocidental de
leitura e escrita: de cima para baixo e da esquerda para a direita.
Momento curiosidade: o vídeo a seguir aborda a diferença entre a ordem de leitura ocidental e
a ordem de leitura oriental, utilizando quadrinhos e mangás como exemplos.
Solução. Podemos ver na Figura 3.35 um fluxograma para representar o algoritmo da Figura
3.21.
P. 127 Seção 3.2
Figura 3.24: Um algoritmo para calcular a média aritmética simples de dois números.
3.2.4 – Decisão
No dia-a-dia, é comum termos de decidir que ações tomar, a depender de alguma condição. Por
exemplo, se recebermos um convite para ir ao cinema, primeiro verificamos se podemos ir. Após
essa verificação, realizamos, ou não, a ação de aceitar o convite e ir ao cinema.
O Exemplo 3.17 mostra como podemos estruturar esse raciocínio.
Exemplo 3.17 Um algoritmo para decidir se vamos ou não ao cinema pode ser visto na Figura
3.36.
Exemplo 3.18 Considere um algoritmo que obtenha a média final de um(a) aluno(a) e informe
se ele(a) passou direto ou não. A Figura 3.37 ilustra os passos para a realização desta tarefa.
Observe, na Figura 3.37, que se a média final do(a) aluno(a) for, por exemplo, 9 (nove),
o algoritmo irá executar a instrução indicada no passo 3 e não irá executar a instrução
indicada no passo 5. Da mesma forma, aplicando o mesmo algoritmo, se a média final do(a)
aluno(a) for, desta vez, 3,5 (três e meio), o algoritmo irá executar a instrução do passo 5 e não
irá executar a instrução do passo 3.
Exemplo 3.19 Vamos observar novamente o algoritmo da Figura 3.23, que realiza uma operação
de divisão entre dois números fornecidos. Analisando o algoritmo com cuidado, percebemos que,
a depender do segundo número fornecido pelo usuário, poderíamos acabar forçando a execução de
uma operação matemática inválida! Estamos nos referindo ao caso de o segundo número fornecido
ser igual a zero. Sabemos que não existe divisão por zero, então é importante escrevermos uma
versão melhorada daquele algoritmo. A Figura 3.38 ilustra um aprimoramento possível para o
algoritmo.
Observando os algoritmos das Figuras 3.36 a 3.38, percebemos a utilização das palavras
Obs se, então e senão. Elas são palavras especiais, escolhidas para escrever uma estrutura de
decisão em um algoritmo.
Seção 3.2 P. 128
Algoritmo para calcular a área de um quadrado.
Início
1 - obter, do usuário, a medida do lado do quadrado.
2 - efetuar a operação de potência no valor fornecido pelo usuário, elevando esse valor a 2 (ou seja, elevar a
Fim
• O teste realizado dentro da estrutura de decisão será sempre uma expressão que terá como
resultado os valores VERDADEIRO ou FALSO. A Seção 3.3.5 discute tais expressões.
• Observe, nos exemplos apresentados na Seção 3.2.4, um recuo na escrita das instruções
abaixo das linhas que contêm as palavras se...então e senão. A esse recuo, damos o nome
de indentação e ele serve para indicar quantos e quais comandos estão subordinados à
estrutura de decisão.
• Os comandos listados e indentados logo abaixo da linha que contém o “se teste então”
serão aqueles executados no caso específico de o teste resultar em VERDADEIRO.
• Os comandos listados e indentados logo abaixo da linha que contém o comando “senão”
são aqueles que serão executados no caso específico de o teste resultar em FALSO.
• Observando a Figura 3.41, podemos perceber que em uma estrutura de decisão, a porção
“senão” não é obrigatória na estrutura. Porém, a porção “se ... então” o é.
Figura 3.29: Um algoritmo para calcular a área de um círculo, em duas representações diferentes.
Exemplo 3.20 Considere o problema de verificar se um dado número é par. Um algoritmo para
este problema pode ser visto na Figura 3.43.
Observe, no algoritmo da Figura 3.43, na linha 3, o teste feito pelo estrutura de decisão:
Obs
Podemos notar que o teste tem a forma de uma “pergunta” que só aceita “sim” ou “não”
como resposta. Em outras palavras, o teste será sempre uma expressão que só produzirá
como resultado os valores VERDADEIRO ou FALSO.
Exemplo 3.21 Considere um sistema que recebe de um usuário um número. Caso o número
Figura 3.31: Mais uma modificação ao algoritmo para atravessar uma rua.
os dois comandos nessas linhas são parte da porção “senão” da estrutura. Assim, os comandos
das linhas 7 e 8 somente serão executados se o teste resultar em FALSO. Ainda analisando este
algoritmo, percebemos que o comando escrito na linha 10 não está indentado e está escrito após o
comando fim-se. Isso significa que ele não faz parte da estrutura “se...então...senão”. Ele é um
comando que será executado de forma independente, em sequência ao que tiver sido executado
dentro da estrutura “se...então...senão”.
Exemplo 3.22 Considere um sistema que exibe uma mensagem para um usuário, caso a idade
fornecida seja maior do que 18 anos. Caso o usuário não seja maior de 18 anos, nenhuma ação
será executada. A Figura 3.45 apresenta um algoritmo para este sistema.
Podemos perceber que a estrutura de decisão do algoritmo da Figura 3.45 não possui a porção
“senão”. Ela é somente necessária quando precisamos especificar ações a serem tomadas no caso
de o teste resultar em FALSO. Neste exemplo, é possível ver que o algoritmo não executará
nenhuma ação caso o teste de idade resulte em FALSO (ou seja, a idade fornecida seja menor do
que 18).
Como pudemos ver nesta seção, a estrutura “se...então...senão” divide o fluxo de execução do
algoritmo em dois possíveis caminhos (veja Figura 3.39). Porém, alguns problemas que vamos
desejar resolver com algoritmos poderão contemplar uma quantidade maior de possibilidades de
desvios no fluxo de execução de suas ações.
Exemplo 3.23 Vamos analisar novamente o algoritmo da Figura 3.37, que determina se um(a)
aluno(a) PASSOU DIRETO ou NÃO PASSOU DIRETO. Os desvios no fluxo de execução podem
ser visualizados no fluxograma da Figura 3.46.
Pensando no problema em um contexto real, sabemos que o(a) aluno(a) que não passa direto
tem ainda outras duas possibilidades: ir para a recuperação, ou ser reprovado(a) direto. Assim, a
partir do ponto do algoritmo em que o(a) aluno(a) não passou direto, um novo teste poderia ser
feito para testar novamente a média do(a) aluno(a), para saber se ele(a) vai para a recuperação
ou se está reprovado(a) direto.
Podemos modelar esse problema por meio da escrita de uma estrutura de decisão dentro da
outra, sinalizando um novo teste feito a partir do teste recém efetuado. Chamamos esse processo
de aninhamento de estruturas de decisão. Desta forma, podemos propor uma versão melhorada
do algoritmo da Figura 3.37, utilizando aninhamento de estruturas de decisão para contemplar
P. 131 Seção 3.2
Figura 3.32: Um algoritmo modificado para fazer uma tapioca com coco ralado.
Figura 3.33: Um algoritmo para calcular a área de um círculo. OBS: Esse algoritmo não produzirá
o resultado necessário!
as duas outras possibilidades, uma vez que um(a) aluno(a) não tenha passado direto. Vamos
supor que, para ir para a recuperação, a média deve ser menor do que 7 e maior ou igual a 4. A
Figura 3.47 apresenta o algoritmo em questão.
Uma dica para melhor compreender o fluxograma da Figura 3.48, tome, por exemplo, o
Obs valor 5 para a média e percorra o caminho pelo fluxograma com base neste valor. Depois
teste com um valor 3 e veja que caminho será percorrido. Por fim, tome um valor 9 e
percorra uma última vez o fluxograma. Você deverá ter percorrido um caminho diferente
para cada um desses valores.
Figura 3.35: Um algoritmo para calcular a soma de dois números, representado em fluxograma.
Exercício 3.14 Observe, na Figura 3.49, que na linha 8, o algoritmo executa um comando de
exibição de mensagem afirmando que o número fornecido é igual a 10. É realmente possível
tirar essa conclusão na linha 8? Demonstre sua conclusão.
Solução. Sim, é possível concluir, na linha 8 do algoritmo da Figura 3.49 que o número
fornecido pelo usuário foi igual a 10. É possível concluir isso, porque, para chegar à linha 8, é
necessário que o teste feito na linha 5 tenha resultado em FALSO (ou seja, o número não é maior
do que 10); e para chegar à linha 5, que testa se o número é menor que 10, é necessário que
o teste feito na linha 2 tenha resultado em FALSO também (o teste se o número é maior que
10). Logo, o número fornecido nem é maior, nem é menor que 10. Assim, o número fornecido só
pode ser igual a 10. Observando o mesmo algoritmo em fluxograma (veja Figura ??), é possível
compreendê-lo melhor.
Recomenda-se testar o algoritmo com o valor de entrada igual a 10 e verificar o fluxo de
instruções a serem executadas.
Exercício 3.15 Proponha um algoritmo para obter uma informação de hora de um usuário e
exibir uma saudação de acordo com a hora informada. As possíveis saudações variam conforme
a hora informada e podem ser:
Solução. A Figura 3.51 apresenta um algoritmo para o problema exposto no Exercício 3.15.
É deixado para o(a) aluno(a) a tarefa de esboçar um fluxograma para representar o mesmo
algoritmo.
É importante ressaltar que o algoritmo da Figura 3.51 não é a única sequência de instruções
Obs válida para resolver o problema. Você pode propor versões diferentes desse algoritmo e
ainda assim, estar correto!
Exercício 3.16 Proponha um algoritmo que receba 3 números e os exiba em ordem crescente.
Algoritmo para informar se um(a) aluno(a) passou direto, dada a sua média final.
Início
1 - obter a média final do(a) aluno(a).
2 - se a média for maior ou igual a 7 então
3 - exibir mensagem de “PASSOU DIRETO”
4 - senão
5 - exibir mensagem de “NÃO PASSOU DIRETO”
6 - fim-se
Fim
Figura 3.37: Um algoritmo para informar se um(a) aluno(a) passou direto, dada a sua média
final.
• A>C>B
• C>A>B
• B>A>C
• B>C>A
• C>B>A
Para identificar cada possível caso, utilizaremos estruturas de decisão aninhadas, para conduzir
os testes entre os três valores fornecidos. A Figura 3.52 apresenta um algoritmo para resolver
este problema. Nesse algoritmo, podemos perceber a importância da indentação para melhorar a
compreensão sobre quais comandos pertencem a quais estruturas.
Nunca é demais repetir que o algoritmo da Figura 3.52 não é o único possível para resolver
Obs o problema. Dois ou mais algoritmos podem ser diferentes, mas se produzirem o mesmo
resultado, estão todos corretos.
3.2.5 – Repetição
Algumas ações precisam ser executadas repetidas vezes em um algoritmo. No entanto, isso não
significa que precisamos escrever as mesmas instruções repetidas vezes. Vamos conhecer, nesta
subseção, as estruturas de controle utilizadas para organizar instruções que se repetem.
Vamos analisar novamente a tarefa de trocar uma lâmpada, com algoritmo apresentado na
Figura 3.9. Desta vez, vamos considerar que existe a possibilidade de a nova lâmpada a ser
instalada estar também queimada. Assim, é necessário testar a nova lâmpada antes de instalá-la.
Além disso, se a lâmpada nova estiver queimada, será necessário obter uma outra lâmpada e
Seção 3.2 P. 134
Algoritmo melhorado para exibir o resultado da divisão entre dois números fornecidos.
Início
1 - obter o primeiro número, fornecido pelo usuário.
2 - obter o segundo número, fornecido pelo usuário.
3 - se o segundo número for diferente de zero então
4 - efetuar a operação de divisão dos dois números.
5 - exibir o resultado da operação para o usuário.
4 - senão
5 - exibir mensagem de “NÃO FOI POSSÍVEL REALIZAR A OPERAÇÃO DE DIVISÃO!”
6 - fim-se
Fim
Figura 3.38: Um algoritmo melhorado para exibir o resultado da divisão entre dois números
fornecidos.
testá-la também. O processo deverá se repetir até que finalmente tenhamos encontrado uma
lâmpada boa para instalar. A Figura 3.54 apresenta uma sequência de instruções para este
processo.
A sequência de instruções da Figura 3.54 não pode ser chamada de um algoritmo, visto que a
quantidade de instruções não é finita. O problema ocorre, porque não é possível determinar até
quando será feito o teste se a lâmpada está queimada.
Observe que o teste da lâmpada nova é efetuado por um mesmo conjunto de ações:
1 - se teste então
2 - comando ou uma lista de comandos
3 - fim-se
Para a tarefa de trocar uma lâmpada, poderíamos estruturar as instruções anteriormente escritas
da seguinte forma:
O teste se a lâmpada não acender se manteve. Porém, nessa nova estrutura, ficou estabelecido
um fluxo de repetições dessas instruções que será finalizado assim que o teste resultar em FALSO,
ou seja, assim que uma lâmpada nova estiver funcionando e acender. Note que o número de
repetições é indefinido, porém a quantidade de instruções escritas é finita.
Vamos comparar as duas estruturas, a de decisão e a de repetição, lado a lado, na Figura 3.56.
Perceba que o teste realizado nas duas estruturas é o mesmo. A diferença é que na estrutura de
decisão, as ações são executadas apenas uma vez. A estrutura de repetição, por sua vez, repete
a execução os comandos, refazendo o teste toda vez que uma nova repetição está prestes a ser
executada. As repetições param quando o teste resultar em FALSO.
Seção 3.2 P. 136
1 - se teste então
2 - comando ou uma lista de comandos
3 - senão
4 - comando ou lista de comandos
5 - fim-se
Exercício 3.17 Represente as estruturas apresentadas na Figura 3.56 por meio de fluxogramas.
Comente a diferença entre essas estruturas.
Figura 3.44: Um algoritmo para realizar ações específicas, a depender de um número fornecido
por um usuário ser par ou ímpar.
Algoritmo para realizar uma ação específica se usuário for maior de idade.
Início
1 - obter, do usuário, o número referente à sua idade.
2 - se idade fornecida for maior ou igual a 18 então
3 - exibir mensagem informando que o usuário é maior de idade.
4 - fim-se
Fim
Figura 3.45: Um algoritmo que realiza uma ação somente se a idade informada pelo usuário for
maior ou igual a 18 anos.
Podemos perceber que, a partir da segunda ação, há uma repetição de ações. Além disso, não
foi possível determinar de antemão quantas vezes as ações se repetirão. Assim, será necessário
escrever um algoritmo utilizando uma estrutura de repetição do tipo enquanto...faça. A Figura
3.58 apresenta um algoritmo para o problema proposto no Exercício 3.18.
Figura 3.47: Um algoritmo para determinar o resultado final de um(a) aluno(a), dada a sua
média final.
Exemplo 3.25 Vamos considerar uma estrutura de repetição do tipo para...faça que necessite
atualizar o contador de repetições de 3 em 3 unidades. Para indicar essa atualização especial,
utilizamos a palavra especial passo, e a estrutura é escrita como segue:
Exemplo 3.26 A atualização do contador de repetições pode variar de modo a diminuir seus
valores também. Vamos considerar uma estrutura de repetição do tipo para...faça com um
contador de repetições iniciado com o valor 30 e sendo atualizado com diminuições de 4 unidades
em cada passada, parando as repetições até chegar ao maior valor possível maior do que 1. Para
atualizar o contador em ordem decrescente, utilizaremos um valor negativo para indicar o passo,
e a estrutura é escrita como segue:
Exercício 3.19 Quantas vezes um conjunto de comandos seriam efetuados se estivessem dentro
de uma estrutura de repetição com um contador igual ao do Exemplo 3.26?
Solução. O contador que iria controlar a quantidade de vezes que um conjunto de comandos
seriam executados assumiria, para a estrutura de repetição em questão, os seguintes valores: 30,
26, 22, 18, 14, 10, 6 e 2.
Como foram 8 possíveis valores, a estrutura de repetição iria executar um conjunto de
comandos dentro dela 8 vezes.
P. 139 Seção 3.2
Figura 3.49: Um algoritmo para determinar se um dado número é maior, menor ou igual a 10.
Na solução do Exercício 3.19, o valor 2 seria o menor valor possível para o contador que
Obs satisfaz o teste do contador chegar até 1. A partir do 2, o próximo valor para o contador
seria -2, o que estaria fora do intervalo de 30 a 1, definido para a estrutura de repetição.
Exercício 3.20 Reescreva o algoritmo que ajuda um robô a caminhar deixando no chão um
rastro na forma de um quadrado de lado 3 metros (veja Figura 3.17), utilizando uma estrutura
de repetição. Justifique a sua escolha por uma das estruturas de repetição que estudamos aqui.
Figura 3.51: Um algoritmo para exibir uma saudação, de acordo com a hora informada pelo
usuário.
Figura 3.52: Um algoritmo para exibir três números fornecidos em ordem crescente.
Variáveis
As variáveis são o meio pelo qual acessamos dados específicos armazenados na memória. Para
oferecer essa funcionalidade, as variáveis precisam ter:
• um nome;
• um tipo;
• um valor.
O nome da variável é a palavra que usamos nas instruções de nossos algoritmos para acessar
e manipular um dado específico armazenado na memória principal. Para criar o nome de uma
variável, é necessário seguir algumas regras de nomenclatura. Poderemos usar os símbolos:
• a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z
Seção 3.3 P. 142
• A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z
• 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
• _ (símbolo de underscore)
Exemplos de nomes válidos para variáveis são: soma, resultado, num1, valor2, x_2, totalVen-
das, producao_mes, x123, somaTotal, ABC.
Exemplos de nomes não válidos para variáveis são: 1valor, senha do usuario, 123, AB C,
producao mes.
Embora sejam válidos nomes como ABC e x123 para variáveis, é recomendado adotar nomes
Obs mais significativos para as variáveis. Alguns bons exemplos são: totalVendas, somatorio,
nomeUsuario.
P. 143 Seção 3.3
Figura 3.54: Um algoritmo modificado para troca de lâmpada, com teste e repetição indefinida.
O tipo da variável indica a natureza dos dados que ela irá armazenar. Em nosso estudo,
vamos considerar os seguintes tipos:
• inteiro, podendo armazenar qualquer valor numérico inteiro;
• real, podendo armazenar qualquer valor numérico com casas decimais;
• texto, podendo armazenar textos, indicados entre aspas duplas;
• caracter, podendo armazenar qualquer letra ou dígito individual, indicado entre aspas
simples;
• lógico, podendo armazenar apenas o valor VERDADEIRO ou FALSO;
A variável representa uma posição na memória principal onde o dado a ser manipulado por
instruções de um algoritmo estará armazenado. É pelo nome da variável que podemos acessar o
dado e manipulá-lo.
As operações aplicadas a uma variável são:
• Declaração de variáveis;
• Inicialização da variáveis;
• Comando de atribuição de valores a variáveis.
Declaração de Variáveis
Em uma receita de bolo, listamos os ingredientes necessários para o seu preparo. Da mesma forma,
precisamos indicar, em nossos algoritmos, que dados serão manipulados. Assim, precisamos
declarar as variáveis que o algoritmo irá utilizar. A declaração de variáveis em um algoritmo
pode ser feita conforme a notação indicada:
Exemplo 3.27 Alguns comandos válidos de declaração de variáveis. Os nomes são escolhidos
por quem está criando a variável. A única restrição é obedecer às regras de nomenclatura para
variáveis.
tipo nome
inteiro : idade
real : preco
texto : nomeCompleto
caracter: opcao
lógico : venceu
Inicialização de Variáveis
Podemos, no momento da declaração de uma variável, armazenar nela um valor inicial. A notação
que utilizaremos para indicar a inicialização de variável é dada por:
Figura 3.57: Estruturas de decisão e repetição para a tarefa de trocar a lâmpada, representadas
em fluxograma.
Exercício 3.21 Identifique nos itens a seguir quais comandos de inicialização de variáveis é
válido. No caso de um comando inválido, apontar o que o torna incorreto.
Figura 3.60: Uma versão atualizada do algoritmo para ajudar um robô a desenhar um quadrado
no chão, utilizando uma estrutura de repetição.
Repare que no item (h) do Exercício 3.21, o comando escrito está correto. A notação ’5’
Obs indica um caracter, e não o valor numérico 5.
A Figura 3.61 traz mais alguns exemplos, destacando as diferenças de notação entre um valor
numérico, um texto e um caracter.
P. 147 Seção 3.3
notação tipo
123 inteiro
3,1415 real
9 inteiro
“123” texto
“3,1415” texto
“9” texto
’9’ caracter
Figura 3.61: Diferenças entre os tipos de valores conforme a sua notação em um algoritmo.
A qualquer tempo no fluxo de execução de instruções, podemos precisar modificar (ou atualizar)
o valor armazenado em uma variável. O comando de atribuição efetua o armazenamento de
um novo valor a uma dada variável.
variável ← valor
Podemos atribuir a uma variável um valor conhecido, um valor armazenado em outra variável
ou até mesmo uma expressão.
O Exemplo 3.29 lista alguns comandos válidos para atribuição de valores a variáveis.
Exemplo 3.29 Alguns comandos válidos para atribuição de valores a variáveis podem ser vistos
na Figura 3.62.
idade ← 15
minhaIdade ← idade
preco ← 10.49
precoAtual ← preco + 1000
nomeCompleto ← “Francisco José da Silva”
opcao ← ’N’
venceu ← FALSO
É importante ressaltar que uma variável só guarda um valor por vez. Assim, quando
aplicamos um comando de atribuição a uma variável, o antigo valor armazenado nela será perdido.
O Exemplo 3.30 ilustra esse processo.
Exemplo 3.30 Seja a variável declarada
Seção 3.3 P. 148
inteiro: matricula
Início
1 - matricula ← 100
2 - matricula ← 95
Fim
Exercício 3.22 Indique o valor armazenado em cada variável ao final da execução das
sequências de comandos a seguir:
Solução. O(a) aluno)(a) é encorajado(a) a tentar fazer este exercício antes de verificar esta
solução. Uma primeira ideia que vem à mente é escrever a seguinte sequência de instruções:
1 - inteiro: A ← 5
2 - inteiro: B ← 7
3 - A←B
4 - B←A
o problema. Neste caso, a troca de valores só é possível com o auxílio de uma terceira variável,
que servirá como passo intermediário entre as trocas de valores entre A e B.
A Figura 3.63 apresenta um algoritmo para o problema proposto no Exercício 3.23.
Constantes
Utilizamos as variáveis para acessar, por meio de instruções de um algoritmo, dados específicos
armazenados na memória do computador. Uma característica importante das variáveis é o fato
de ela poder ter seu valor modificado por meio de comandos e instruções. As constantes, por
sua vez, têm valor fixo. Não é possível modificar o valor de uma constante por meio de um
comando nem instrução de algoritmo.
Exemplo 3.31 São exemplos de constantes: 2, “José”, ’B’, VERDADEIRO, 4,51.
É muito importante observar com atenção a notação aplicada a cada constante. As diferentes
notações utilizadas no Exemplo 3.31 (sem aspas, com aspas simples e com aspas duplas), definem
o tipo das constantes utilizadas. Podemos identificar, portanto, a seguinte convenção:
Exercício 3.24 Para cada item a seguir, identifique quais deles representam variáveis e quais
são constantes. Justifique sua resposta.
(a) total
(b) “total”
(c) x
(d) ’x’
(e) “x”
(f) 8
(g) ’8’
(h) “8”
(i) 3,1415
(j) “3,1415”
(k) precoFinal
(l) “precoFinal”
Solução. É possível identificar, por meio da notação adotada, quais elementos em uma
Seção 3.3 P. 150
instrução ou comando de um algoritmo são variáveis e quais são constantes. Vamos analisar os
itens do Exercício 3.24
(a) total: da maneira como está escrito, a palavra só pode ser o nome de uma variável. Se
fosse constante, teria de ser do tipo texto, e portanto, necessitaria de aspas duplas.
(b) “total”: com aspas duplas, é uma constante do tipo texto.
(c) x: sem aspas, é nome de variável.
(d) ’x’: com aspas simples, é uma constante do tipo caracter.
(e) “x”: com aspas duplas, é uma constante do tipo texto.
(f) 8: constante do tipo inteiro. Uma variável não podem ter seu nome iniciando com um
dígito numérico.
(g) ’8’: constante do tipo caracter.
(h) “8”: constante do tipo texto.
(i) 3,1415: constante do tipo real.
(j) “3,1415”: com aspas duplas, não é um valor numérico, e sim uma constante do tipo
texto.
(k) precoFinal: sem aspas, só pode ser o nome de uma variável.
(l) “precoFinal”: com aspas duplas, só pode ser uma constante do tipo texto.
Comando de Entrada
O comando que utilizaremos para indicar a entrada de dados será o comando leia(). Note que
este comando utiliza um par de parênteses em sua notação. Para compreender a sintaxe desse
comando, é necessário compreendermos como funciona o processo de entrada de dados. Uma
sequência de ações é listada no Exemplo 3.32.
Exemplo 3.32 O processo de entrada de dados em um algoritmo (ou programa) se dá como
segue:
• Mediante solicitação emitida pelo sistema, o usuário do programa digita um valor utilizando
o teclado;
• Após digitar o valor, o usuário digita ENTER;
• Ao digitar ENTER, o valor informado via teclado é armazenado em uma variável;
• A variável em questão recebe o valor informado via teclado por meio do comando leia().
• Os parênteses do comando são o espaço onde devemos escrever o nome da variável que
armazenará o dado de entrada.
Desta forma, a sintaxe do comando de entrada é:
Assim, o comando leia() traduz para a linguagem algorítmica os comandos que antes costumáva-
mos escrever como “obter, do usuário, ...”.
Utilizaremos um comando leia() para cada valor a ser obtido de um usuário e que desejamos
Obs guardar em uma variável.
P. 151 Seção 3.3
Comando de Saída
Um algoritmo, em geral, produz resultados que são de interesse para alguém. Assim, é necessário
que o algoritmo inclua comandos para fornecer a saída (exibição) dos resultados produzidos.
Uma saída de dados pode ocorrer de diversas formas: por impressora, por caixa de som ou por
exibição de textos e gráficos em monitor. Neste material, vamos considerar a opção de produzir
a exibição de textos em monitor. Para tal, o comando que utilizaremos em nossos algoritmos é
escreva().
Assim como o comando leia(), o comando escreva() também recebe informações entre
parênteses. Neste caso, a informação que devemos escrever entre os parênteses são aquelas
referentes aos resultados e textos que desejamos que o algoritmo exiba.
Há, portanto, diferentes maneiras de utilizar o comando escreva(). A Figura 3.64 lista as
diferentes possibilidades de utilização desse comando.
Exercício 3.25 Reescreva o algoritmo para somar dois números fornecidos por um usuário (ver
Figura 3.21), utilizando comandos de entrada e saída.
Solução. A Figura 3.65 apresenta uma versão modificada do algoritmo da Figura 3.21,
reescrito com a inclusão dos comandos de entrada e saída.
Figura 3.65: Versão modificada do algoritmo para somar dois números fornecidos por um usuário.
Exercício 3.26 Reescreva o algoritmo para calcular a média aritmética simples de dois números
fornecidos por um usuário (ver Figura 3.24), utilizando comandos de entrada e saída.
Solução. A Figura 3.66 apresenta uma versão modificada do algoritmo da Figura 3.24,
reescrito com a inclusão dos comandos de entrada e saída.
Seção 3.3 P. 152
Algoritmo para calcular a média aritmética simples de dois números fornecidos.
Início
1 - real: num1, num2, soma, media
2 - leia(num1)
3 - leia(num2)
4 - soma ← resultado da soma de num1 e num2
5 - media ← resultado da divisão da soma por 2
6 - escreva(media)
Fim
Figura 3.66: Algoritmo da Figura 3.24, reescrito com comandos de entrada e saída.
A maioria dos algoritmos que vamos escrever incluirá cálculos matemáticos. Assim, é importante
sabermos como escrever expressões aritméticas em nossos algoritmos. Os operadores aritméti-
cos que vamos utilizar estão listados na Figura 3.67.
operação símbolo
soma +
subtração -
multiplicação *
divisão /
exponenciação **
Operador Prioridade
** 1a
/e* 2a
+e- 3a
(a) y ← 13 - 5 * 2
(b) preco ← (109 - 9) * 0.1
(c) cont ← 3 + 4 * 5
(d) x ← 8 * 2 ** 3
P. 153 Seção 3.3
Exercício 3.28 Aplicando operadores aritméticos, reescreva o algoritmo que calcula a média
aritmética simples de dois números dados (veja Figura 3.66), utilizando operadores aritméticos.
Figura 3.69: Um algoritmo para calcular a média aritmética simples de dois números fornecidos,
utilizando operadores aritméticos.
Além dos operadores aritméticos, é comum utilizarmos algumas funções em comandos e instruções
de algoritmos. A Figura 3.70 lista alguns exemplos.
Exemplo 3.33 Considere uma aplicação que necessita calcular a distância entre dois pontos no
espaço bidimensional (2D). Um algoritmo para resolver este problema é apresentado na Figura
3.71.
Observe a utilização de parênteses para indicar que valores e operações devem ser efetuadas
Obs por cada função utilizada na linha 9 do algoritmo da Figura 3.71.
Seção 3.3 P. 154
Algoritmo para calcular a distância entre dois pontos.
Início
1 - inteiro: x1, y1, x2, y2
2 - real: distancia
3 - escreva (“Por gentileza, forneça as coordenadas x e y do Ponto 1: ”)
4 - leia(x1)
5 - leia(y1)
6 - escreva (“Favor fornecer as coordenadas x e y do Ponto 2: ”)
7 - leia(x2)
8 - leia(y2)
9 - distancia ← sqrt(sq(x2 - x1)+sq(y2 - y1))
10- escreva (“A distância entre os dois pontos fornecidos é: ”, distancia)
Fim
Figura 3.71: Um algoritmo para calcular a distância entre dois pontos no espaço bidimensional
(2D).
Algumas operações nas instruções que compõem um algoritmo envolvem a comparação entre
dois dados valores. Em outras situações, podemos precisar comparar valores com resultados de
expressões. Para efetuar tais comparações, utilizamos os operadores relacionais, listados na
Figura 3.73.
Operação Símbolo
igual a =
diferente de <>
maior que >
menor que <
maior ou igual a ≥
menor ou igual a ≤
Exercício 3.30 Aplicando operadores relacionais, reescreva os algoritmos das Figuras indicadas:
(a) Algoritmo para exibir o resultado final para um aluno, dada a sua média final (Figura
3.37).
(b) Algoritmo para decidir se vou ou não ao cinema. (Figura 3.36).
Algoritmo para informar se um(a) aluno(a) passou direto, dada a sua média final.
Início
1 - real: media
2 - escreva(“Informe a média final do(a) aluno(a): ”)
2 - se media ≥ 7.0 então
(a)
3 - escreva (“PASSOU DIRETO”)
4 - senão
5 - escreva (“NÃO PASSOU DIRETO”)
Fim
Exercício 3.31 Proponha um algoritmo para encontrar as raízes de uma equação do segundo
grau.
ax2 + bx + c = 0. (3.1)
1 - Obter os valores de a, b e c.
2 - Calcular o discriminante ∆, obtido pela fórmula
∆ = b2 − 4ac. (3.2)
Seção 3.3 P. 156
√
−b ± ∆
x= . (3.3)
2a
Com base nesses passos, vamos escrever um algoritmo para resolver o problema. O algoritmo em
questão pode ser visto na Figura 3.74.
Figura 3.74: Um algoritmo para calcular as raízes de uma equação do segundo grau.
Exercício 3.32 Proponha um algoritmo para simular o jogo do intervalo. O jogo consiste em
uma pessoa guardar um número entre 0 e 100, e uma outra pessoa tenta adivinhar que número
é esse, dando palpites. Para cada palpite dado, a pessoa que guarda o número deve dizer “é
maior” ou “é menor”, até que a pessoa consiga acertar o palpite.
Expressão Resultado
3*2>5 VERDADEIRO
3>5 FALSO
3*2>4 VERDADEIRO
3*2≤6 VERDADEIRO
“9” = ’9’ FALSO
FALSO <> VERDADEIRO VERDADEIRO
10 * 5 <> 50 FALSO
2 - 3 ** 2 = -7 VERDADEIRO
“Maria” <> “Ana” VERDADEIRO
’C’ = “C” FALSO
’C’ <> ’c’ VERDADEIRO
As expressões lógicas são em geral utilizadas para definir condições complexas (por exemplo,
que combinam várias expressões relacionais).
Seção 3.3 P. 158
Exemplo 3.35 Considere um algoritmo que lê um número e testa se ele é, ao mesmo tempo,
positivo e par. A Figura 3.77 mostra as instruções do algoritmo.
Algoritmo para determinar se um dado número é positivo e par.
Início
1 - inteiro: valor
2 - escreva(“Por gentileza, digite um número : ”)
3 - leia(valor)
4 - se valor > 0 e, ao mesmo tempo, mod(valor, 2) = 0 então
5 - escreva(“O número informado é positivo e par”)
Fim
Operador Resultado
NAO O mesmo produzido pelo conectivo lógico de Negação
E O mesmo produzido pelo conectivo lógico de Conjunção
OU O mesmo produzido pelo conectivo lógico de Disjunção Inclusiva
Exemplo 3.36 A Figura 3.80 mostra algumas expressões construídas com operadores lógicos e
os resultados produzidos.
Exercício 3.33 Indique o valor final armazenado nas variáveis (todas as variáveis são do tipo
lógico):
Expressão Resultado
NAO 5 = 4 VERDADEIRO
3 * 2 > 5 E 10 = 9 + 1 VERDADEIRO
3 > 5 OU VERDADEIRO VERDADEIRO
5 < 3 OU 2 + 2 = 5 FALSO
mod(4, 2) = 0 E 4 > 0 VERDADEIRO
NAO div(10, 5) <> 2 VERDADEIRO
VERDADEIRO E NAO 4 = 2*2 FALSO
NAO FALSO VERDADEIRO
10 * 5 <> 50 OU 3 = 0 + 3 VERDADEIRO
3 ** 2 = -7 OU 5 = 2 * 3 FALSO
VERDADEIRO E FALSO FALSO
NAO 6 = 2 + 2 + 2 FALSO
FALSO OU VERDADEIRO VERDADEIRO
Figura 3.81: Algoritmo para testar se um dado número é positivo e par, utilizando um operador
lógico.
Exemplo 3.38 Considere um sistema que obtém a idade de uma pessoa e informa a sua classe
eleitoral:
• Não eleitor (abaixo de 16 anos);
• Eleitor obrigatório (entre 18 e 65 anos);
• Eleitor facultativo (entre 16 e 18 anos ou acima dos 65 anos).
A Figura 3.82 apresenta um algoritmo para o funcionamento desse sistema.
Seção 3.3 P. 160
Algoritmo para classificar eleitores conforme idade.
Início
1 - inteiro: idade
2 - escreva(“Por gentileza, informe sua idade : ”)
3 - leia(idade)
4 - se idade < 16 então
5 - escreva(“Não eleitor.”)
6 - senão
7 - se (idade ≥ 16 E idade < 18) OU (idade > 65) então
8- escreva(“Eleitor facultativo”)
9 - senão
10- escreva(“Eleitor obrigatório”)
11- fim-se
12- fim-se
Fim
Figura 3.82: Algoritmo para o funcionamento do sistema que classifica um eleitor, dada a sua
idade.
Exercício 3.34 Considere um sistema que recebe as medidas dos três lados de um triângulo e
precisa classificá-lo como EQUILÁTERO, ISÓSCELES e ESCALENO. Proponha um algoritmo
para solucionar este problema.
Figura 3.83: Um algoritmo que classifica triângulos, conforme as medidas de seus lados.
Seção 3.4 P. 162
Observando a Definição 3.4.1, percebemos que um programa nada mais é do que a escrita de um
algoritmo utilizando alguma linguagem de programação. São muitas as opções de linguagens,
e cada uma varia de acordo com o propósito pretendido. As linguagens de programação se
apresentam nas mais variadas formas: algumas permitem a escrita de programas como um
código digitado usando o teclado; já outras oferecem comandos na forma de elementos gráficos
que podem ser arrastados com o mouse para formarmos uma sequência de instruções. A esses
elementos gráficos damos o nome de blocos de instruções.
A Figura 3.84(a) mostra um exemplo de um programa escrito em código digitado e a Figura
3.84(b) mostra um exemplo de um programa escrito com a utilização de blocos de instruções.
As linguagens de programação que oferecem comandos na forma de blocos de instruções
caracterizam o que chamamos de Linguagens de Programação Visual.
(a) Programa com comandos digitados. (b) Programa construído com blocos de instruções.
É muito comum usar a sigla IDE para se referir a ambientes de programação. Ela significa
Obs Integrated Development Environment, que é o termo em inglês para denominar um ambiente
de programação.
Vamos conhecer as principais partes do ambiente que utilizaremos para escrever nossos programas:
o Scratch1 . A Figura 3.86 indica onde encontrar, na interface do Scratch, cada uma das seções a
seguir:
Categorias de instruções
As categorias de blocos podem ser encontradas na aba “Código”, situada no canto superior
Obs esquerdo da tela.
1
Acesso disponível em https://scratch.mit.edu/
Seção 3.4 P. 164
Figura 3.86: Interface do Scratch, com indicações dos painéis a serem abordados nesta seção.
Blocos de instruções
Área de trabalho
Indicada na Figura 3.86 com a letra (c), a área de trabalho é a área para onde vamos arrastar
os blocos de instruções escolhidos e combiná-los.
A Figura 3.85 apresenta um exemplo de blocos de instruções combinados na área de trabalho.
O código em questão pode ser visualizado em detalhe na Figura 3.84(b).
Observe como as cores dos blocos de instruções mudam conforme sua categoria.
Obs
Para remover um bloco da área de trabalho, basta arrastá-lo de volta para o painel de
Obs bloco de instruções.
Palco
O palco é a área onde as aplicações que desenvolvemos funcionam e são testadas. É nele que
visualizaremos e testaremos os programas, animações e jogos que podemos desenvolver utilizando
esta linguagem.
P. 165 Seção 3.4
Um ator é um elemento ou personagem que podemos inserir em um programa. Toda vez que
formos iniciar um novo programa no Scratch, teremos, por padrão, um ator já inserido no projeto
(um gato).
Podemos inserir um ou mais atores em um mesmo programa. A inserção de novos atores é uma
das funcionalidades oferecidas pelo painel de atores. Além disso, neste painel é possível ajustar
várias propriedades de um ator, como o nome, posição no espaço do palco (em coordenadas x e
y), tamanho, direção e se deve ficar visível ou não.
Painel do palco
O Scratch permite que um mesmo programa possua mais de um cenário, o que possibilita a
criação de aplicações interessantes, como jogos com diferentes fases. O painel do palco oferece
funções para inserir novos cenários, que podem ser escolhidos de um conjunto de cenários prontos
e disponíveis no Scratch, ou um arquivo de imagem salvo em seu computador, ou ainda um
desenho criado a ser criado por você, utilizando as ferramentas de desenho do Scratch. A lista
de todos os cenários inseridos em seu programa podem ser vistos na aba “Cenários”, no canto
superior esquerdo da tela.
O vídeo a seguir apresenta, de maneira bem detalhada, cada elemento da tela do Scratch.
Para explorar os elementos da interface do Scratch e conhecer melhor suas ferramentas, vamos,
nesta seção, apresentar alguns pequenos projetos práticos.
Exemplo 3.39 Sempre que vamos estudar uma nova linguagem de programação, o primeiro
exemplo clássico é o bom e velho projeto “Olá, mundo!”. Tal projeto consiste em simplesmente
escrever as instruções necessárias na nova linguagem para que o seu programa exiba uma
mensagem que diz “Olá, mundo!” (ou “Hello, world”). Assim, como este é o primeiro contato
com o Scratch, vamos seguir a tradição e criar nosso projeto “Olá, mundo!”.
Para criar esse programa, você deve antes preparar o Scratch. Para isso, siga os passos
iniciais, ilustrados na Figura 3.87.
Agora, vamos criar o programa! Os passos necessários para fazer o gato “falar” a clássica
frase “Olá, mundo!” são:
• Certifique-se de que a instrução que você vai escrever afetará o gato. Para isso, basta dar
um duplo-clique sobre o gato. Você verá uma cópia menor e mais transparente do desenho
do gato no canto superior direito da área de trabalho.
• Clique na categoria “Aparência”. Isso possibilitará a visualização dos comandos referentes
à exibição de mensagens.
Seção 3.4 P. 166
Passos para iniciar o uso do Scratch
1 - Abrir o Scratch, no endereço scratch.mit.edu.
2 - Clicar no botão “Comece a Criar”.
3 - Vai aparecer uma janelinha com um tutorial. Você deve fechar essa janela.
4 - Prontinho. O Scratch está pronto para que você crie seu programa!
• Você deverá encontrar dois comandos que permitem a exibição de mensagens. A Figura
3.88 ilustra esses blocos.
• Escolha o bloco referente à instrução “diga Olá!” e, com o mouse, arraste-o para a área de
trabalho.
• Dê um duplo-clique onde se lê “Olá!” no bloco de instrução e digite a mensagem “Olá,
mundo!”.
• Para executar o programa, basta clicar no bloco de instrução. Deverá aparecer um
balãozinho, como se o gato estivesse “falando” a frase.
Para encerrar a execução do seu programa, clique no sinal de “Pare”, situado acima do
Obs palco.
Exemplo 3.40 Neste novo projeto, vamos fazer o gato se comunicar de uma maneira mais
natural para ele. Ele vai miar, ao invés de exibir um balãozinho com uma frase escrita em
linguagem natural humana. Os passos para fazer este programa são:
• Certifique-se de que a instrução que você vai escrever afetará o gato. Para isso, basta dar
um duplo-clique sobre o gato. Você verá uma cópia menor e mais transparente do desenho
do gato no canto superior direito da área de trabalho.
• Clique na categoria “Som”. Isso possibilitará a visualização dos comandos referentes à
manipulação de sons.
• Você deverá encontrar dois comandos que permitem a reprodução de um som. A Figura
3.89 ilustra esses blocos.
• Escolha o bloco referente à instrução “toque o som Miau” e, com o mouse, arraste-o para a
área de trabalho.
• Para executar o programa, basta clicar no bloco de instrução. O programa reproduzirá um
som de um miado.
Exemplo 3.41 No projeto a seguir, temos como objetivo explorar algumas funcionalidades
referentes a cenários. Assim, nossas tarefas serão:
• Fazer com que o programa exiba um cenário por um segundo e em seguida exiba um
segundo cenário.
Os passos descritos a seguir ensinam como criar este programa:
• Para inserir cenários, vamos clicar no botão “Selecionar cenário”, ilustrado na Figura 3.90.
Você poderá escolher um cenário pronto e disponibilizado no Scratch, ou adicionar uma
figura salva em seu computador, ou ainda, criar um novo desenho para ser o novo cenário.
Para simplificar, vamos escolher dois dos cenários já disponíveis no Scratch.
• Dê um duplo-clique sobre o cenário que aparece no painel de palco. Isso fará com que as
instruções a serem adicionadas à área de trabalho afetem os cenários.
• Clique na categoria “Aparência” e encontre um bloco de instrução chamado “mude para o
cenário ...”. Arraste esse bloco para a área de trabalho.
• Vamos precisar de dois blocos para mudar o cenário. Então, no bloco que você acabou de
incluir na área de trabalho, dê um clique com o botão direito do mouse. Será exibido um
menu, como mostra a Figura 3.91. Escolha a opção “Duplicar”.
• Clique na categoria “Controle” e encontre um bloco de instrução chamado “espere 1 seg”.
Arraste esse bloco para a área de trabalho e o duplique.
• Organize os blocos, em sequência, de modo a fazer seu programa mudar o cenário, esperar 1
segundo, e mudar para o outro cenário. Seu programa deverá estar como o da Figura 3.92.
• Para executar o programa, basta clicar nos blocos de instruções.
Exercício 3.35 Faça um programa que mostre o gato em uma pose inicial e permaneça nessa
pose por dois segundos. Passado esse tempo, o gato muda de pose, sem sair do lugar.
Solução. Para construir esse programa, precisamos conhecer uma propriedade importante
de um ator: ele pode conter mais de uma fantasia. Podemos entender a fantasia como sendo
uma pose diferente para o mesmo ator.
Seção 3.4 P. 168
Figura 3.91: Opções para um bloco de instruções, quando clicado com o botão direito do mouse.
Figura 3.92: Programa para exibir um cenário por um segundo, e exibir um outro cenário.
Para visualizar quantas e quais fantasias um ator tem, basta clicar sobre o ator no palco e
depois clicar na aba “Fantasias”, no canto superior esquerdo da janela. Para o caso do gato, ele
tem duas fantasias (ou duas poses).
O programa para realizar as ações pedidas no Exercício 3.35 pode ser visto na Figura 3.93.
Figura 3.93: Programa para exibir um cenário por um segundo, e exibir um outro cenário.
P. 169 Seção 3.4
Como vimos na seção 3.2.4, as estruturas de decisão são estruturas de controle que desviam o fluxo
de execução de instruções. Esta estrutura tem a forma geral se...então ou se...então...senão.
Podemos encontrar os blocos de instruções referentes a essas estruturas na categoria “Controle”.
A Figura 3.94 ilustra os blocos de instruções para as estruturas de decisão.
Para utilizar esses blocos, basta escolher blocos referentes aos testes a serem feitos pelas
estruturas de decisão e aos comandos a serem executados dentro da estrutura e encaixá-los nos
locais apropriados.
Note que os blocos de instrução para estruturas de decisão podem ser aninhados. Basta
Obs encaixar um bloco dentro de outro.
Exemplo 3.42 O programa da Figura 3.95 mostra um programa que lê o valor de uma média
de um(a) aluno(a) e informa se ele(a) passou direto ou não. Para fazer este programa, foi
necessário criar uma variável para armazenar o valor da média. Na categoria “Variáveis”, é
possível encontrar ferramentas para a criação de variáveis. A expressão relacional foi obtida na
categoria “Operadores” e os comandos de saída foram obtidos na categoria “Aparência”.
Figura 3.95: Programa para fazer o gato dizer se um(a) aluno(a) passou direto ou não, dependendo
do valor da média.
Observe que é possível modificar os valores da variável media, arrastando uma bolinha
Obs sobre uma barra. No caso da Figura 3.95, o valor atribuído à variável media foi 8.
Seção 3.4 P. 170
Exercício 3.36 Faça um programa que leia um número e diga se ele é positivo e par.
Solução. Um programa para resolver o problema proposto no Exercício 3.36 pode ser visto
na Figura 3.96.
Figura 3.96: Programa para fazer o gato dizer se um número fornecido é positivo e par.
Observando a Figura 3.97, podemos notar que o Scratch disponibiliza três estruturas de
repetição:
• repita até que: realiza um teste e repete instruções dentro da instrução até que o teste
resulte em VERDADEIRO.
• repita ... vezes: estrutura com comportamento equivalente ao da estrutura para ... faça.
• sempre: repete as instruções dentro dela indefinidamente. As ações só param de executar
quando o usuário clicar no botão de “Pare” do Scratch.
Exemplo 3.43 Vamos fazer o gato se deslocar no cenário. Ele vai da esquerda para a direita,
repetindo um deslocamento de 20 pixels para a direita 5 vezes. A Figura 3.98 ilustra o programa
para realizar esta tarefa.
Exercício 3.37 Faça um programa para que o gato fique sempre atento à escolha de um valor
para um dado número e fique dizendo se o número é par ou ímpar. Essa ação se repete
indefinidamente e só se encerra quando o usuário clicar sobre o botão “Pare”.
Solução. A Figura 3.99 ilustra um programa para resolver o problema proposto no Exercício
3.37.
P. 171 Seção 3.4
Figura 3.98: Programa para fazer o gato se deslocar 20 pixels, repetindo essa ação 5 vezes.
Figura 3.99: Programa para fazer o gato ficar sempre atento às variações do valor de um número
e dizer se ele é par ou ímpar.
3.4.5 – Interatividade
Alguns algoritmos que estudamos na seção 3.2 deste material consistiam em comandos que
seguiam um fluxo de ações simplificado, que incluía uma entrada, um processamento e uma saída
simples. A única participação do usuário ocorria no início do algoritmo, para fornecer dados. O
sistema realizava todas as ações e só exibia resultados ao final.
No entanto, a programação permite a criação de aplicações mais interessantes, capazes de
reagir a comandos do usuário em tempo real (ou seja durante o tempo em que o programa está
sendo executado).
Definição 3.4.3 Chamamos de Interatividade a capacidade de um sistema de reagir a
estímulos externos no momento em que eles ocorrem.
Para ser interativo, um programa precisa ser capaz de responder, durante a sua execução, a
comandos vindos do usuário por meio de diferentes dispositivos de entrada. Cada comando desse
tipo é chamado de um evento.
Definição 3.4.4 Chamamos de Evento cada tipo de estímulo que pode atingir um sistema,
vindo de uma entidade externa.
No caso de sistemas computacionais, os eventos são todas as ações que um usuário pode
realizar enquanto o programa está em execução. Os eventos mais comuns que iremos tratar em
nossos programas são:
Exemplo 3.44 Vamos fazer uma aplicação interativa que faça o gato miar toda vez que ele for
clicado. A Figura 3.101 ilustra o programa para implementar essa aplicação.
Atenção: para testar o programa da Figura 3.101, basta clicar diretamente no gato. Ele
Obs vai miar toda vez que for clicado.
P. 173 Seção 3.4
Figura 3.101: Programa para fazer o gato miar toda vez que for clicado.
Exercício 3.38 Faça um programa que tenha como ator uma seta, localizada no centro da tela
e apontando para qualquer direção. Seu programa deverá tratar os seguintes eventos:
• Se a tecla seta pra cima for pressionada, a seta deverá apontar para cima e subir 10
pixels no palco.
• Se a tecla seta pra baixo for pressionada, a seta deverá apontar para baixo e descer 10
pixels no palco.
Solução. Este exercício é interessante, pois trata dois eventos diferentes. Podemos ver como
construir um programa para resolver o problema proposto neste exercício na Figura 3.102.
Figura 3.102: Programa para fazer uma seta mudar de direção e se deslocar em resposta a eventos
de teclado.