Documente Academic
Documente Profesional
Documente Cultură
2015
CURSO: SI/ADS/GTI/REDES
DISCIPLINA: INTROD. PROGRAMAO
PROFESSORA: GELLARS TAVARES
Entendendo o Computador
COMPUTADORES
Dispositivo capaz de executar clculos e tomar decises lgicas em velocidades milhes, e at
bilhes, de vezes mais rpidas do que os seres humanos;
Computadores processam dados sob o controle de conjunto de instrues chamado de programas
de computador;
Estes programas de computador guiam o computador atravs de conjuntos ordenados de aes
especificados por pessoas chamadas de programadores de computador.
ARQUITETURA BSICA DO COMPUTADOR
Modelo de Von Neumann
Dispositivos de sada So dispositivos que convertem sinais eltricos para formas que possam
ser entendidas pelo usurio, exibindo-os, quando for o caso, sob a forma de textos, imagens ou som.
Exemplos: impressora, monitor, unidades de disco, unidade de DVD, plotter, pen drive, modem,
etc.
CPU (Central Processing Unit) Unidade Central de Processamento: Formada pela Unidade
de Controle (ULA Unidade Aritmtica e Lgica) e registradores.
Pgina 2
Funcionamento da CPU
Busca Instruo: CPU l a memria em busca do que deve fazer.
L entrada: Supondo que a instruo indica a leitura de um dado de entrada, CPU l entrada.
Busca Instruo: CPU l a memria em busca do que deve fazer com dado lido.
Clculos: Supondo uma instruo de clculo, a CPU realiza a operao
Busca Instruo: CPU l a memria em busca do que deve fazer
Armazena dado: Supondo que a instruo solicitava armazenamento do dado na memria, guarda
o mesmo na memria
Busca Instruo: CPU l a memria em busca do que deve fazer
Apresenta sada: Supondo que a instruo indica que um dado deve ser apresentado ao usurio,
CPU escreve na sada
E assim sucessivamente...
A Memria Principal
A Memria Principal formada por clulas, sendo cada clula enderevel.
O tamanho da clula expresso em bits. Logo, se uma clula formada por n bits, teremos 2n
possibilidades de valores, isto , se a clula for formada por 8 bits, poderemos representar valores
de 0 a 255.
Pgina 3
Pgina 4
Os Nmeros Decimais
Temos DEZ dedos, contando ambas a mos
Como consequncia, lidamos com nmeros DECIMAIS
Isso significa que cada um dos dgitos de um nmero pode ser preenchido com um de 10 smbolos
diferentes:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Quando precisamos representar um nmero maior que 9, acrescentamos um dgito 1 esquerda...
E o dgito da direita volta a zero:
Os Nmeros Binrios
Para representar nmeros, o computador conta apenas com sinais eltricos
Por motivo de preciso, apenas DOIS estados eltricos so usados para indicar nmeros:
ligado e desligado.
Cada fio do computador pelo qual pode estar passando corrente eltrica ou no representa
um dgito para ele chamado bit
Sendo assim, os nmeros so compostos por
apenas dois smbolos: 0, 1
Quando precisamos representar um nmero maior que 1, acrescentamos um dgito 1 esquerda...
E o dgito da direita volta a zero:
0
1
10
11
100
REPRESENTAO DA INFORMAO
O bit (BInary digiT) a menor unidade de informao existente em um computador,
podendo assumir os valores 0 (zero) e 1 (um), o que tem relao com a arquitetura do
processador;
Para cada dado, o computador utiliza diversos 0 e 1 seguidos: 0011010101001011. Podemos
dizer ento que o computador tem como base o sistema binrio;
A unidade padro de medida na Informtica o Byte (BinarY TErm), que o conjunto de 8
(oito) Bits. A um caractere (letra, nmero, ou smbolo especial) associamos um byte, como
ilustrado abaixo:
Pgina 5
LGICA
Cincia que estuda as leis do raciocnio.
Correo/validao do pensamento.
Encadeamento/ordem de ideias.
Arte de bem pensar.
Modo de raciocinar: as solues dos problemas utilizam a lgica para serem criadas, ou
seja, elas so ordenadas de uma forma que sejam possveis de ser realizadas e de uma
maneira que essa forma seja a mais adequada para o que se deseja obter.
Exemplos de aplicao da lgica
O quarto est fechado e meu livro est no quarto. Ento, preciso primeiro abrir o quarto para
pegar o livro.
Rosa me de Ana, Paula filha de Rosa, Jlia filha de Ana. Ento, Jlia neta de Rosa e
sobrinha de Paula.
Todo mamfero animal e todo cavalo mamfero. Ento, todo cavalo animal.
Todo mamfero bebe leite e o homem bebe leite. Ento, todo homem mamfero e animal
(mas no um cavalo).
PROGRAMAO
O que Programao? = ABSTRAO!
A realidade complexa e rica em detalhes!
Pgina 6
Abstrao
NOES DE LGICA
Em Lgica um conceito importante o de Proposio
Proposio: um enunciado verbal, ao qual deve ser atribudo, sem ambiguidade, um valor lgico
verdadeiro (V) ou falso (F).
Exemplos de proposies:
Ronaldinho Gacho jogador de futebol. (V)
3 + 5 == 10 (F)
5 < 8 (V)
Contraexemplos de Proposies:
Onde voc vai ?
3+5
Os estudantes jogam vlei. (Quais ?)
OPERAES LGICAS:
So usadas para formar novas proposies a partir de proposies existentes.
Considerando p e q duas proposies genricas, podem-se aplicar as seguintes
operaes lgicas bsicas sobre elas:
Pgina 7
Definindo a prioridade:
Usar parnteses Exemplo: ((p v q)^(~q)) ou
Obedecer (~) > (^) > (v)
Exemplos de aplicao das operaes lgicas
Considere:
p = 7 primo = (V)
q = 4 mpar = (F)
Ento:
4 NO mpar = ~q = (~F) = (V)
7 NO primo = ~p = (~V) = (F)
7 primo E 4 NO mpar = p ^ ~q = (V ^ (~F)) = (V ^ V) = (V)
7 primo E 4 mpar = p ^ q = (V ^ F) = (F)
4 mpar E 7 primo = q ^ p = (F ^ V) = (F)
4 mpar E 7 NO primo = q ^ ~p = (F ^ (~V)) = (F ^ F) = (F)
Resumindo:
p
V
V
F
F
q
V
F
V
F
~p
F
F
V
V
p^q
V
F
F
F
pvq
V
V
V
F
Ou seja:
No (~) troca o valor lgico. Se for F passa a ser V e vice-versa.
E (^) s tem valor V quando as duas proposies forem V. Basta uma
proposio ser F para o resultado ser F.
OU (v) s tem valor F quando as duas proposies forem F. Basta uma
proposio ser V para o resultado ser V.
ALGORITMO
Um procedimento passo a passo para a soluo de um problema.
Sequncia lgica e no ambgua de instrues que levam soluo de um problema num
tempo finito.
Sequncia lgica de instrues que devem ser seguidas para a resoluo de um problema ou
para a execuo de uma tarefa.
Algoritmo a descrio de um conjunto de comandos que, obedecidos, resultam numa
sucesso finita de aes;
Pgina 8
Pgina 9
Ateno:
Um algoritmo uma soluo e no a soluo de um problema.
Um problema pode ser resolvido por mais de um algoritmo!
Tarefas que possuem padro de comportamento podem ser descritas por um
algoritmo.
Ex: Qual ser o prximo nmero das sequncias
a) 0,1,4,9,16,25?
b) 7,8,10,13,17?
Lgica de Programao = o encadeamento lgico de instrues para o
desenvolvimento de programas.
Programa = a implementao das instrues (codificao+traduo+execuo) de um
algoritmo em uma linguagem de programao.
Estes programas podem ser escritos em Linguagem de mquina, ou ainda em
linguagens de programao tais como: C, C++, Cobol, VB, dentre outros.
Instruo = Informao que representa uma ao elementar que deve ser executada.
Ateno
O ; (ponto-e-vrgula) indica o fim de uma instruo!
RESUMINDO
Algoritmo sequncia de etapas que visam atingir um objetivo especfico. Por exemplo,
resolver um determinado problema;
Programa - conjunto de comandos especficos que traduzem para o computador o que um
algoritmo determinou que deva ser realizado.
Existe a necessidade da construo de modelos do mundo real, de forma que seja possvel
traduzir isso para a linguagem de computadores. Os principais problemas encontrados no
desenvolvimento de algoritmos so:
Dificuldade na resoluo de problemas;
Dificuldade na interpretao de enunciados; e
Dificuldade em abstrair e formalizar informaes.
Dessa forma, necessrio desenvolver essas habilidades, comeando pela soluo de
problemas sem a necessidade do uso de ferramentas computacionais.
Lgica - Modo de raciocinar: As solues dos problemas utilizam a lgica para serem
criadas, ou seja, elas so ordenadas de uma forma que sejam possveis de ser realizadas e de
uma maneira que essa forma seja a mais adequada para o que se deseja obter (a ordenao
do procedimento da soluo segue uma lgica de raciocnio; a formalizao dos
procedimentos de resoluo de problemas precisa ser refinada para aproximar-se do que ser
aplicado na prtica: a lgica de programao);
Lgica de programao - uso correto das leis do pensamento, da ordem da razo e de
processos de raciocnio e simbolizao formais na programao de computadores,
objetivando racionalidade e o desenvolvimento de tcnicas que cooperem para a produo
de solues logicamente vlidas e coerentes, que resolvam com qualidade os problemas que
se deseja programar. (Forbellone; Eberspacher, 2005).
Pgina 10
Pgina 11
SISTEMA COMPUTACIONAL
Pgina 12
Processamento
UCP
Sada
Dispositivo
de Sada
Memria
6,8
(6 + 8) / 2
Processament
o
UCP
Sada
Dispositivo
de Sada
Memria
Ana, 5, 3
Se (5+3)/2>=7
aprovado
Seno
reprovado
Ana, reprovado
LINGUAGENS DE PROGRAMAO
O conjunto de instrues, que ser executado pelo processador,
chamado de linguagem de mquina.
As linguagens de programao so classificadas de acordo com a
similaridade que esta linguagem tem com a linguagem de mquina.
Pgina 13
Linguagem
Assembly
(Mnemnica)
Alto Nvel
Linguagem
de
Alto N vel
val2 = val1+val2
DE
BLOCOS,
DIAGRAMA DE CHAPIN Tambm chamado de DIAGRAMA DE NASSISHNEIDERMAN, diagrama com viso hierrquica e estruturada.
Um algoritmo uma soluo e no a soluo de um problema.
Um problema pode ser resolvido por mais de um algoritmo!
Pgina 14
Diagrama de Blocos
Pgina 15
Pgina 16
Linguagem C++
#include<iostream>
using namespace std;
int main()
{
float Fahrenheit, Celsius;
cout<<"Digite Temperatura em Fahrenheit: ";
cin>>Fahrenheit;
Celsius = 5 /9 * (Fahrenheit - 32);
cout<<"Temperatura em Celsius = "<<Celsius<<"\n";
system("pause");
}
Pgina 17
PSEUDOCDIGO
Incio
real NOTA1, NOTA2, MEDIA;
Leia (NOTA1, NOTA2);
MEDIA := (NOTA1 + NOTA2) / 2;
SE MEDIA >= 5
escreva ( Aprovado );
SENO
escreva ( Reprovado);
Fim
VANTAGENS E DESVANTAGENS
Descrio
Narrativa
Fluxograma
Linguagem
Algortmica
Vantagens
Desvantagens
O portugus bastante conhecido Impreciso.
por ns.
Padro mundial.
Ferramenta bem conhecida.
Figuras dizem muito mais que
palavras.
Independncia de linguagem de
programao.
Usa o portugus como base.
Define-se melhor quais e como os
dados vo estar estruturados.
Passagem quase imediata do
algoritmo para uma linguagem de
programao qualquer.
Numricos
Inteiros: dados numricos positivos e negativos pertencentes ao
conjunto de nmeros inteiros, excluindo qualquer valor numrico
fracionrio. Ex. 10, 0, -3, etc.;
Reais: dados numricos positivos e negativos pertencentes ao
conjunto de nmeros inteiros, incluindo qualquer valor numrico
fracionrio e inteiro. Ex. 10, 0, -34.435, etc.;
No-numricos
Caracteres: sequncia de valores delimitados por aspas ( )
formados por letras (de A at Z), nmeros (0 at 9) e smbolos
(%,@,$,...). Este tipo tambm conhecido como alfanumrico,
string, literal ou cadeia. Ex. q, linguagem c++;
Lgicos: dados que sugerem uma nica opo entre duas
possibilidades existentes: verdadeiro ou falso, sim ou no, 1(um)
ou 0 (no).
Pgina 18
CONSTANTES
Exemplos:
pi = 3.14159265
resultado = aprovado
situacao = .falso.
VARIVEIS
Pgina 19
Significado
Diviso
Multiplicao
Adio
Subtrao
Resto da diviso de inteiros
Quociente da diviso de inteiros
e, em expresses
Pgina 20
Observao:
Normalmente, as linguagens de programao assumem que a diviso uma
operao que retorna um valor REAL. Ateno especial, portanto, para
variveis que recebero o resultado de uma diviso.
Em algumas linguagens, quando se divide dois nmeros inteiros, o resultado
ser um inteiro.
PRIORIDADE
Operador
()
*, / ou %
+ ou -
Precedncia
Calculados em primeiro
lugar da esq. p/ dir.
Calculados em segundo
lugar da esq. p/ dir.
Calculados por ltimo da
esq. p/ dir.
Significado
== ou =
Igual a
>
Maior que
<
Menor que
>=
Maior ou igual a
<=
Menor ou igual a
!= ou <>
Diferente
(de
mesma
A diferente de B
X igual a 1
7 maior que 6
8 menor que 9
1 menor ou igual ao valor da varivel Y
4 maior ou igual ao valor da varivel W
PRIORIDADE
Operador
()
*, / ou %
+ ou <, <=, > ou >=
== ou !=
=
Precedncia
Calculados em primeiro lugar da esq. p/ dir.
Calculados em segundo lugar da esq. p/ dir.
Calculados em terceiro lugar da esq. p/ dir.
Calculados em quarto lugar da esq. p/ dir.
Calculados em quinto lugar da esq. p/ dir.
Calculados em ltimo lugar da dir.p/ esq.
Pgina 21
Cond.2
Resultado
Cond.2
Resultado
Resultado
ORDEM DE PRIORIDADES
Operador
Prioridade
Aritmticos
Relacional
Lgico
Pgina 22