Algoritmos e programação
Tese: Algoritmos e programação. Pesquise 861.000+ trabalhos acadêmicosPor: • 3/6/2014 • Tese • 2.570 Palavras (11 Páginas) • 278 Visualizações
23/02/2014
1
Gustavo Amoroso da Silva
gustavo.amoroso@aedu.com
Engenheiro da Computação
Especialista em Análise e Projeto de Sistemas Orientados a Objetos
MBA em Gerenciamento de Projetos
Heurys Tecnologia
Gerente de Projetos e consultor
Faculdades Anhanguera de Ribeirão Preto
Professor no cursos Graduação e Pós-graduação
Coordenador do curso Engenharia de Controle e Automação
https://sites.google.com/a/aedu.com/gustavo/algoritmos_e_programacao
Algoritmos e Programação
Janeiro/2014
23/02/2014
2
Ementa do Curso
Conceitos fundamentais de programação:
• Algoritimo
• Linguagem
• Compilador
• Linguagem de programação
• Estrutura de um programa
Ementa do Curso
• Tipos de dados
• Operadores
• Programação estruturada
• Estruturas de condição
• Laços de repetição
23/02/2014
3
Ementa do Curso
• Vetores e matrizes
• Strings e sua manipulação
• Tipos estruturados (registros).
• Aplicações em linguagem C.
Objetivos
- Ao final da disciplina o aluno deverá estar apto a:
- Resolver problemas pertinentes a Engenharia, de uma
forma rápida e com maior precisão, através de uma
seqüência lógica e estruturada.
- Utilizar uma linguagem de programação para criar
programas que o auxilie na resolução de problemas ou
agilize seu trabalho.
- Elaborar protocolos de ação com instruções claras e
precisas, que se forem seguidos por uma equipe de trabalho,
levarão de forma segura e eficiente, á execução de tarefas
pré-determinadas.
23/02/2014
4
Conteúdo Programático
1. CONCEITOS FUNDAMENTAIS DE PROGRAMAÇÃO
1.1. Noção de Algoritmos
1.2. Pseudo Linguagem
1.3. Estrutura de um Programa
1.4. Dados e Variáveis
1.5. Operadores
2. PROGRAMAÇÃO ESTRUTURADA
2.1. Desenvolvimento de Algoritmos: análise e resolução de
problemas da técnica top-down
2.2. Estrutura de Controle: Condição.
2.3. Estrutura de Controle: Laço de Repetição.
Conteúdo Programático
3. VETORES E MATRIZES
3.1. Conceitos de vetores
3.2. Declaração de vetores
3.2. Operações de Manipulação de vetores
3.3. Conceito de Matrizes
3.4. Declaração de Matrizes
3.5. Operações sobre Matrizes
4. MODULARIZAÇÃO
4.1 Conceitos de Modularização e decomposição
4.2.Declaração de funções
4.3.Passagem de parâmetros
23/02/2014
5
5. STRINGS E FUNÇOES DE
MANIPULAÇÃO
6. TIPOS ESTRUTURADOS
6.1. Registros
Cronograma de Aulas
Semana n°. Tema
001 Apresentação do plano de ensino e aprendizagem. Introdução e
Conceitos Fundamentais de Programação
002 Conceitos Fundamentais de Programação
003 Conceitos Fundamentais de Programação
004 Programação Estruturada
005 Programação Estruturada
006 Programação Estruturada
007 Programação Estruturada
008 Vetores e Matrizes
009 Avaliação Parcial ()
23/02/2014
6
Semana Tema
010 Vetores e Matrizes
011 Vetores e Matrizes
012 Modularização
013 Modularização
014 Strings e Funções de Manipulação
015 Strings e Funções de Manipulação
016 Tipos Estruturados (Registros)
017 Tipos Estruturados (Registros)
018 Prova Escrita Oficial ( )
019 Revisão e preparação para Avaliação Substitutiva ( )
020 Prova Substitutiva ( )
Avaliação Parcial e o Primeiro Bimestre
PESO para MÉDIA FINAL 4,0
Atividades a Critério do Professor:
Notas Obrigatório?
Trabalhos 2,0 S
Prova Parcial 8,0 S
Total: 10
23/02/2014
7
Metodologia de Trabalho
• VERDADE
• RESPEITO
• TROCA DE INFORMAÇÕES
Metodologia de Trabalho
• PLT (Programa do Livro Texto)
•Material Complementar (livros, artigos
e revistas)
• Dinâmicas e Vídeos
• Ligação do conteúdo com a Vida.
23/02/2014
8
Material Básico
1) MIZHARI, Victorine Viviane. Treinamento em
Linguagem C. 1ª ed. São Paulo: Pearson, 2007.
2) MANZANO, José Agusto N. Garcia.
Algoritmos: Lógica para desenvolvimento de
programação de computadores. 21ª ed. São
Paulo: Érica, 2008.
3) SCHILDT, Herbert.. C Completo e Total. 3ª ed.
São Paulo: Makron, 2004, v.1.
Material Complementar
1) CORMEN, Thomas H. Algoritmos : teoria e
prática. 1ª ed. Rio de Janeiro: CAMPUS, 2002.
2) LOPES, Anita; GARCIA, Guto. Introdução à
Programação e algoritmos resolvidos. 1ª ed.
Rio de Janeiro: CAMPUS, 2002.
3) MONTEIRO, M. A.. Introdução à Organização
de Computação . 1ª ed. Rio de Janeiro: LTC,
2005.
23/02/2014
9
Material Complementar
4) FORBELLONE, A.L.. Lógica de Programação:
A Construção de Algoritmos e Estrutura de
Dados. 3ª ed. São Paulo: MAKRON BOOKS,
2005.
5) ASCENCIO, Ana Fernanda Gomes; CAMPOS,
Edilene A.V. de. Fundamentos da Programação
de Computadores: Algoritmos, Pascal, C/C++ e
Java 2ª ed. São Paulo: Prentice Hall, 2008.
Material Complementar
6) MANZANO, José Augusto N. G. Estudo
Dirigido: Algoritmos. 8ª ed. São Paulo: Erica,
2003.
23/02/2014
10
1) MIZHARI, Victorine Viviane.
Treinamento em
Linguagem C. 1ª ed. São
Paulo: Pearson, 2007.
BIBLIOGRAFIA PADRÃO
1) MANZANO, José Agusto N.
Garcia. Algoritmos: Lógica
para desenvolvimento de
programação de
computadores. 21ª ed. São
Paulo: Érica, 2008.
25 exemplares na biblioteca.
BIBLIOGRAFIA BÁSICA
23/02/2014
11
2) SCHILDT, Herbert.. C
Completo e Total. 3ª ed. São
Paulo: Makron, 2004, v.1.
BIBLIOGRAFIA BÁSICA
BIBLIOGRAFIA COMPLEMENTAR
1) CORMEN, Thomas H.
Algoritmos : teoria e prática.
1ª ed. Rio de Janeiro:
CAMPUS, 2002.
23/02/2014
12
BIBLIOGRAFIA COMPLEMENTAR
2) LOPES, Anita; GARCIA, Guto.
Introdução à Programação e
algoritmos resolvidos. 1ª ed.
Rio de Janeiro: CAMPUS,
2002.
BIBLIOGRAFIA COMPLEMENTAR
3) MONTEIRO, M. A..
Introdução à Organização de
Computadores . 1ª ed. Rio de
Janeiro: LTC, 2005.
47 exemplares na biblioteca.
23/02/2014
13
BIBLIOGRAFIA COMPLEMENTAR
4) FORBELLONE, A.L.. Lógica
de Programação: A
Construção de Algorítmos e
Estrutura de Dados. 3ª ed. São
Paulo: MAKRON BOOKS,
2005.
223 exemplares na biblioteca.
BIBLIOGRAFIA COMPLEMENTAR
5) ASCENCIO, Ana Fernanda
Gomes; CAMPOS, Edilene A.V.
de. Fundamentos da
Programação de
Computadores: Algoritmos,
Pascal, C/C++ e Java 2ª ed.
São Paulo: Prentice Hall, 2008.
96 exemplares na biblioteca.
23/02/2014
14
BIBLIOGRAFIA COMPLEMENTAR
6) MANZANO, José Augusto N.
G. Estudo Dirigido:
Algoritmos. 8ª ed. São Paulo:
Erica, 2003.
54 exemplares na biblioteca.
SOFTWARES PARA AS ATIVIDADES PRÁTICAS
-DEV C++
http://prdownloads.sourceforge.net/devcpp/
devcpp-4.9.9.2_setup.exe
23/02/2014
15
Semana
n°.
Tema
001 Apresentação do plano de ensino
e aprendizagem. Introdução e
Conceitos Fundamentais de
Programação
Para Refletirmos
23/02/2014
16
•Youtube: 9,9 milhões de visitantes únicos por dia
•Liberdade para disponibilizar vídeos e idéias
•7 milhões de usuários em junho/2009
•Mais mulheres no Twitter (53%) do que homens(47%)
•40% do que é falado é tagarelice e apenas 8,7% tem valor informacional.
MOTIVAÇÃO PARA A DISCIPLINA
Audiência maior que programa de mais ibope da
Globo
Rede que mais cresce no mundo
1 bilhão de histórias são compartilhadas no Facebook
por semana;
Se o Facebook fosse um país seria o 8º do planeta
(mais de 500 milhões de usuários);
5 bilhões de minutos são gastos pelas pessoas no
MOTIVAÇÃO PARA A DISCIPLINA
23/02/2014
17
• Em 4 anos haverá mais pessoas
conectando a internet em dispositivos
móveis do que em PCs.
( Mary Meeker, da Morgan Stanley)
• Em 2012, a internet será 75 vezes maior
do que era em 2002.
(VP da Gartner, Stephen Prentice)
MOTIVAÇÃO PARA A DISCIPLINA
• Para um pessoa enriquecer ela precisa ter
dois tipos de fontes de riquezas
• Ativa (você trabalha para obter a
remuneração)
• Passiva (a remuneração trabalha para você).
(softwares sociais são um ótimo exemplo
disso).
livro “O Segredo de uma mente milionária” de T.
Harv Eker;
MOTIVAÇÃO PARA A DISCIPLINA
23/02/2014
18
• Em 2 anos haverá mais pessoas
conectando a internet em dispositivos
móveis do que em PCs.
( Mary Meeker, da Morgan Stanley)
• Em 2014, a internet será 120 vezes maior
do que era em 2002.
(VP da Gartner, Stephen Prentice)
MOTIVAÇÃO PARA A DISCIPLINA
• Para um pessoa enriquecer ela precisa ter
dois tipos de fontes de riquezas
• Ativa (você trabalha para obter a
remuneração)
• Passiva (a remuneração trabalha para você).
(softwares sociais são um ótimo exemplo
disso).
livro “O Segredo de uma mente milionária” de T.
Harv Eker;
MOTIVAÇÃO PARA A DISCIPLINA
23/02/2014
19
INTRODUÇÃO
INTRODUÇÃO
O que é lógica?
Definição 1: “É a arte de bem pensar”.
Definição 2: A lógica estuda e ensina a
colocar “Ordem no pensamento”.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
20
INTRODUÇÃO
Exemplos:
1) Todo mamífero é um animal.
Todo cavalo é um mamífero.
Portanto, todo cavalo é um animal.
2) O melhor time do Mundo é o atual campeão da Mundial.
O Corinthians é o atual campeão da Mundial.
Portanto, o Corinthians é o melhor time do Mundo.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
INTRODUÇÃO
Os exemplos anteriores representam um argumento
composto de duas premissas e uma conclusão; e
estabelecendo uma relação, que pode ser válida ou
não.
Este é um dos objetivos da lógica, o estudo de técnicas
de formalização, dedução e análise que permitam
verificar a validade de argumentos.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
21
INTRODUÇÃO
Existe lógica no dia-a-dia?
1) A gaveta está fechada.
A caneta está dentro da gaveta.
Precisamos primeiro abrir a gaveta para depois
pegar a caneta.
2) Anacleto é mais velho que Felisberto.
Felisberto é mais velho que Marivaldo.
Portanto, Anacleto é mais velho que Marivaldo.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
Mas e a lógica de programação?
Antes de responder essa pergunta...
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
22
O COMPUTADOR TEM VONTADE
PRÓPRIA?
O computador somente
executa as passos
(instruções) que lhe
indicamos.
23/02/2014
23
O computador tem como finalidade
receber, manipular e armazenar dados. Sua principal função é a de
processar dados.
O computador:
• Não tem iniciativa.
• Não é independente.
• Não tem criatividade.
• Não tem inteligência.
• Depende de instruções que lhe são passadas para executar algo.
Algoritmos e Programação Acessado em 15/02/2011 – Sala Virtual Profª. Claudia Vicci Amadeu
Processamento de dados
O computador recebe dados por meio de um dispositivo de entrada
(teclado, mouse, ou outro), realiza operações com esses dados e gera uma
resposta, que é expressa por meio de um dispositivo de saída (monitor de
vídeo, impressora ou outro).
Processamento
de dados
Entrada de
dados
Dados
processados
Teclado
Mouse
Monitor de vídeo
Impressora
Algoritmos e Programação Acessado em 15/02/2012 – Sala Virtual Profª. Claudia Vicci Amadeu
23/02/2014
24
COMO O COMPUTADOR SABE OS
PASSOS QUE IRÁ EXECUTAR?
Programas (softwares)
23/02/2014
25
COMO CRIAR PROGRAMAS?
ATRAVÉS DE LÓGICA DE
PROGRAMAÇÃO
23/02/2014
26
INTRODUÇÃO
Mas e a lógica de programação?
Significa o uso correto das leis do pensamento, da
“ordem da razão” e de processos de raciocínio e
simbolização formais na programação de
computadores.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
INTRODUÇÃO
O raciocínio é algo abstrato, intangível. Os seres
humanos têm a capacidade de expressa-lo através
de palavra falada ou escrita em um determinado
idioma que segue uma série de padrões
(gramática).
Mas e a lógica de programação?
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
27
a bola amarela
the yellow ball
Mas e a lógica de programação?
Um raciocínio pode ser expresso em qualquer um
dos inúmeros idiomas existentes, mas continuará o
mesmo raciocínio, usando apenas outra conversão.
INTRODUÇÃO
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
Mas e a lógica de programação?
Algo similar ocorre com a Lógica de Programação,
que pode ser concebida pela mente treinada e pode
ser representada em qualquer uma das inúmeras
linguagens de programação existentes. Essas por
sua vez, são muito atreladas a uma grande
diversidade de detalhes computacionais.
INTRODUÇÃO
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
28
using System;
using System.Collections.Generic;
static int Fibo(int x)
{
if (x <= 1) {
return 1;
} else {
return Fibo(x – 1) + Fibo(x – 2);
}
static void Main() {
for (int i = 0; i < 30; i++) {
Console.WriteLine(Fibo(i)); }
}
}
public class Fibonacci {
static long fibo(int n) {
if (n < 2) {
return n;
} else {
return fibo(n - 1) + fibo(n - 2);
}
}
public static void main(String[] args) {
for (int i = 0; i < 30; i++) {
System.out.print("(" + i + "):" +
Fibonacci.fibo(i) + "\t"); }
}
}
EXEMPLO
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
INTRODUÇÃO
Para escapar dessa torre de Babel e, ao mesmo
tempo, representar mais fielmente o raciocínio da
Lógica de Programação, utilizamos os Algoritmos.
Mas e a lógica de programação?
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
29
ALGORITMIZANDO A LÓGICA
Por que é importante construir algoritmo?
Um algoritmo tem por objetivo representar mais
fielmente o raciocínio envolvido na Lógica de
Programação e, dessa forma, permite-nos abstrair
de uma série de detalhes computacionais, que
podem ser acrescentados mais tarde. Assim,
podemos focalizar nossa atenção naquilo que é
importante.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
O QUE É UM ALGORITMO?
23/02/2014
30
INTRODUÇÃO
O que é um Algoritmo?
Uma sequência de passos que
visam a atingir um objetivo bem
definido.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
Na medida em que precisamos especificar uma
sequência de passos é necessário utilizar ordem,
portanto precisamos utilizar lógica.
Apesar do nome pouco usual, algoritmos são
comuns em nosso cotidiano.
INTRODUÇÃO
O que é um Algoritmo?
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
31
INTRODUÇÃO
O que é um Algoritmo?
A receita de um bolo é um Algoritmo.
Pois nela esta descrita uma série
de ingredientes necessários e
uma sequência de diversos
passos (ações) que devem ser
fielmente cumpridos para que se
consiga fazer o alimento
desejado.
INTRODUÇÃO
O que é um Algoritmo?
Quando elaboramos um algoritmo,
devemos especificar ações claras e
precisas, que a partir de um estado
inicial, após um período de tempo
finito, produzem um estado final
previsível e bem definido.
23/02/2014
32
• Troca de uma lâmpada
• Troca um pneu do carro
• Construção de uma casa
• Construção de um motor elétrico
• Comércio eletrônico
• Resolução dos problemas de “Física”
•...
EXEMPLOS DE ALGORITMOS CONHECIDOS
Exemplo: Algoritmo - troca de uma lâmpada
- pegar uma escada;
- posicionar a escada embaixo
da lâmpada;
- busca uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
33
Não, pois sempre a lâmpada será trocada, estando
ela queimada ou não.
O algoritmo anterior está completo?
Algoritmo - troca de uma lâmpada
REFERÊNCIA: PLT – CAPÍTULO 1
Algoritmo – troca de uma lâmpada com teste
- pegar uma escada;
- posicionar a escada embaixo
da lâmpada;
- busca uma lâmpada nova;
- acionar o interruptor;
- se a lâmpada não acender, então
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova.
REFERÊNCIA: PLT – CAPÍTULO 1
23/02/2014
34
No exemplo anterior se a condição lâmpada não
acender for falsa (a lâmpada está funcionando), as
ações relativas a troca da lâmpada não serão
executadas, e a lâmpada (que esta em bom estado)
não será trocada.
O condicionamento de uma ação
é conhecido como teste seletivo
Algoritmo – troca de uma lâmpada com teste
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
Algoritmo - Troca de uma lâmpada com teste no início
- acionar o interruptor;
- se a lâmpada não acender, então
- pegar uma escada;
- posicionar a escada embaixo
da lâmpada;
- busca uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
23/02/2014
35
Observe que, agora a ação acionar o interruptor é a
primeira do algoritmo e a condição da lâmpada não
acender já é avaliada. Nesse caso, pegar uma
escada até colocar a lâmpada nova dependem de a
lâmpada estar queimada.
Algoritmo - Troca de uma lâmpada com teste no início
Podemos considerar que o
algoritmo está completo?
Não, pois não prevê a possibilidade de a lâmpada
nova estar queimada.
Algoritmo - Troca de uma lâmpada com teste no início
23/02/2014
36
- acionar o interruptor;
- se a lâmpada não acender, então
- pegar uma escada;
- posicionar a escada embaixo
da lâmpada;
- busca uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova;
- descer da escada;
- acionar o interruptor;
- se a lâmpada não acender, então
- busca uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova;
- descer da escada;
- acionar o interruptor;
- se a lâmpada não acender, então
- busca uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova.
- descer da escada;
- acionar o interruptor;
...
Algoritmo - Troca de uma lâmpada com teste e repetição indefinida.
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
Até quando o algoritmo será
executado?
Percebemos que o número de repetições é
indefinido, porém é finito, e que depende apenas de
uma condição estabelecida, o que leva a repetir as
ações até alcançar o objetivo.
Algoritmo - Troca de uma lâmpada com teste e repetição indefinida.
23/02/2014
37
- acionar o interruptor;
- se a lâmpada não acender, então
- pegar uma escada;
- posicionar a escada embaixo
da lâmpada;
- busca uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova;
- descer da escada;
- acionar o interruptor;
- enquanto a lâmpada não acender, faça
- busca uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova;
- descer da escada;
- acionar o interruptor;
Algoritmo - Troca de uma lâmpada com teste e condição de parada
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
Até agora efetuamos a troca de uma única lâmpada,
na verdade estamos testando um único soquete.
O que faríamos se tivéssemos 10
soquetes?
Algoritmo - Troca de uma lâmpada com teste para 10 soquetes com repetição
23/02/2014
38
- Ir até o interruptor do primeiro soquete
- enquanto a quantidade de soquetes testados for menor que 10, faça
- acionar o interruptor
- se a lâmpada não acender, então
- pegar uma escada;
- posicionar a escada embaixo da lâmpada;
- buscar uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova;
- descer da escada;
- acionar o interruptor;
- enquanto a lâmpada não acender, faça
- busca uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova;
- descer da escada;
- acionar o interruptor;
- Ir até o interruptor do próximo
soquete.
Algoritmo - Troca de uma lâmpada com teste para 10 soquetes com repetição
REFERÊNCIA: “Construção de Algoritmos” (Bibliografia Complementar)
Algoritmo - Troca de uma lâmpada com teste para 10 soquetes com repetição
Quando a condição quantidade de soquetes
testados for menor que 10 for verdadeira, as ações
responsáveis pela troca ou não de um único
soquete serão executadas. Caso a condição de
parada seja falsa, ou seja, todos os 10 soquetes já
tiverem sido testado, nada mais será executado.
23/02/2014
39
CONCLUSÃO
Qualquer pessoa, fundamentada teria condições de
resolver o problema “Trocar a lâmpada” na prática,
porém como o computador não “pensa” é
necessário descrever todos os passos possíveis
para que ele execute uma determinada tarefa.
EXERCÍCIOS (BIBLIOGRAFIA
COMPLEMENTAR)
23/02/2014
40
EXERCÍCIOS – BIBLIOGRAFIA COMPLEMENTAR
1 - Três senhoras – dona Branca, dona Rosa e dona Violeta
– passeavam pelo parque quando dona Rosa disse:
- Não é curioso que estejamos usando vestidos de cores
branca, rosa e violeta, embora nenhuma de nós esteja
usando um vestido de cor igual ao seu próprio nome?
- Uma simples coincidência – respondeu a senhora com o
vestido violeta.
- Qual a cor do vestido de cada senhora?
EXERCÍCIOS – BIBLIOGRAFIA COMPLEMENTAR
2 - Um homem precisa atravessar um rio com um barco
que possui capacidade apenas para carregar ele
mesmo e mais uma de suas três cargas, que são: um
lobo, um bode e um maço de alfafa. O que o homem
deve fazer para conseguir atravessar o rio sem perder
suas cargas? Escreva um algoritmo mostrando a
resposta, ou seja, indicando todas as ações necessárias
para efetuar uma travessia segura.
23/02/2014
41
EXERCÍCIOS – BIBLIOGRAFIA COMPLEMENTAR
3 – No torneio de atletismo, Barnabé, Gumercindo e Teodoro
participaram das provas de 100 metros rasos, salto em
distância e arremesso de dardo. Cada um deles conseguiu
um primeiro lugar, um segundo e um terceiro. Descubra o
que cada um conquistou, sabendo que:
1) Gumercindo venceu Barnabé no salto em distância;
2) Teodoro chegou atrás de Gumercindo no arremesso de
dardo;
3) Barnabé não chegou em primeiro nos 100 metros rasos.
R: Salto em distancia: Gumercindo, Teodoro, Barnabé
Arremesso de dardo: Barnabé, Gumercindo, Teodoro
100 metros rasos: Teodoro, Barnabé, Gumercindo
OBRIGADO
...