Escolar Documentos
Profissional Documentos
Cultura Documentos
computacionais
O objetivo deste capítulo é apresentar a organização básica dos computadores e como
estes podem ser programados para resolver problemas.
Tópicos abordados:
❏ conceito de sistemas computacionais
❏ organização de computadores
❏ armazenamento de dados em computadores
❏ algoritmos e formas de representação
❏ programa e linguagem de programação
Espera-se que ao final deste capítulo o estudante tenha aprendido como são organizados
os computadores, como os dados são lidos, armazenados e processados. Sejam também
capazes de elaborar algoritmos que possam ser implementados em uma linguagem de
programação e executados em um computador.
1. Introdução
Para que os sistemas computacionais funcionem e exibam para o usuário informação útil é
necessário que estes sejam programados adequadamente, utilizando uma forma de
comunicação que as máquinas entendam. Desta forma, se houver uma compreensão de
como um computador funciona e é programado será possível entender como outros
sistemas computacionais também funcionam.
2. Organização de computadores
Existem outros sistemas de numeração que ainda são usados. O sistema romano
tem os símbolos I, II, III, IV, V, VI, VII, VIII, X, C. O sistema duodecimal é utilizado, por
exemplo, em dúzia e horas. O sistema de base 60 é usado para tempo: segundos e
minutos.
Todos os sistemas de numeração surgiram para facilitar a contagem de coisas
realizadas pelo ser humano. Mas como colocar uma base numérica dentro de uma máquina
eletrônica para permitir que ela faça cálculos?
Conversão de Bases
A conversão da base 10 para qualquer base envolve a divisão sucessiva
do número na base 10 pela base para a qual o número será convertido, até
obter um quociente menor do que a base solicitada. Em seguida, o número
convertido será composto pelos restos obtidos nas divisões sucessivas,
começando do último resto para o primeiro. Por exemplo, converter o
número 27 para binário e hexadecimal.
A conversão de qualquer base para a base 10 é dada por n = di-1*bi-1 + di-2*bi-2 +
... + d1*b1 + d0*b0
Portanto, converter (10101111)2 para a base 10 consiste em:
n= 1*27 + 0*26 + 1*25 + 0*24 + 1*23 + 1*22 + 1*21 + 1*20 = 175
CURIOSIDADE:
O fluxograma, por sua vez, utiliza figuras geométricas para representar as ações de um
algoritmo. Trata-se de um vocabulário mais restrito, pois cada figura geométrica tem um
significado padronizado e que justifica sua escolha em um algoritmo. Geralmente, as
pessoas não utilizam essa representação pelo trabalho de ficar desenhando tais figuras. Na
Figura 4, apresenta-se um exemplo de algoritmo em fluxograma para somar dois valores e
mostrar o resultado.
ALGORITMO soma2numeros
DECLARE valor1, valor2, soma NUMERICO
LEIA valor1, valor2
soma ← valor1 + valor2
ESCREVA "Resultado ", soma
FIM_ALGORITMO
Nos capítulos seguintes serão apresentadas outras regras de pseudocódigo para escrita de
algoritmos de acordo com a necessidade.
As instruções de um algoritmo não podem ser executadas pelo computador, pois elas
representam um esboço da solução de um problema. A solução em si precisa ser
convertida para um programa utilizando alguma linguagem de programação para ser
executada pelo computador. Logo, um programa é a representação de um algoritmo em
alguma linguagem de programação.
python3 meuArquivo.py
Exercícios de fixação
processamento
saída
4. O jogo conhecido como Torre de Hanoi consiste de três torres chamadas destino,
origem e auxiliar e um conjunto de n discos de tamanhos diferentes. Inicialmente, os
discos estão na torre origem na ordem decrescente (o disco maior embaixo e o disco
menor no topo da pila de discos). O objetivo final é mover todos os discos para a
torre destino. As regras do jogo são: mover um disco de cada vez; não colocar um
disco de diâmetro maior sobre um disco de diâmetro menor; quando necessário,
pode usar a torre auxiliar para movimentos intermediários. Escreva um algoritmo
para esse jogo utilizando 3 discos.
Referências:
Ascencio, Ana Fernanda Gomes; Campos, Edilene Aparecida Veneruchi de. Fundamentos
da Programação de Computadores: algoritmos, Pascal e C/C++.