Anda di halaman 1dari 17

ADMINISTRADOR DE REDES E SQL SERVER COM ASSISTENCIA TECNICA E DESIGN

INTRODUO A LGICA

INTRODUO A LGICA

SISTEMA FIES CONSELHO REGIONAL DE SERGIPE Eduardo Prado de Oliveira Presidente SUPERINTENDENTE CORPORATIVO Paulo Srgio de Andrade Bergamini SENAI DEPARTAMENTO REGIONAL Paulo Srgio de Andrade Bergamini GERNCIA DE EDUCAO PROFISSIONAL - GEP Silvia Regina Delmondes Freitas Dantas NCLEO RESPONSVEL PELA ELABORAO DE MATERIAL DIDTICO Vanessa Alves de Oliveira

FEDERAO DAS INDSTRIAS DO ESTADO DE SERGIPE SERVIO NACIONAL DE APRENDIZAGEM INDUSTRIAL DEPARTAMENTO REGIONAL DE SERGIPE

INTRODUO A LGICA

2011

2011. SENAI.DR.SE Qualquer parte desta obra pode ser reproduzida, desde que citada a fonte SENAI.DR.SE Centro de Educao e Tecnologia Albano Franco - Aracaju Este trabalho foi elaborado por uma equipe cujos nomes esto relacionados na folha de crdito

Ficha Catalogrfica

INTRODUO A LGICA. Aracaju: SENAI-SE, 201. 17 p.il.

1. INTRODUO A LGICA. 2. SUPORTE TCNICO I. Ttulo.

CDU: 621.39

SENAI.DR.SE CETAF AJU - Centro de Educao e Tecnologia Albano Franco Aracaju Av. Tancredo Neves, 2001 Incio Barbosa 49.040-490 Aracaju SE Tel.: 79 3249-7450 Fax: 79 3249-7493 E-mail: materialdidatico@fies.org.br

SUMRIO

1.
1.1. 1.2. 1.3. 1.4. 1.5. 1.6. 1.7. 1.8.

ALGORITMO ...................................................................................................................... 7
TIPOS DE DADOS ................................................................................................................. 8 OPERADORES ARITMTICOS ........................................................................................... 9 PRECEDNCIA DE OPERADORES ................................................................................. 10 OPERADORES DE COMPARAO ................................................................................. 11 OPERADORES LGICOS .................................................................................................. 11 COMENTRIO ..................................................................................................................... 12 ESTRUTURA DE REPETIO .......................................................................................... 13 ESTRUTURA CONDICINAL ............................................................................................... 14

REFERENCIAS .............................................................................................................................. 16 FOLHA DE CRDITOS............................................................................................................... 17

1. ALGORITMO

O algoritmo pode ser visualizado como um mtodo para solucionar um problema ou atividade no computador. Para isso, o usurio deve estruturar e coordenar uma srie de atividades de para que o computador execute as tarefas corretamente. Deste modo, se pode identificar que um computador possui finitos algoritmos ou cdigos predeterminados, os quais fazem o computador funcionar. O algoritmo tambm pode ser visualizado como uma rotina ou receita para determinado fim. Conforme possvel visualizar no texto de Cruz (1997): A criao de algoritmos para resolver os problemas uma das maiores dificuldades dos iniciantes em programao em computadores. O significado da palavra muito similar ao de uma receita, procedimento, tcnica, rotina. Um algoritmo um conjunto finito de regras que fornece uma seqncia de operaes para resolver um problema especfico. Segundo o dicionrio do prof. Aurlio Buarque de Holando um algoritmo um: "Processo de clculo, ou de resoluo de um grupo de problemas semelhantes, em que se estipulam, com generalidade e sem restries, regras formais para a obteno de resultado ou de soluo de problema." Um algoritmo opera sobre um conjunto de entradas (no caso do bolo, farinha ovos, fermento, etc.) de modo a gerar uma sada que seja til (ou agradvel) para o usurio (o bolo pronto). Um algoritmo tem cinco caractersticas importantes: Finitude: Um algoritmo deve sempre terminar aps um nmero finito de passos. Definio: Cada passo de um algoritmo deve ser precisamente definido. As aes devem ser definidas rigorosamente e sem ambiguidades. Entradas: Um algoritmo deve ter zero ou mais entradas, isto quantidades que so lhe so fornecidas antes do algoritmo iniciar. Sadas: Um algoritmo deve ter uma ou mais sadas, isto quantidades que tem uma relao especfica com as entradas. Efetividade: Um algoritmo deve ser efetivo. Isto significa que todas as operaes devem ser suficientemente bsicas de modo que possam ser em princpio executadas com preciso em um tempo finito por um humano usando papel e lpis.

