You are on page 1of 16

Uma linguagem de programao nada mais do que o idioma utilizado para dizer a uma maquina o que e quando ela

a deve executar a partir de uma determinada ao ou situao. Lgica maneira de raciocinar particular a um indivduo ou a um grupo, que gera uma seqncia coerente, regular e necessria de acontecimentos ou mtodos, com finalidade de obter uma soluo prtica e eficaz para um problema. Se observarmos o nosso dia -a-dia, usamos a lgica freqentemente, em nossas casas, no trabalho, nas compras, no trnsito, ou seja, em tudo. No existe lgica errada, existe uma lgica confusa. Algoritmo: Algoritmo a descrio seqencial dos passos que devem ser executados, de fora lgica, clara e em portugus, com finalidade de facilitar a resoluo de um problema. Programa: uma seqncia lgica de instrues escritas em uma linguagem de programao, para serem executadas passo a passo, com a finalidade de atingir um determinadoobjetivo. Linguagens de programao podem ser de Baixo Nvel e de Alto Nvel. Baixo Nvel: Linguagem de Mquina Alto Nvel: Delphi, Java Tradutores foram criados para tornar mais fcil a interface entre o usurio e a mquina. Como j vimos anteriormente, as linguagens so divididas em Baixo e Alto Nvel, cada uma refletindo uma proximidade com a linguagem natural do usurio. O computador s executa instrues em linguagem de mquina, a qual composta por dgitos binrios. Logo, para que o computador execute instrues escritas em linguagens com estruturas diferentes, preciso que estas instrues sejam traduzidas para linguagem de mquina. O tipo da traduo depende da complexidade da estrutura das linguagens

Tipos de tradutores: Montador, Interpretador, Run-Time e Compilador. Compilador: cdigo independente O Montador (apropriado para linguagens de baixo nvel) traduz a linguagem Assembly para a linguagem de mquina. Sua estrutura relativamente simples e depende diretamente do processador utilizado, pois cada processador tem seu set de instrues caracterstico. Os outros tradutores so mais complexos, pois necessitam fazer anlises mais sofisticadas da estrutura da linguagem para realizar a traduo. O Interpretador realiza a traduo e a execuo simultaneamente, no gerando o cdigoobjeto (linguagem de mquina) em disco. A gerao de cdigo em disco observada no Run time e no compilador. A diferena entre eles que o Run-time trabalha com um cdigo intermedirio(pseudocompilado- meio compilado e meio interpretador) e o Compilador gera um cdigo-objeto independente Intranet comunicao interna de rede no banco de dados, no mesmo local Internet acesso a rede mundial de computadores. Extranet possvel acessar o bando de dados de uma empresa na rede mundial a rede local

O bit a menor unidade de informao do computador. 8 bits = 1 byte 1 byte corresponde a 1 caractere; 1kilobyte = 1024 bytes; 1megabyte = 1024Kb 1gigabyte = 1024MB 1 terabyte Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Binrio 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F

Sistema Decimal: basta decompor qualquer nmero inteiro em potncia de base dez: 1024(10) = 1*(10)3 +0*(10)2+2*(10)1+4*(10)0 =1*1000+0*100+2*10+4*1 =1000+0+20+4 =1024 Logo, pode-se concluir que o nmero nada mais que o conjunto de coeficientes das potncias de 10. importante observar que, p ser base decimal, os dgitos disponveis so: 0,1,2,3,4,5,6,7,8,9. Sistema Binrio: Neste sistema, a base 2 e os dgitos disponveis so 0 e 1. Este sistema de numerao constitui o alfabeto interno dos computadores. Sistema Hexadecimal: a base deste sistema 16 e os dgitos disponveis so: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F. Este sistema simplifica a representao dos nmeros, porque diminui a quantidade de algarismos.

