P. 1
Algoritmos

Algoritmos

|Views: 136|Likes:
Publicado porMarcos Augusto Rosa

More info:

Published by: Marcos Augusto Rosa on May 22, 2011
Direitos Autorais:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

04/10/2013

pdf

text

original

Sections

  • Objetivos:
  • INTRODUÇÃO
  • DEFINIÇÃO
  • CONCEITO
  • CARACTERISTICAS
  • FORMAS DE REPRESENTAÇÃO
  • 1ª Forma: Descrição narrativa
  • 2ª Forma: Fluxograma
  • 3ª Forma: Linguagem Algorítmica
  • Linguagens
  • CONCLUSÃO
  • IDENTIFICADORES
  • Palavras Reservadas
  • VARIÁVEIS
  • CONSTANTES
  • TIPOS DE DADOS
  • Classe de dados ³Simples´
  • Classe de dados ³Lógica´
  • Classe de dados ³Estruturados´
  • Resp.: (I) ± No identificador não pode haver caracteres especiais
  • Resp.: (I) ± No identificador não pode haver espaços em branco
  • Expressões Aritméticas
  • Expressões Lógicas
  • ESTRUTURAS
  • Estrutura Seqüencial
  • Estrutura Condicional
  • Estrutura de Repetição

Algoritmos ± Introdução, Definição e Conceito ± Parte 1

Objetivos:

Esta é a Parte 1 de uma série de tutoriais sobre Algoritmos. Nesta série de tutoriais você aprenderá o que é, para que serve e como funciona um algoritmo.

Pré-requisitos: Para acompanhar esta lição você deve dominar os conceitos básicos de informática.

Nota: Este tutorial Técnicas de Programação.

faz

parte

do

Curso:

Algoritmos ± Conceitos, Características e Estruturas ±Parte 1

Neste tutorial e nos demais que seguir utilizaremos como editor de algoritmos o Turbo Pascal 7.0.

INTRODUÇÃO

No estudo da informática o algoritmo e como o alicerce de uma casa, sem ele não se pode construir as paredes e o telhado, ou seja, sem o algoritmo não se pode criar um estudo sistematizado em nenhum campo da informática.

No mundo atual praticamente todas as tarefas podem ser automatizadas, e para isso fazemos o uso de computadores. E os computadores precisam de receberem ordens para funcionarem, daí a necessidade de algoritmos.

Para aprendermos a criar algoritmos não basta estudar ou copiar algoritmos, para se aprender como manipular situações e codificá-las em forma de algoritmo precisamos de escrever e criar algoritmos, pegar exercícios, e praticar.

DEFINIÇÃO

O algoritmo se define por uma seqüência lógica de passos que o computador executara fielmente para que se obtenha um resultado satisfatório. Estas seqüências podem ou não ser executadas dependendo do andamento do algoritmo, porém estes passos sempre serão alcançados em algum momento do algoritmo.

CONCEITO

O conceito de algoritmo é utilizado em praticamente todas as áreas do conhecimento, mesmo sem utilizar o nome algoritmo. Por exemplo na administração e contabilidade um plano de ação é um algoritmo, pois nele são listados passos para que se chegue a um resultado satisfatório.

Coloquemos isto em nosso dia a dia. Você acaba de acordar e sabe que tem que ir ao trabalho, quais os passos que você executa para que o resultado satisfatório (ir ao trabalho) aconteça.

Vejamos:

1º Passo Levanta da cama 2º Passo Vai ao banheiro 3º Passo Veste a roupa 4º Passo Sai de casa

Quando dizemos que este passos tem que ser uma seqüência queremos dizer que, este passos tem que ser executados um após o outro, porque ninguém vai ao banheiro pela manhã sem levantar da cama ou ninguém sai de casa primeiro antes de se vestir.

Para o estudo da informática o raciocínio lógico e fundamental, primário e essencial na evolução

acadêmica atividade.

de

quem

quer

seguir

este

ramo

de

CARACTERISTICAS

Todo algoritmo tem por padrão apresentar algumas características básicas:
y

y y

y

Partir de um ponto inicial e chegar a um ponto final; Não ser ambíguo (ter dupla interpretação); Poder receber dados externos e ser capaz de retornar resultados aos mesmos; Ter todas suas etapas alcançáveis em algum momento do programa. FORMAS DE REPRESENTAÇÃO