Ao entrar na tema de lgica, principalmente lgica de programao, muito comum o aluno aprender inicialmente o PORTUGOL. O Portugol uma linguagem estruturada em portugus para facilitar a compreenso da lgica de programao e insero do aluno no conhecimento de lgica de programao. O software comumente utilizado para aprender a lgica na prtica o software Pascal ou Pascal Zim.

Figura 1 Modelo de algoritmo em Portugol

1.1. Tipos de dados

Tipo Inteiro Real Lgico

Descrio valores ordinais definidos com quatro bits Valores com parte decimal definidos com 64 bits Valore lgicos - 1 bit

Valores -2 147 483 648 2 147 483 647 -1.7 E 308 1.7 E 308 verdadeiro falso ASCII(0) ASCII(255) "Sequncias de caracteres" "entre aspas"

Valor por defeito 0 0.0 falso " " (espao) "" (vazio)

Carcter Caracteres da Tabela ASCII Texto Conjuntos de caracteres

O algoritmo abaixo realiza procedimentos de soma: O termo declaraes utilizado para declarar o tipo de dados a ser utilizado. Neste caso, os campos: num1, num2 e result so tratados como nmeros inteiros. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Programa soma Declaraes Inteiro num1, num2, num3 inicio Escreva (digite o primeiro valor: ) Leia (num1) Escreva (\ndigite o segundo valor: ) Leia (num2) Result <- num1+num2 Escreva( \nO Resultado da soma = , result) Fim

1.2. OPERADORES ARITMTICOS

As operaes aritmticas so a subtrao, adio, diviso e multiplicao. No entanto, operaes mais avanadas como percentagens, raiz quadrada e exponenciao tambm sejam includas neste ramo sendo esta a procedncia de um grupo de aes. Para criar expresses aritmticas em uma consulta SQL necessrio utilizar os operadores abaixo: + : somar - : subtrair * : multiplicar / : dividir possvel usar os operadores aritmticos em qualquer clusula, exceto na clusula FROM pois determina local. No exemplo abaixo multiplicado o valor da coluna salario por 12 meses, sendo nomeado a sada de salario_anual. SELECT nome, salario, salario*12 As salario_anual FROM funcionarios
9