Converso de Binrio para Hexadecimal: utiliza-se a soma das multiplicaes das potncias de base 2. Pega-se o nmero em binrio multiplica cada um dos nmero por 2 elevado a quantidade de numero que a seqncia binria contm.: 1 0 0 0 0 0 0 0 0 0 0 (2) =1*(2)10*+0*(2)9+0*(2)8+0*(2)7+0*(2)6+0*(2)5+0*(2)4+0*(2)3+0*(2)2+0*(2)1+0*(2)0 =1*1024+0*512+0*256+0*128+0*64+0*32+0*16+0*8+0*4+0*2+0*1 =1024+0+0+0+0+0+0 =1024(10) Converso de hexadecimal para decimal Soma das multiplicaes das potncias de base 16: 400(16) 2 1 0 = 4*(16) +0*(16) +0*(16) =4*256+0*16+0*1 =1024+0+0 =1024 Converso de binrio para hexadecimal divide-se o nmero binrio em grupos de quatro bits, comeando da direita para a esquerda, e aplica-se a tcnica 8421 8421 8421 8421 8421 1101 0101 1110 0011 D 5 E 3 Converso de Hexadecimal para Binrio - inverso do que fizemos na converso do binrio para hexadecimal. Aplica a regra 8421 somando dependendo do valor: F 8 4 A 8421 8421 8421 8421 1111 1000 0100 1010

Converso de Decimal para Binrio fazer sucessivas divises por dois e tomar sempre o resto 1030(2) = 10000000000110(2) Converso de decimal para hexadecimal converter primeiro de Decimal para Binrio e depois converter de binrio para hexadecimal Algoritmo a descrio seqencial dos passos que devem ser executados, de forma lgica, clara e em portugus, com a finalidade de facilitar a resoluo de um problema, conforme veremos um exemplo a seguir: TROCARPNEU: (1)Abrir a porta do carro (2)Sair do carro (3)Abrir o porta-malas do carro (4)Tem espede? Se sim Retirar o estepe

Se no V para o passo 19 (5)Tem ferramentas? Se sim pegar as ferramentas Se no V para o passo 18 (6)Desapertar os parafusos da roda (7)J desapertou todos os parafusos? Se sim V para o passo 8 Se no V para o passo 6 (8)Levantar o carro com o macaco (9)Levantou o suficiente? Se sim prximo passo Se no V para o passo 8 (10)Retirar os parafusos (11)Retirar a roda (12)Colocar o estepe (13)Recolocar os parafusos (14)Abaixar o carro (15)Apertar os parafusos (16)J apertou todos os parafusos? Se sim V para o passo 17 Se no V para o passo 15 (17)Guardar as ferramentas (18)Guardar o pneu (19)Fechar o porta-malas (20)Entrar no carro FIM Ao: Sair do carro Abrir a porta-malas do carro Retirar a roda Colocar o estepe Deciso Se sim retirar o estepe Se no V para o passo 19 Tem ferramentas? Se sim- pegar ferramentas Se no V para o passo 18 Lao ou Loop Desapertar os parafusos da roda J despertou todos os parafusos? Se sim V para o passo 8 Se no V para o passo 6

Levantar o carro com o macaco Levantou o suficiente? Se sim prximo passo Se no V para o passo 8 Algoritmo CASE (1)MenuPrincipal (2)Digite um nmero de 1 a 6 (3)Caso Caso digitou 1: Abrir o programa de Incluso Caso digitou 2: Abrir o programa de Excluso Caso digitou 3: Abrir o programa de Consulta Caso digitou 4: Abrir o programa de Alterao Caso digitou 5: Abrir o programa de Impresso Caso digitou 6: Fechar Menu Caso contrario: Exbir Nmero Invlido V para 2 (4)Fim Algoritmo While Em uma caixa existem 200 bolas, sendo 60 verdes, 60 amarelas, 60 azuis e 20 brancas ou pretas (existe pelo menos uma branca e uma preta). Retirar bolas da caixa at ter certeza de que saram 20 da mesma cor e exibir quantas bolas de cada cor foram retiradas Bolas20 Enquanto todos os contadores de bolas forem menores que 20 Retirar uma bola Caso Caso a bola seja verde: Somar 1 no contador de bolas verdes Caso a bola seja amarela: Somar 1 no contador de bolas amarelas Caso a bola seja azul: Somar 1 no contador de bolas azuis Caso a bola seja branca: Somar 1 no contador de bolas brancas Caso contrrio: Somar 1 no contador de bolas pretas Totalizar os contadores (loop) Exibir valores FIM Fluxograma, ou Diagrama de Blocos, a representao grfica de um algoritmo sendo constitudo de blocos funcionais que mostram o fluxo dos dados e as operaes efetuadas com eles.