Podemos representar um algoritmo de 3 formas distintas:

1ª Forma: Descrição narrativa

Fazemos uso da descrição narrativa, quando queremos descrever um algoritmo de forma que o receptor da informação entenda do assunto mesmo não conhecendo de algoritmos, porém neste tipo de descrição temos uma imprecisão e uma falta de confiabilidade no entendimento do algoritmo além de termos um descrição muito grande para dizer pouca coisa.

Exemplo: Dobro de um número y y y y y Digitar um número. 2ª Forma: Fluxograma Desta forma faremos o uso de símbolos universais que nos ajudaram a compreender o que o algoritmo quer dizer. pois se trata de um padrão mundial. Obs: O conceito de variável será visto mais adiante neste curso. Gravar o resultado em outra variável. porém este complica-se a medida que o algoritmo cresce. Este é mais utilizado. Levandose em consideração o exemplo anterior temos: . Pegar o número e multiplicar por 2. Mostrar o resultado da operação. Gravar em uma variável. além de termos símbolos dizerem muito mais que palavras.

0. Lembrando que utilizaremos como linguagem de estudo de algoritmos o Turbo Pascal 7.Legenda: Cálculo Decisão Entrada Saída Inicio/Fim 3ª Forma: Linguagem Algorítmica Consiste na representação em linguagem de programação. Seguindo o mesmo exemplo: .