Exemplo de programa de soma (http://www.univali.br/webportugol).

em

um

complilador:

WebPortugol

Figura 2 - Programa de Soma

1.3. PRECEDNCIA DE OPERADORES

Quando utilizado vrios operadores em uma consulta importante observar qual ser a precedncia dos operadores. A tabela funcionrios possui a coluna salrio, e, cada funcionrio receber 200 da salrio no final do ano. Para descobrir quanto esse funcionrio ir receber anualmente, necessrio multiplicar a salrio por 12 meses e adicionar o acrscimo de 200.

SELECT nome, salario, 12*salario+200 As salario_anual FROM funcionarios

No exemplo acima cada funcionrio receber o bnus uma vez no ano. Caso o acrscimo seja mensal, ser necessrio somar o salario mais o acrscimo e depois multiplicar por 12. Para solucionar este problema deve-se mudar a precedncia e para isto utiliza-se os parnteses, ou seja, tudo que estiver dentro do parntese executado primeiro.
10

Veja o mesmo exemplo com a mudana de precedncia: SELECT nome, salario, 12*(salario+200) As salario_anual FROM funcionarios

1.4. OPERADORES DE COMPARAO

Os operadores de comparao so usados em condies que comparam uma expresso a outro valor ou expresso. A tabela abaixo mostra os operadores:

= Igual a > Maior que >= Maior ou igual a que < Menor que <= Menor ou igual a que <> Diferente de

No exemplo abaixo, usamos o igual para criar um filtro na clusula WHERE, este filtro diz que os dados retornados devero ser do cdigo de empregado IGUAL a 8. SELECT codigo_funcionario, nome, salario FROM funcionarios WHERE codigo_funcionario=8

1.5. OPERADORES LGICOS

Os operadores lgicos fazem com que seja analisado duas condies e retorne apenas um resultado. Deste modo, uma linha s poder ser retornada se o resultado global da condio for verdadeiro.
11

Operadores lgicos disponveis em SQL: AND Retorna TRUE se ambas as condies forem verdadeiras OR Retorna TRUE se uma das condies for verdadeira NOT Retorna TRUE se a condio seguinte for falsa

No exemplo abaixo uma linha ser retornada se o empregado for do estado de SP e o seu salrio maior que 2200.

SELECT nome, salario, cidade, estado FROM empregados WHERE estado='SP' and salario > 2200

Para produzir um resultado diferente basta alterar esta consulta, trocando o operador AND por OR. SELECT nome, salario, cidade, estado FROM empregados WHERE estado='SP' or salario > 2200

Neste caso uma linha ser retornado se o empregado for do estado de SP ou se o seu salario for maior que 2200.

1.6. COMENTRIO O comentrio criado quando o usurio deseja comentar um procedimento ou sinalizar uma informao de rotina. possvel afirmar que um comentrio um texto iniciado com dois hfens, e que o mesmo no interage com a lgica contida no algoritmo. Sua funo meramente informacional, exemplo:
12

-- Comentrio Para a criao de um comentrio longo, necessrio utilizar campos de marcam o incio e o fim do comentrio, como exemplificado no caso abaixo: /* comentrio de vrias linhas * com aninhamento: /* bloco de comentrio aninhado */ */

1.7. ESTRUTURA DE REPETIO

Texto extrado do site: http://gpt.berlios.de/manual_nodes/node4.html . Acesso em: 28/05/2011 A estrutura ``enquanto'' a mais bsica e comum das estruturas de repetio. Seu funcionamento o mesmo que em outras linguagens populares, onde um conjunto de instrues executado repetidamente enquanto o valor lgico de uma dada expresso for avaliado como ``verdadeiro''. Da mesma forma, para uma iterao decrescente, de 2 em 2, escreve-se: para x de 10 at 0 passo -2 faa //comandos... fim-para Em comparao com a estrutura ``for'' de linguagens com sintaxe baseadas em C, h diferenas no s de sintaxe, mas de implementao. Um ``for'' que itera sobre uma varivel numrica de 0 at (incluindo) 10, ao sair do lao, o valor dessa varivel ser 11. Em G-Portugol, a varivel ter o valor 10 ao sair do lao. Essa diferena acontece porque a sintaxe do ``para'' induz a esse comportamento, diferente da sintaxe do ``for'', que tem um aspecto de mais baixo nvel.

//cdigo em C for(x = 0; x <= 10; x++); printf("%d", x); //imprime ``11''


13

//-------------//cdigo equivalente em G-Portugol para x de 0 at 10 faa fim-para imprima(x); //imprime ``10''

Do mesmo modo que o ``for'', possvel que a varivel de controle tenha seu valor alterado pelos comandos aninhados. Isso permite que o lao seja encerrado prematuramente, como tambm comum em estruturas como ``enquanto''. A utilidade dessa tcnica est no fato de G-Portugol no incorporar mecanismos para refinar o controle de laos (como ``break'' e ``continue'', encontrados em linguagens populares).

1.8. ESTRUTURA CONDICINAL

Texto extrado do site: http://gpt.berlios.de/manual_nodes/node4.html . Acesso em: 28/05/2011 Por enquanto, apenas a estrutura se/ento/seno suportada. Essa e as demais estruturas utilizam expresses, que so avaliadas para que uma deciso seja tomada (repetir execuo, selecionar bloco de instrues, etc). Qualquer expresso pode ser avaliada como expresso lgica. Expresses numricas de valor ``0'' so avaliadas como falso. Demais valores numricos so avaliados como verdadeiro. Valores literais nulos, da mesma forma, so avaliados como falso, e demais textos, como verdadeiro. Para maiores detalhes sobre expresses, veja a seo 4.3.3.

enquanto x faa enquanto "nome" = "nome" faa enquanto verdadeiro faa enquanto 3+5 faa enquanto "nome" faa enquanto 0 faa

//depende do valor de x //avalia como verdadeiro //avalia como verdadeiro //avalia 8 como verdadeiro //avalia como verdadeiro //avalia 0 como falso
14

enquanto "" faa enquanto '' faa

//avalia como falso //avalia como falso

15

REFERENCIAS
CRUZ , Adriano Joaquim de Oliveira. Algoritmos. 1997 Disponvel em: http://equipe.nce.ufrj.br/adriano/c/apostila/algoritmos.htm . Acesso em: 28/05/2011 WIKIPEDIA. Portugol. Disponvel em: Acesso em: 28/05/2011. http://pt.wikipedia.org/wiki/Portugol.

Documentao do PostgreSQL 7.4.1. Captulo 4. Sintaxe da linguagem SQL. Disponvel em: http://pgdocptbr.sourceforge.net/pg74/sql-syntax.html#SQLSYNTAX-OPERATORS. Acesso em: 28/05/2011. Programando em G-Portugol. 04/08/2006. Disponvel http://gpt.berlios.de/manual_nodes/node4.html . Acesso em: 28/05/2011 em:

16

FOLHA DE CRDITOS
SENAI-SE Equipe Pedaggica SENAI CETCC-AJU Centro de Educao e Tecnologia Coelho e Campos - Aracaju Compilao / Digitao CETAF-AJU Tales Bndchen Z. de Oliveira SENAI GEP Gerncia de Educao Profissional

Diagramao Vanessa Alves de Oliveira SENAI GEP Gerncia de Educao Profissional

NBE Ncleo de Biblioteca Escolar Normalizao Bibliogrfica Genilda Mendes de Farias SENAI GET Gerncia de Tecnologia Industrial

17