Terminao Utilizado para indicar o nicio, fim ou sada de um fluxograma

Processamento Utilizado para indicar uma ao. Recebe o que o usurio digita.

Utilizado para comparar dados e desviar o fluxo conforme o resultado seja verdadeiro ou falso usado para condio

Entrada/Sada Utilizado para indicar operaes de leitura e gravao de registros. No banco de dados

Processamento Predefinido ou Mdulo Utilizado para indicar uma chamada uma subrotina EX. Validao Decimal

Documento Utilizado para indicar a impresso de dados

Exibir Utilizado para exibir dados na tela

Preparao Utilizado pra exibir dados na tela

Conector Utilizado para execuo de looping White - for

Conector de Pgina Utilizado para continuar o fluxograma em outra parte da mesma pgina - (finalizar condies na mesma pgina

Seta de Fluxo de Dados Utilizado para indicar o sentido do fluxo de dados conectando os smbolos existentes.

Fluxograma exibe de forma clara a sequncia dos passos a serem executados. Vejamso um exemplo: como atravessar uma rua no semforo de pedestres. Algoritmo: ATRAVESSAR: Observar o semforo de pedestres (ao) Verificar se est verde? (condio) Se sim Atravessar a rua (ao) Se no esperar um pouco (ao) V para o passo 2 FIM Fluxograma o retngulo de ao s tem uma entrada e um sada

Atravessar

Observar o semforo de pedestres

Ao

V para o passo

Est verde? s Atravessar a rua

Esperar um pouco

FIM

Estruturas bsicas REPETIO

SEQUNCIA

A = 50 recebe B=2+A

D = 12
conector

D=D-1

D<8 C = 3* B E = 100

Para (for) Proximo (next)

Para I = 1 at 5 Passo + 1

Para I = 1 at 5 Passo + 1

V E=C+1

E=C+1 G = 4 *E

G = 4 *E Prximo I H=8 H=8

Se...Ento...Seno (If...Then...Else)

A>=B A=A+1 B = B/2 B = 5*B

Fim Se (End If)

C=2

Se no colocarmos alguma rotina para mudar o valor da varivel corremos o risco de cair no loop infinito

Faa enquanto (do While) Fim Enquanto (end do)

Enquanto J <> 10 J=J+1

Enquanto J <> 10 J=J+1

ou
K=K-1 I = 89 K=K-1 Fim Enquanto

I = 89

VARIVEIS Introduo: Variveis so reas da memria (ou endereos na memria) utilizadas em programao para guardar um nico valor por vez. Trocar bolas: Tem-se 2 bolas ( UM e DOIS ) e 3 caixas ( A , B e C ). As caixas comportam apenas 1 bola por vez. Inicialmente, a bola UM est na caixa A e a bola DOIS est na caixa B . Trocar os contedos entre as caixas A e B . As caixas funcionaram como variveis, que so reas da memria e s podem conter um valor por vez. Sempre utilizamos variveis em programao. Utilizando variveis Consistncia de condies Com as variveis podemos verificar uma condio e assim obter um ou outro resultado. Se entre vrias opes desejamos escolher uma alternativa, podemos comparar a escolha com uma varivel e fazer o programa executar uma ou outra seqncia de comandos. Controle de repeties FOR e WHILE As variveis de memria podem ser usadas para controle de repeties. Se escrevemos uma seqncia de comandos dentro de um programa e desejamos que esta seqncia seja repetida um certo nmero de vezes, podemos utilizar uma varivel numrica e, a cada passagem, aumentar ou diminuir seu valor, de modo que, quando atingido o valor especificado para a varivel, a seqncia de comando pare de ser executada. Comparaes de variveis de memria com campos de registros - Quando trabalhamos com arquivos de Bancos de Dados podemos fazer comparaes, trocas eprocuras de registros atravs das variveis de memria. Devemos lembrar sempre que variveis ficam armazenadas na memria RAM do computador, enquanto CAMPOS de um REGISTRO pertencem ao Banco de Dados e esto gravados no disco (outro meio armazenamento do computador). Tipos de variveis - Alfanumrica: Atribumos uma seqncia de letras, nmeros ou sinais; - Numrica: Atribumos somente nmeros: Inteira : 4 bits 8 bits 16 bits 32 bits 64 bits Real: 32 bits 64 bits Data: Atribumos somente datas; Lgica: Atribumos somente os valores verdadeiro ou falso(V/F) ; Objeto (ou Recurso (Resource)): atribumos uma referncia de um objeto. Exemplos banco de dados

Nomes de variveis para atribuir um nome a uma varivel devemos observar alguns aspectos: - No possvel comear um nome de varivel com nmero; - S permitido o uso de underline no nome; espao ou qualquer outro sinal so proibidos; - Para maior facilidade, devemos usar sempre nomes auto-explicativos; - Devemos, no entanto, cuidar para que as variveis no tenham nomes de comandos, funes ou campos de uma Banco de Dados, pois isto pode dificultar o entendimento do programa. Declarao de variveis: As variveis devem ser declaradas. Para declarar uma varivel, devemos informar o nome e o tipo da varivel. Declara A,B.C numricas, D,E alfanumricas. Comando de atribuio: O comando de atribuio serve para guardar uma informao na rea de memria do computador. Utilizaremos o sinal = para representar o comando de atribuio. = L-se rece A = 5 B = 7 D = Jose C = A Operadores aritmticos Em programao, utilizamos os mesmos operadores aritmticos que so usados na matemtica, com as mesmas prioridades. Em primeiro lugar, so executadas as exponenciaes e as radiciaes, em segundo as multiplicaes e as divises e depois as adies e as subtraes. OPERAO OPERADOR USADO PRIORIDADE Radiciao // 1 Exponenciao ^ ou ** 1 Multiplicao * 2 Diviso / 2 Adio + 3 Subtrao 3 Usamos tambm os seguintes operaes matemticas no convenvionais. OPERAO Resto da diviso Parte inteira da diviso OPERADOR USADO MOD DIV PRIORIDADE 2 2

Normalmente, as operaes so executadas da esquerda para a direita, a no ser que mudemos sua ordem usando parnteses. 7 3 1 2

7 MOD 3 Resto

7 DIV 3 Inteira

Contadores e acumuladores:
y y y

Contador: A linha que descreve um contador A Acumulador: A linha que descreve um acumulador B de A : B = B + A Acumulador de conta: A linha que descreve um acumulador C do dobro de B C=C+2*B

Operadores relacionais: Quando encontramos nas quais necessrio usar condies, utilizamos os seguintes operadores para estabelecer relaes: Operadores relacionais Quando escrevemos situaes nas quais necessrio usar condies, utilizamos os seguintes operadores para estabelecer relaoes: OPERAO Igual a Maior que Menor que Maior ou igual a Menor ou igual a Diferente de OPERADOR USADOS = ou == > < >= <= < > ou !=

Exemplo: Se o cargo for igual a Gerente, Ento conceder um aumento de 10% no salrio. Seno conceder um aumento de 5% no salrio Fim Se. Em uma linguagem de programao: IF cargo = Gerente Salrio = salrio * 1.10 Else Salrio * 1.05 Endif Operadores lgicos: So usados quando existem duas ou mais condies em um teste lgico: y E Prioridade 1 (as duas tem que ser verdadeiro ter medo do E (And, &&, &)) Se o cargo for igual a Gerente E a idade for maior ou igual a 50 anos Ento conceder um aumento de 10% no salrio Seno conceder um aumento de 5% no salrio Fim Se y OU Prioridade 2 (ter pavor do ou, uma das condies esto corretas (ou, ||, |) Se o cargo for igual a Gerente OU a idade for maior ou igual a 50 anos Ento conceder um aumento de 10% no salrio Seno conceder um aumento de 5% no salrio Fim Se Tabela de deciso: Partindo de uma condio, podemos tomar uma outra deciso. Exemplo: Se estiver com fome irei almoar Seno no irei almoar

1 deciso: se estiver com fome irei almoar (SE verdadeiro) (ENTO verdadeiro) (SE falso) (Ento Falso) Observemos que podemos escrever na negativa e o resultado ser o mesmo Se no estiver com fome no irei almoar Seno irei almoar Se no estiver com fome no irei almoar. Se verdadeiro. Ento Verdadeiro. Se falso. Ento falso. Vamos criar uma tabela unindo duas condies, usando o operador E. Se estiver com fome e for meio dia, irei almoar. Se Estiver com fome V V F F e + + + + For meio dia V F V F ento = = = = Irei almoar V F F F

Usando operador OU, basta que apenas uma das duas primeiras proposies seja verdadeira para que a terceira tambm seja.

Se

Estiver com fome V V F F

e + + + +

For meio dia V F V F

ento = = = =

Irei almoar V V V F

Processamento predefinido: Function Processamento predefinido um programa que pode ser usado em outro programa. Vejamos um exemplo: Temos 2 bolas e 3 caixas ( A , B e C ). As caixas comportam apenas 1 bola por vez. Considerando que uma bola est na caixa A e outra na caixa B , trocar o contedo da caixa a com o da caixa B. Transferir (X,Y)

Retirar a bola da caixa x

Colocar a bola na caixa y

Sada

Trocar o contedo entre as caixas A, B e C Transferir (X,Y)

Transferir (A, C)

Transferir (B,A)

Transferir (C,B)

FIM

Construo de processamento predefinido (FUNCTION) para construir um processamento predefinido, considera-se um trecho de programa. Consideremos o seguinte exemplo: rea = 4 * 3.14 * R ^2 Devemos verificar as variveis a serem informada e substitui-las no trecho do programa. Processamento Predefinido CALCAREA (X,Y numricas) Y = 4 * 3.14 * X ^2 SADA. LOOP, LAO E REPETIO Neste capitulo aprenderemos o conceito de lao e como escrever e utilizar os laos em programao. Laos, loops ou repeties so trechos de uma lgica que podem ser executados vrias vezes. Os comandos descritos a seguir so utilizados para efetuar um lao dentro de uma lgica de programao. Fluxograma FOR NEXT - contador For(para) Next (prximo) (FIM PARA)

Somar 1 at 5 Declarar Soma, I numricas Soma = 0 I<=5

Para I = 1 at 5 passo + 1 V Soma = Soma + I I Exiba

I, Soma

Fim

Prximo I

While WHILE (ENQUANTO) WEND (FIM ENQUANTO)

Somar 1 at 5 Declarar Soma, I numricas Soma = 0 I=1 Enquanto I<=5 V Soma = Soma + I Fim Em vez de mandar para a tela, pode-se mandar para a impressora 15

Soma

I=I+1

Incremento Importante

Fim Enquanto

Somar 1 at 5 Declarar Soma, I numricas Soma = 0 I=1 F

I<=5 V Soma = Soma + I

Soma

Fim Em vez de mandar para a tela, pode-se mandar para a impressora 15

I=I+1

Go to Desvio incondicional Linguagem desestruturada

You might also like