Program Calcula_Dobro. readkey.dobro: integer. NUM. var num. dobro). Begin Write (µDigite um número:¶). DOBRO: integer. write ('O dobro de '. End. Var NUM: integer. ' e '. (Sugestão do leitor Evaldo Rodrigues de Godoi) program Calcula_Dobro. read (num). uses wincrt. DOBRO:= 2 * NUM. if num=1 then dobro:=1 else dobro:= 2 * num. . begin write ('Digite um número:'). Readkey. num. Uses crt. Read (NUM). µ e µ. DOBRO). Write (µO dobro de µ.

2 . Peguemos como exemplo o seguinte fato. já que não tem nenhum posto por perto e você esta viajando sozinho. 1 ± Desce do carro. iremos exemplificar aqui as linguagens de programação (baixo e alto nível) para que saibamos como funciona estes tipos de linguagens. 3 ± Troca o Pneu. 4 ± Volta a viajar. Você esta viajando e de repente o pneu do carro fura e você precisa trocá-lo. Com esta seqüência é possivel se trocar o pneu do carro.end.Pega o estepe. Qual a seqüência que você realiza para se trocar um pneu. Porém estamos considerando que a pessoa que ira trocar o pneu sabe como executar esta . Linguagens Como a visão deste curso e desenvolver futuros programadores.

11 ± Colocar o triângulo no asfalto para fazer a sinalização. 12 ± Retirar o macaco do porta malas. 9 ± Pegar o triângulo de sinalização. 10 ± Montar o triângulo. 5 ± Abrir a porta. 17 ± Girar a manivela para levantar o carro. 7 ± Sair do veículo. 6 ± Colocar as pernas para fora do carro. Agora iremos exibir o mesmo problema em uma linguagem de baixo nível. 4 ± Retirar o cinto de segurança. 8 ± Abrir o porta malas. . 1 ± Estacionar o carro no acostamento. 3 ± Ligar a pisca alerta.atividade. 2 ± Desligar o carro. Este exemplo nos mostra uma linguagem de alto nível pois com comandos reduzidos já conseguimos executar uma tarefa com resultado satisfatório. 16 ± Colocar o macaco sob o carro. 15 ± Colocar o estepe ao lado do carro. 13 ± Colocar o macaco ao lado do carro. 14 ± Retirar o estepe do porta malas.

22 ± Parafusar o estepe. 26 ± Guardar o triângulo. Veja como uma linguagem de alto nível se comporta em relação a uma linguagem de baixo nível. 24 ± Colocar o pneu no porta malas. 21 ± Colocar o estepe.18 ± Pegar a chave. 19 ± Retirar os parafusos. 2 ± Desligar o carro. 25 ± Colocar o macaco no porta malas. 28 ± Abrir a porta do carro. 29 ± Sentar no banco. 27 ± Fechar o porta malas. 23 ± Girar a manivela do macaco ao contrario. 32 ± Ligar o carro. 20 ± Retirar o pneu. 30 ± Colocar as pernas para dentro. Alto Nível 1 ± Desce do carro Baixo Nível 1 ± Estacionar o carro no acostamento. 31 ± Colocar o cinto de segurança. . 33 ± Continuar a viagem.

12 ± Retirar o macaco do porta malas. 23 ± Girar a manivela do macaco ao contrario. 31 ± Colocar o cinto de segurança. 20 ± Retirar o pneu. 6 ± Colocar as pernas para fora do carro. 22 ± Parafusar o pneu. 33 ± Continuar a viagem. porém o programador fica limitado. 21 ± Colocar o estepe. 28 ± Abrir a porta do carro. Na linguagem de alto nível. 26 ± Guardar o triângulo. 11 ± Colocar o triângulo no asfalto para fazer a sinalização. 13 ± Colocar o macaco ao lado do carro. 16 ± Colocar o macaco sob o carro. já que se algum passo contido em um . 5 ± Abrir a porta.Pega o estepe 3 ± Troca o Pneu 4 ± Volta a viajar 3 ± Ligar a pisca alerta. 25 ± Colocar o macaco no porta malas. 14 ± Retirar o estepe do porta malas. 7 ± Sair do veículo. 4 ± Retirar o cinto de segurança. pois um comando em uma linguagem de alto nível corresponde a vários comandos em uma linguagem de baixo nível. 15 ± Colocar o estepe ao lado do carro. 24 ± Colocar o pneu no porta malas. 29 ± Sentar no banco. 30 ± Colocar as pernas para dentro. 18 ± Pegar a chave. 19 ± Retirar os parafusos. o entendimento fica mais fácil. 9 ± Pegar o triângulo de sinalização. 32 ± Ligar o carro. 27 ± Fechar o porta malas.2 . 8 ± Abrir o porta malas. 17 ± Girar a manivela para levantar o carro. 10 ± Montar o triângulo.

Mas visualizando todos os comandos listados tem por objetivo trocar o pneu do carro. Por exemplo no comando 4 da linguagem de alto nível ³Voltar a viajar´ se eu quiser ligar o carro primeiro para depois colocar o cinto de segurança será impossível já que a linguagem de alto nível não me permite. liberdade esta que o programador tem quando programa em linguagem de baixo nível. Exemplo: Para se fazer menus no Clipper gastá-se muita programação. já no Delphi basta clicar e arrastar. a programação já esta por baixo ou seja linguagem de baixo nível. Toda a programação já esta embutida no Comando Menu do Delphi.comando de alto nível não pode ser alterado. isto quer dizer que meu algoritmo funcionou. Se partirmos do ponto em que o carro esta com o pneu furado e chagar ao final com o problema resolvido. ³pneu trocado´. No próximo tutorial . CONCLUSÃO Neste tutorial falamos sobre definição e conceito dos algoritmos bem como suas características e formas de representação. tanto em uma linguagem de alto nível quanto uma linguagem de baixo nível. além de exemplificarmos linguagens de alto e baixo nível. Mas na prática a linguagem de alto nível simplifica a vida do programador já que vários detalhes da programação são desconsideráveis nesta linguagem.

Constantes e Tipos de Dados ± Parte 2 . Pré-requisitos: Para acompanhar esta lição você deve dominar os conceitos apresentados no Algoritmos Parte 1. Constantes e Tipos de Dados ± Parte 2 Objetivos: Esta é a Parte 2 de uma série de tutoriais sobre Algoritmos. faz parte do Curso: Algoritmos ± Identificadores. Variáveis. Nota: Este tutorial Técnicas de Programação. Nesta parte você ira conhecer sobre identificadores o que são e qual a sua importância para o bom entendimento de algoritmos. Variáveis.falaremos sobre variáveis. também estudaremos sobre variáveis e quais as diferenças entre variáveis e constantes além de suas semelhanças. tipos de variáveis e suas definições Algoritmos ± Identificadores. Analisaremos posteriormente os tipos de dados que podem ser atribuídos a cada uma destas variáveis e constantes.

programas e campos de um registro (estes itens serão analisados mais adiante no curso). E também não ter o mesmo nome de palavras reservadas. após o primeiro caracter. ou seja se caso utilizarmos uma destas palavras iremos infringir a regra de que não se pode haver identificadores repetidos. Não podem haver nenhum identificador repetido. tipos. variáveis. são identificadores que já foram usados pelo programa. letras. . mas somente os 63 primeiros caracteres são significativos. unidades. As leis que regem este conjunto de caracteres são: y y y y y y Podem ter qualquer tamanho. que já foram destinadas a identificar outros elementos. porém recomenda-se o uso de no máximo 8 caracteres. números e sublinhada ( _ ). ou seja no identificador só podemos ter. O primeiro caracter do identificador obrigatoriamente tem que ser uma letra. Nos identificadores não pode conter espaços em branco. Segue abaixo uma tabela de palavras reservadas pelo Pascal (programa utilizado para estudo de algoritmos em nosso curso). No conteúdo do identificador não pode conter caracteres especiais (!@#$%&*/-+<>?). Palavras Reservadas Palavras reservadas. procedimentos.IDENTIFICADORES Identificadores são conjuntos de caracteres regido por determinadas leis que representam constantes.

pode assumir valores diferente dependendo do cálculo empregado. ou seja como o próprio nome diz variável tem em seu conteúdo valores variáveis.ABSOLUTE AND CONST DIV EXTERNAL FILE BEGIN CASE DOWTO ELSE FORWAR FUNCTION D GOTO IF IMPLEMENTATIO IN INTERFAC N E INTERRUP LABE MOD NIL NIT T L OF OR PACKED PROGRAM RECORD REPEAT SET SHL SHR STRING THEN TO UNIT UNTIL USES VAR WHIL WITH XOR E ARRAY DO FOR Estes são apenas alguns exemplos de identificadores contidos do Pascal. mais adiante será apresentados algumas funções onde seu nomes se enquadram nesta lista. Na programação a teoria de variáveis tem o mesmo conceito e com alguns diferenciais. . o valor da variável sempre conterá somente um valor e ocupara um determinado espaço na memória. VARIÁVEIS Na matemática o termo ³variável´.

José. para podermos analisar qual o tipo de dado mais apropriado para cada variável.57. etc 260. 153 etc Maria. Ex. ou até que o programa se finalize. 2.62 . 100. o que dificulta na hora da atualização do programa. As constantes são muito utilizadas quando temos que fazer referência a um determinado termo várias vezes.: Variável Descrição CODFUN Código Funcionário NOME Nome da Pessoa VALOR Salário da Pessoa Tipo Inteiro Texto Real Valores Permitidos 1. etc CONSTANTES Diferente das variáveis. sobre aplicações e posteriormente esta taxa de juros . ou seja mesmo o valor de uma variável não ocupar todo o espaço reservado a ela.O tamanho que a variável ira ocupar na memória dependerá do tipo de dados que esta variável ira suportar. mas o espaço reservado a uma variável sempre estará reservado a ela. Imagine que você tenha um programa financeiro de 2500 linha de programação que faça cálculos de juros sobre salário. dai a necessidade de se conhecer os ³Tipos de Dados´. João.983.12. este espaço continuará reservado. as constantes receberão um valor ao iniciar o programa e este valor é inalterável durante a execução do programa. sobre rendimentos.

ou ainda determinar um tipo errado a sua variável. Devido a isto o estudo de ³Tipos de Dados´ é muito importante para a programação. já que durante a execução ele fará referência a uma constante que esta com o valor dos juros alterados. se você não faz o uso de constantes você tem que percorrer todas as linha de comando do seu programa localizar onde estão os valores correspondentes as taxas de juros e alterá-las. . Veremos estas classes. mas se você faz o uso de constantes basta mudar o valor da taxa de juros contido na declaração da constante no inicio dos comando que todo o seu programa esta atualizado automaticamente. não conseguimos executar cálculos com esse número já que a propriedade do tipo ³TEXTO´ não nos permite. As constantes obedecem às mesmas leis de identificadores das variáveis.muda. um trabalho extremamente cansativo. TIPOS DE DADOS Como já dissemos para declararmos as variáveis precisamos indicar ao programa qual tipo de dados esta variável ira receber. tão operação. Embora uma variável de tipo µTEXTO¶ aceitar um número. Basicamente possuímos três classes de dados. simples. para que não falte e nem sobre espaço na memória pois isto limita a eficiência e velocidade de execução de um programa. lógica e estruturadas.

com algumas diferencias.7 x 10 38 3.Classe de dados ³Simples´ Integer ± recebe números inteiros. Da mesma forma que as do tipo ³integer´ as variáveis do tipo real possui as seus subtipos.4 x 10 38 1.0 x 10 324 EXTENDED 3. Neste tipo de dados temos outros subtipos que seguem a mesma teoria de dados. Veja o quadro Tipo INTEGER SHORTINT BYTE WORD LONGINT Valor mínimo -32768 -128 0 0 -2147483648 Valor máximo 32767 127 255 65535 2147483647 Bytes ocupados 2 1 1 2 4 Real ± recebe números reais. Tipo Valor Mínimo REAL 2. Vejamos o quadro.7 x 10 308 1.1 x 10 4932 2 63 ± 1 Bytes Ocupados 6 4 8 10 8 Dígitos Significativos 11-12 7-8 15-16 19-20 19-20 .5 x 10 -45 DOUBLE 5.9 x 10 -39 SINGLE 1.4 x 10 4932 COMP -2 63 + 1 Valor Máximo 1.

µpaula¶. recebe um conjuntos de dados simples (Char). Exemplos: µA¶. Ex.: Casado := Sim ou Não. µa¶. O tamanho máximo deste tipo de dados é de 255 caracteres.Char ± representa um único caracter.: µanna¶. µ%¶ Classe de dados ³Lógica´ Boolean ± recebe apenas valores lógicos. Ou seja. µteste123¶ . Classe de dados ³Estruturados´ String ± recebe dados alfanuméricos. A maioria dos computadores utilizam a tabela de códigos ASCII para representar todos os caracteres disponíveis. escrito entre apóstrofos ( µ ). µ1¶. Ex. True (verdadeiro) ou False (falso).

Os tipos de dados estruturados Array.3W. File. Resp. . Resp. y 123mudar.: (C) y A9PQ.: (I) ± No identificador não pode haver caracteres especiais. Set e Text serão também estudados mais adiante. y X1YZ. EXERCICIOS RESOLVIDOS 01 ± Marque (C) para correto e (I) para incorreto dente os identificadores abaixo. Record.: (I) ± Os identificadores não podem iniciar com números.Estudaremos strings em módulos especifico mais adiante. Resp. Resp.: (C) y GF. justificar os Incorretos.

Ex.: String. Resp.: (34) 3222-1111 aceita y Número de moradores de um prédio.: Integer.: (I) ± No identificador não pode haver caracteres especiais. Resp.cor. Resp. y Hoje amanha.: (I) ± No identificador não pode haver espaços em branco. y Xor. y O número de telefone. 2 ± Escreva o tipo de dado ideal par se representar as seguintes informações. .y Lápis. Ex.: (I) Palavra reservada não pode ser usada como identificador. Pois somente string caracteres especiais.: 25 y Se uma pessoa gosta de bala ou não. Resp. Resp. Número inteiro.

25. Resp.: String. y µ5. Números inteiros 3 ± Identificar os tipos dos seguintes dados.: Preto.: 5 / 2 = 2. y Alunos de uma escola. y 0.28. valores verdadeiros y O valor de um casa. Ex.: Boolean. Números decimais. y µAnna Paula¶. y Resultado de uma divisão. Resp. Resp.Resp.8E10¶.: R$ y A cor de um carro. Valores alfanuméricos. Somente (sim) ou falsos (não). Resp. Ex.583. Resp.:Real.: Real.: Real.5.: String.: Integer. Números decimais.8. . Ex. Resp.

E logo após entramos em um tópico importantíssimo para a programação que é os tipos de dados que as variáveis e constantes podem receber. Resp. y µ µ. além de exemplos para entendimento do conteúdo.: Integer. o que é e para que serve constantes e variáveis. No próximo tópico falaremos sobre o operadores: Atribuição. y True. além de suas diferenças e semelhanças. y µ?¶.: String. y 25.: Char. Resp. Aritiméticos e Lógicos. CONCLUSÃO: Neste tutorial ficou exemplificado como funciona as leis dos identificadores. .: Boolean. Resp. listamos todos os tipos e exemplificamos.Resp. Resp.: Real.

Algoritmos ± Expressões e Operadores ± Parte 3 Objetivos: Esta é a Parte 3 de uma série de tutoriais sobre Algoritmos. Algoritmos ± Operadores ± Parte 3 OPERADORES . Constantes e Tipos de Dados . Nesta parte você ira conhecer sobre Expressões Aritméticas e Lógica além dos operadores empregados nestas expressões. Variáveis.Parte 2.além de utilizarmos exemplos e exercícios resolvidos para aumentarmos os conhecimentos aplicados. Pré-requisitos: Para acompanhar esta lição você deve dominar os conceitos apresentados no Algoritmos ± Identificadores. Nota : Este tutorial faz parte do Curso: Técnicas de Programação. Mostraremos o que são e para que servem.

Operadores Aritméticos Os operadores aritméticos representam operações mais comuns da matemática. Real Real Inteiro Inteiro Inteiro Inteiro . São eles: as Operador Operação + Adição Subtração * Multiplicação / Divisão DIV Divisão inteira MOD Resto da Divisão Operandos Resultado Inteiro. Real Inteiro.Os operadores tem grande utilidade no desenvolvimento de algoritmos com eles podemos comparar e efetuar cálculos entre variáveis. Real Inteiro. Comandos utilizando operadores serão muito utilizados em todo o curso e em todas as ocorrências em que os algoritmos se fizer necessário. Os operadores aritméticos são utilizados somente com dados do tipo inteiro e do tipo real. Real Inteiro. Expressões Aritméticas Nas expressões aritméticas fazemos o uso dos operadores aritméticos que são símbolos utilizados para efetuarmos cálculos matemáticos. Real Inteiro. Real Inteiro. Real Inteiro.

2 ± A utilização de parênteses indica que as expressões contidas nos mesmos tem prioridade . Segue abaixo uma tabela contendo as prioridades e suas exceções. Prioridade Operadores 1ª * / DIV MOD 2ª +- Observações: 1 ± Quando houver expressões com operadores de mesma prioridade segue a de maior prioridade.5 5 DIV 2 2 5 MOD 2 1 Prioridades As prioridades seguem o mesmo contexto da das prioridades em expressões matemáticas.5 10.5 5/2 2.Exemplos: Expressão Resultado 3+2 5 8±5 3 3 * 3.

Abaixo segue uma tabela contento estas funções e procedimentos aritméticos e suas características.máxima.5 => 3. Real Finalidade Tipo do Resultado O mesmo do argumento Real Inteiro Inteiro O mesmo do FRAC (X) Parte Fracionária Real TRUNC Parte Inteira Real (X) ROUND Valor Real (X) Arredondado SQR (X) Eleva ao Inteiro. E se houver parêntese alinhados parênteses mais internos tem prioridade.5 Funções e procedimentos aritméticos São funções que estão prontas para cálculos específicos. os Exemplos: 1º 2 + 3 / 2 => 2 + 1. Função Tipo do Argumento ABS (X) Valor Absoluto Inteiro. Real .5 2º (2 + 3) / 2 => 5 / 2 => 2.

EXP (LN(X)*N).97) 2 EXP (LN(3) * 27 3) ABS (-8.25) 1.8 ABS (8) 8 FRAC (2.97) 1 ROUND (1.286) 0.5) 2.8) 8. mas podemos conseguir esta informação utilizando a função LN(X) e EXP(X).5 TRUNC (1.286 Expressões Lógicas As expressões lógicas sempre retornaram True (Verdadeiro) e False (Falso).quadrado SQRT (X) Raiz quadrada LN (X) Logaritmo Natural EXP (X) Exponencial Inteiro.25 SQRT (2. Para se montar . Exemplos Expressão Resultado SQR (3) 9 SQR (1. Real Real Real argumento Real Real Real No Pascal não existe nenhuma função que faça a Potenciação (X N).

Operadores Relacionais São usados para comparar duas expressões ou variáveis e retorna se a comparação é verdadeira ou falsa (Valor Lógico). Veremos o que são e como funciona cada um destes operadores e exemplificaremos cada um deles.expressões lógicas utilizamos de operadores relacionais e operadores lógicos. OperadorOperação = Igual > Maior < Menor >= Maior ou Igual <= Menor ou igual <> Diferente Exemplos: Expressão Resultado 1=2 FALSE µA¶ = µa¶ FALSE 5>2 TRUE 3 <= 3 TRUE TRUE < FALSE FALSE . A utilização das expressões lógicas somente serão aplicadas em termos com o mesmo tipo de dados.

segue o quadro abaixo Prioridade Operadores 1ª Not 2ª And 3ª Or 4ª = > < >= <= <> . utilizados para combinar expressões Operador Operação Not Não (negação) And E (conjunção) Or Ou (disjunção) Prioridade A ordem em que se obedece uma expressão lógica.µJOAO¶ > µJOSE¶ 2 + 3 <> 5 µcomp¶ <> µCOMP¶ 11 > 4 FALSE FALSE TRUE TRUE Operadores Lógicos São lógicas.

a.667 -> 4.EXERCICIOS RESOLVIDOS 1.: 5 mod 2 div 2 -> 1 div 2 -> 0 b. desenvolva. Z ± ABS (X ± SQR(Y)) Resp.2 + 6 -> 6. X + Y + Z / 3 Resp.: 1 + 2 + 5 / 3 -> 3 + 1.2 + 3 * 2 -> 0. Z mod Y div Y Resp.Considerando que X = 1. SQRT (Z div Y + X * Y) Resp. Y = 2 e Z = 5.: SQRT (5 div 2 + 1 * 2) -> SQRT (2 + 2) -> SQRT (4) -> 2 e.2 d. FRAC (X / Z) + ROUND (Z / Y) * TRUNC (Z / Y) Resp.: FRAC (1/5) + ROUND (5/2) * TRUNC (5/2) -> 0.: 5 ± ABS (1 ± SQR(2)) -> 5 ± ABS (1 ± 4) -> 5 ± ABS (-3) -> 5 ± 3 -> 2 .667 c.

: FALSE d.: FALSE .: TRUE b. FALSE = FALSE Resp. µJOAQUIM¶ < µJOSE¶ Resp.: FALSE c.: TRUE e. µa¶ <= µA´ Resp.0 Resp. a. µCASA¶ <> µcasa¶ Resp.2. µ µ = µ µ Resp. 3 = 3. µ22¶ > µ200¶ Resp.: FALSE g.Dadas as comparações abaixo.: TRUE f. escreva os resultados.

Algoritmos ± Estruturas .: FALSE b. e para que serve os operadores e as expressões lógicas em que são utilizadas.Parte 4 Objetivos: .Sendo A = TRUE e B = FALSE.: TRUE c.3. Qual o resultado das expressões abaixo a.: FALSE Conclusão Nesta parte mostrei o que é. Mostraremos a seguir quais são as estruturas dos algoritmos. (A or B) and (not A or not B) Resp. como se dividem e como funcionam estas estruturas.: TRUE d. A or B and not A or not B Resp. not A and B or A and not B Resp. not (not (A or B) and (A or B)) Resp.

algoritmo é uma seqüência onde o computador irá ler os comando de cima para baixo e da esquerda para a direita. São elas: seqüencial. Pré-requisitos: Para acompanhar esta lição você deve dominar os conceitos básicos de informática. Estrutura Seqüencial Esta estrutura e padrão em toda a forma de algoritmo. condicional e de repetição. Nesta parte você aprenderá como funciona as estruturas de comandos utilizadas para se escrever algoritmos bem como o seu funcionamento.Esta é a Parte 4 de uma série de tutoriais sobre Algoritmos. Cronologicamente ficaria da seguinte forma: . faz parte do Curso: Algoritmos ± Estruturas ± Parte 4 ESTRUTURAS Nos algoritmos temos 3 estruturas básica de controle nas quais detalharemos mais adiante. Nota: Este tutorial Técnicas de Programação. como já foi dito. Esta estrutura estará contida nas demais estruturas que iremos estudar.

<Comando-n> Nesta estrutura o comando-3 somente será executado após o comando-2 e o comando-2 após o comando-1 e assim por diante. Estrutura Condicional Estrutura também conhecida como de decisão ou seleção. Estrutura Condicional Simples Neste. . . Representaremos as . a condição ira determinar a execução ou não de um determinado comando. caracterizasse por execução de determinados códigos de programação dependendo da veracidade de uma condição. Esta estrutura se subdivide em outras duas estruturas.<Comando-1> <Comando-2> <Comando-3> .

.mesmas conforme representação: visto no tópico formas de Descrição Narrativa: Se fizer sol então vou à praia.0 teremos a seguinte sintaxe para resolução do mesmo problema em Pascal. Fluxograma: Linguagem Algorítmica: Se tempo = sol então Vou à praia Fim-se Para padronizarmos os estudos em Turbo Pascal 7.

Senão´ Representaremos as mesmas conforme visto no tópico formas de representação: Descrição Narrativa: Se fizer sol então vou à praia senão jogarei cartas.. Estrutura Condicional Composta Nesta.. Na estrutura simples temos ³Se..... Vou à Praia.Então... End...If tempo: = sol then begin. nesta caso teremos ³Se. Fluxograma: Linguagem Algorítmica: . a condição ira determinar qual comando será executado dentre dois listados..Então´..

Jogarei cartas.Se tempo = sol então Vou à praia Senão Jogarei cartas Fim-se Padronizando novamente para Pascal. If tempo: = sol then begin. Estrutura Condicional Composta (case) Esta estrutura e extremamente utilizada quando necessitasse de utilizar o comando if repetidas vezes. . Vou à praia. end Else begin. End. tornando-se assim um comando de alto poder na estruturação de qualquer algoritmo.

4: mês:= Abril. se igual a 2 então é fevereiro.Descrição Narrativa: Caso o mês seja igual a 1 então é janeiro. . 3: mês:= Março. Fluxograma: Linguagem Algorítmica: Case mês of 1: mês:= Janeiro. 2: mês:= Fevereiro. se igual a 3 então é março e assim por diante.

9: mês:= Setembro. 10: mês:= Outubro. . 6: mês:= Junho. Estrutura de repetição com teste no inicio (comando while-do) Os comandos contidos neste tipo de estrutura podem não ser executados nenhuma vez. 8: mês:= Agosto. 11: mês:= Novembro. 12: mês:= Dezembro. 7: mês:= Julho. end. Estrutura de Repetição Essa estrutura trabalha com a repetição de comandos até que condições se satisfaçam.5: mês:= Maio. Esta estrutura e subdividida em 3 sub-estruturas. já que o mesmo testa a condição no início da estrutura.

ficarei em casa. Fluxograma: Linguagem Algorítmica: Enquanto tempo <> sol faça Olhar o tempo Fim-enquanto Vou à praia Padronizando: While tempo: <> sol do begin.Descrição Narrativa: Enquanto não fizer sol faça. .

somente assim poderemos sair da estrutura de repetição while e executar o comando ³Vou à praia´. Fluxograma: .Olhar o tempo End. (condição verdadeira) a estrutura ira executar os comandos contidos nela. não tiver sol. pois quando o tempo for igual a sol a condição será falsa. e este se repetirá até que o tempo seja igual a sol. Descrição Narrativa: Ficarei em casa até que faça sol. Neste tipo de estrutura o comando sempre será executado pelo menos uma vez. Vou à praia Enquanto o tempo for diferente de sol ou seja. Estrutura de repetição com teste no final (comando repeat-unitil) Permite a repetição dos comandos contidos nesta estrutura até que o mesmo seja verdadeira.

Linguagem Algorítmica: Repita Ficarei em casa Até que tempo = sol Padronizando Repeat begin Ficarei em casa End. Until tempo = sol .

Exemplo: . Imprima na tela os Linguagem Algorítmica: For N := 1 to 100 do Begin Writeln (N). Neste exemplo ao iniciar o comando for a variável N recebera o valor do primeiro número da condição (no caso 1) e será impresso na tela o valor do mesmo. quando esse comando se repetir o N passara a ter o valor de N+1 ou seja 2. isso se repetira até que N seja igual a 100.Estrutura de repetição automática (comando for) Permite a repetição dos comandos contidos nesta estrutura seja repetida um número específico de vezes. e será impresso novamente na tela. Descrição Narrativa: números de 1 a 100. End. Temos também no comando for a opção que vai decrescendo N até chegar em um valor igual ao segundo da condição.

mostrei o conceito de estruturas utilizadas para manipulação de dados. ou seja como o programa ira ordenar os dados para obter os resultados esperados. End. Conclusão: Nesta parte do tutorial. .For N := 100 dowto 1 do Begin Writeln (N). No próximo tópico falaremos sobre array dimensionais e arrays bidimensionais.

You're Reading a Free Preview

Descarregar
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->