4. • Computador Hipotético
• Introdução
• Algoritmos...
• ... são conjuntos de passos finitos e organizados
que, quando executados, resolvem um determinado
problema.
• O verbete “lógica”, trata de uma parte da filosofia
que estuda as leis do raciocínio.
• Praticamente quase todos os tipos de problema do
dia-a-dia podem ser resolvidos utilizando algoritmos
naturais.
4
5. • Computador Hipotético
• Exemplo {1}
5
Chegando em Casa
Abra o portão
Passe para o lado de dentro do terreno
Feche o portão
Dirija-se à porta
Pegue a chave da porta
Abra a porta da casa
Passe para o lado de dentro da casa
Feche a porta da casa
Observe que todo início de linha contém um IMPERATIVO. Não
é por acaso!
Chegando em Casa
Abra o portão
Passe para o lado de dentro do terreno
Feche o portão
Dirija-se à porta
Pegue a chave da porta
Abra a porta da casa
Passe para o lado de dentro da casa
Feche a porta da casa
16. • Computador Hipotético
• Introdução
• O Computador Hipotético é um modelo
baseado em elementos de um escritório
fictício.
• Tem por finalidade servir de base para a
aprendizagem de conceitos básicos:
A estrutura de um computador; e
Funcionamento.
16
17. • Computador Hipotético
• Introdução
17
Memória
Unidade de Entrada
Unidade de Saída Unidade Aritmética
Memória Secundária
Unidade de controle e lógica
22. • Computador Hipotético
• Problema I
• Dados dois números realize e apresente a soma
deles.
22
1. Pegar uma folha na bandeja e armazenar o seu
valor na variável E15;
2. Pegar a próxima folha na bandeja e armazenar o
seu valor na variável E16;
3. Somar o conteúdo de E15 com E16 e armazenar
o resultado em E17;
4. Imprimir o conteúdo de E17;
5. Parar.
23. • Computador Hipotético
• Problema I
Dados dois números realize e apresente a soma
deles.
Bandeja ← [9, 10]
23
Pegar uma folha na bandeja e atribuir o seu valor a
variável E15
Pegar a próxima folha da bandeja e atribuir o seu valor a
variável E16
Somar o conteúdo de E15 com E16 e atribuir o resultado
a variável E17
Imprimir o conteúdo de E17
Parar
P1
P2
P3
P4
P5
24. • Computador Hipotético
• Problema I
• Solucionando o problema...
Bandeja ← [9, 10]
24
• Entrada:
• E15 ← 9 // primeiro valor
• E16 ← 10 // segundo valor
• Saída:
• E17 // 19
• Processamento:
• E17 ← E15 + E16
26. • Computador Hipotético
• Problema II
Dadas duas notas de um aluno calcule e apresente a
média das notas.
Bandeja ← [9, 10]
26
P1
P2
P3
P4
P5
P6 Parar
Pegar o primeiro valor da bandeja e atribuir o seu valor
a variável E15
Pegar o próximo valor da bandeja e atribuir o seu valor
a variável E16
Somar o conteúdo de E15 e E16 e atribuir o resultado a
variável E17
Dividir o valor de E17 por 2 e atribuir o resultado a
variável E18
Imprimir o conteúdo de E18
27. • Computador Hipotético
• Problema II
• Solucionando o problema...
Bandeja ← [9, 10]
27
• Entrada:
• E15 ← 9 // primeiro valor
• E16 ← 10 // segundo valor
• Saída:
• E18 // 9.5
• Processamento:
• E17 ← E15 + E16
• E18 ← E17 / 2
28. 28
Problema III
Dado o saldo de uma aplicação,
exiba o novo saldo após um reajuste
de 10%.
30. • Computador Hipotético
• Problema III
Dado o saldo de uma aplicação exiba o novo saldo
após um reajuste de 10%.
30
Solicitar o saldo da aplicação e atribui-lo a variável E15
Pegar o conteúdo de E15 e multiplicar por 0.10 e
atribuir o resultado a variável E16
Somar o conteúdo de E15 com E16 e atribuir o
resultado a variável E17
Imprimir o conteúdo de E17
P1
P2
P3
P4
P5 Parar
32. 32
Problema IV
Uma Empresa paga a seu vendedor um salário
fixo de R$ 800,00, mais uma comissão de 15%
pelo valor de vendas realizada no mês. Leia o
valor de vendas e determine o salário total do
funcionário.
33. • Computador Hipotético
• Problema IV
Tabela Algorítmica
33
Atribuir o valor do salário fixo a variável E15
Solicitar o valor de vendas e atribui-lo a variável E16
Pegar o conteúdo de E16 e multiplicar por 0.15 e atribuir
o resultado a variável E17
Somar o conteúdo de E15 com E17 e atribuir o resultado
a variável E18
Imprimir o conteúdo de E18
P1
P2
P3
P4
P5
P6 Parar
34. • Computador Hipotético
• Problema IV
• Solucionando o problema...
34
• Entrada:
• E15 ← 800 // salário fixo
• E16 ← 5000 // valor de vendas
• Saída:
• E18 // 1550
• Processamento:
• E17 ← E16 * 0.15 // 750
• E18 ← E15 + E17
36. • Computador Hipotético
• Problema V
Solicitar um número qualquer e imprimir o seu
quadrado caso ele seja positivo.
36
P1
P2
P3
P4
P5 Parar
Solicitar um número e atribui-lo a variável E15
Se o valor de E15 for maior do que ZERO, avance para
P3, senão avance para P5
Multiplicar o conteúdo de E15 por ele mesmo e atribuir
o resultado a variável E16
Imprimir o conteúdo de E16
37. • Computador Hipotético
• Problema V
• Solucionando o problema...
37
• Entrada:
• E15 ← 8 // número solicitado
• Saída:
• E16 // 64
• Processamento:
• Verifica se o conteúdo de E15 é > do que zero.
• E16 ← E15 * E15
38. 38
Problema VI
Solicitar o ano atual e o ano de nascimento de
uma pessoa. Imprimir a sua idade caso ela
tenha idade para votar.
// para uma pessoa votar sua idade deve ser maior ou igual a 16 anos.
39. • Computador Hipotético
• Problema VI
Solicitar o ano atual e o ano de nascimento de uma pessoa.
Imprimir a sua idade caso ela tenha idade para votar.
39
P1
P2
P3
P4
P5
P6 Parar
Solicitar o ano atual e atribui-lo a variável E15
Solicitar o ano de nascimento e atribui-lo a variável E16
Subtrair o conteúdo de E15 por E16 e atribuir o
resultado a E17
Se o conteúdo de E17 for maior ou igual a 16, avance
para P5, senão avance para P6
Imprimir o conteúdo de E17
40. • Computador Hipotético
• Problema VI
• Solucionando o problema...
40
• Entrada:
• E15 ← 2016 // ano atual
• E16 ← 1995 // ano de nascimento
• E17 ← E15 - E16 // subtração dos anos
• Saída:
• E17 // 20
• Processamento:
• Verifica se o conteúdo de E17 é maior do que 16.
41. 41
Problema VII
Dadas as duas notas de aluno calcule a média
das notas e apresente uma mensagem dizendo
se o aluno está aprovado.
// para o aluno ser aprovado sua média deve ser maior o igual a 7
42. • Computador Hipotético
• Problema VII
Dadas as duas notas de aluno calcule a média das notas e
apresente uma mensagem dizendo se o aluno está
aprovado.
42
Solicitar a 1ª nota e atribuir o seu valor a variável
E15
Solicitar a 2ª nota e atribuir o seu valor a variável
E16
Somar o conteúdo de E15 com E16 e atribuir o
resultado a variável E17
Dividir o valor de E17 por 2 e atribuir o resultado a
variável E18
Se o conteúdo de E18 for maior ou igual a 7, então
imprima “Aprovado”, senão avance para P6.
P1
P2
P3
P4
P5
P6 Parar
43. • Computador Hipotético
• Problema VII
• Solucionando o problema...
43
• Entrada:
• E15 ← 8 // primeira nota
• E16 ← 6.2 // segunda nota
• Saída:
• “Aprovado”
• Processamento:
• E17 ← E15 + E16
• E18 ← E17 / 2
• Se E18 for ≥ a 7,0 entao o aluno está aprovado.
45. • Computador Hipotético
• Problema VIII
Dados dois números, apresente o maior deles.
45
P1
P2
P3
P4 Parar
Solicitar o primeiro valor e atribui-lo a variável E15
Solicitar o segundo valor e atribui-lo a variável E16
Se E15 for maior do que E16, imprima o valor de E15 e
avance para P5, senão imprima o conteúdo de E16
46. • Computador Hipotético
• Problema VIII
• Solucionando o problema...
46
• Entrada:
• E15 ← 8 // primeiro valor
• E16 ← 5.2 // segundo valor
• Saída:
• E15
• E16
• Processamento:
• Se E15 for maior do que E16 entao o seu valor
será impresso.
• Se não será impresso o valor de E16.
47. 47
Problema IX
Leia a idade e o tempo de serviço de um
trabalhador e escreva se ele pode se aposentar.
As condições para aposentadoria são:
• Ter pelo menos 65 anos;
• Ter trabalhado pelo menos 30 anos;
• Ter pelo menos 60 anos e trabalhado pelo menos 25 anos.
48. • Computador Hipotético
• Problema IX
Tabela Algorítmica
48
Solicitar a idade e atribui-la a variável E15
Solicitar o tempo de serviço e atribui-lo a variável E16
Se E15 for maior ou igual a 65 imprima “Pode se
aposentar”, senão avance para P4
Se E16 for maior ou igual a 30 imprima “Pode se
aposentar”, senão avance para P5
Se E15 for maior ou igual a 60 E E16 for maior ou
igual a 25 imprima “Pode se aposentar”.
P1
P2
P3
P4
P5
P6 Parar
49. • Computador Hipotético
• Problema IX
• Solucionando o problema...
49
• Entrada:
• E15 ← 62 // idade
• E16 ← 27 // tempo de serviço
• Saída:
• “Pode se aposentar”.
• Processamento:
• Se E15 for maior ou igual a 65 anos;
• Senao se E16 for maior ou igual 30 anos;
• Senao se E15 for maior ou igual a 60 anos e E16
maior ou igual a 25 anos.
50. 50
Problema X
Crie um “algoritmo” que imprima vários
números solicitados ao usuário. O algoritmo
encerra quando for digitado um valor menor
ou igual a ZERO.
51. • Computador Hipotético
• Problema X
Crie um “algoritmo” que imprima vários números
solicitados ao usuário. O algoritmo encerra quando
for digitado um valor menor ou igual a ZERO.
51
Solicitar um valor e atribui-lo a variável E15
Imprimir o conteúdo de E15
Enquanto o valor de E15 for maior do que ZERO volte
para P1
P1
P2
P3
P4 Parar
52. 52
Problema XI
Crie um “algoritmo” que solicite vários
números digitados pelo usuário e apresente
a quantidade de números positivos. O
algoritmo encerra quando for digitado o
valor ZERO.
53. • Computador Hipotético
• Problema XI
Tabela Algorítmica
53
Atribuir ZERO a variável E15
Solicitar um valor e atribui-lo a variável E16
Se o valor de E16 for maior do que ZERO, incrementar
+1 em E15
Enquanto o valor de E16 for diferente de ZERO volte
para P2
Imprimir o conteúdo de E15
P1
P2
P3
P4
P5
P6 Parar
55. • Computador Hipotético
• Problema XII
Imprimir todos os valores contidos em uma bandeja.
Bandeja ← [9, 5, 4]
// Sempre vai dá erro, pois o algoritmo não tem um
ponto de parada definido.
55
Pegar um valor da bandeja e atribui-lo a variável E16
Imprimir o conteúdo de E16
Volte para P1
P1
P2
P3
P4 Parar
56. • Computador Hipotético
• Problema XII
Imprimir todos os valores contidos em uma bandeja.
Bandeja ← [9, 5, 4]
56
P1 Atribuir ZERO a variável E15
P2
Pegar um valor da bandeja e atribui-lo a variável E16.
Incrementar +1 a E15
P3 Imprimir o conteúdo de E16
P4
Enquanto o valor de E15 for menor do que a
quantidade de elementos na bandeja volte para P2
P5 Parar
57. 57
Problema XIII
Dada uma bandeja com um conjunto
de valores, imprima apenas os
números pares contidos na bandeja.
58. • Computador Hipotético
• Problema XIII
Bandeja ← [6, 5, 4]
58
Atribuir ZERO a variável E15
Pegar um valor da bandeja e atribui-lo a variável E16.
Incrementar +1 a E15
Dividir E16 por dois. Se o resto da divisão for igual a
ZERO, então imprima E16.
Enquanto o valor de E15 for menor do que a
quantidade de elementos na bandeja volte para P2
P1
P2
P3
P4
P5 Parar
60. • Computador Hipotético
• Problema XIV
Realizar a soma de três valores “fornecidos” pelo
usuário.
60
Atribuir ZERO as variáveis E15 e E16
Solicitar um valor e atribui-lo a variável E17.
Incrementar +1 a E15
Somar o conteúdo de E16 com E17 e atribuir o
resultado em E16
Enquanto o valor de E15 for menor do que 3 volte para
P2
Imprimir o conteúdo de E16
P1
P2
P3
P4
P5
P6 Parar