P. 1
algoritmoselinguagempascal-100721101414-phpapp01

algoritmoselinguagempascal-100721101414-phpapp01

|Views: 0|Likes:
Publicado porHelena Ferreira

More info:

Published by: Helena Ferreira on Nov 04, 2011
Direitos Autorais:Attribution Non-commercial

Availability:

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

05/16/2014

pdf

text

original

CURSO TÉCNICO DE INFORMÁTICA DISCIPLINA : PROGRAMAÇÃO Profª Angélica M. da Silveira ALGORITMOS 1.

CONCEITO A palavra algoritmo, à primeira vista, parece-nos estranha. Embora possua designação desconhecida, fazemos uso constantemente de algoritmos em nosso cotidiano: a maneira como uma pessoa toma banho é um algoritmo. Outros algoritmos freqüentemente encontrados são: • • • • • • instruções para se utilizar um aparelho eletrodoméstico; uma receita para preparo de algum prato; guia de preenchimento para declaração do imposto de renda; a regra para determinação de máximos e mínimos de funções por derivadas sucessivas; a maneira como as contas de água, luz e telefone são calculadas mensalmente; São vários os conceitos para algoritmo. Escolhemos alguns para serem apresentados aqui:

“Um conjunto finito de regras que provê uma seqüência de operações para resolver um tipo de problema específico” [KNUTH] “Seqüência ordenada, e não ambígua, de passos que levam à solução de um dado problema” [TREMBLAY] “Processo de cálculo, ou de resolução de um grupo de problemas semelhantes, em que se estipulam, com generalidade e sem restrições, as regras formais para a obtenção do resultado ou da solução do problema” [AURÉLIO] Um algoritmo é formalmente uma seqüência finita de passos que levam a execução de uma tarefa. Podemos pensar em algoritmo como uma receita, uma seqüência de instruções que dão cabo de uma meta específica. Estas tarefas não podem ser redundantes nem subjetivas na sua definição, devem ser claras e precisas. Até mesmo as coisas mais simples, podem ser descritas por seqüências lógicas. 2. POR QUE PRECISAMOS DE ALGORITMOS? A importância do algoritmo está no fato de termos que especificar uma seqüência de passos lógicos para que o computador possa executar uma tarefa qualquer, pois o mesmo por si só não tem vontade própria, faz apenas o que mandamos. Com uma ferramenta algorítmica, podemos conceber uma solução para um dado problema, independente de uma linguagem específica e até mesmo do próprio computador. Para que um computador possa desempenhar uma tarefa é necessário que esta seja detalhada passo a passo, numa forma compreensível pela máquina, utilizando aquilo que se chama de programa. Neste sentido, um programa de computador nada mais é que um algoritmo escrito numa forma compreensível pelo computador. 3. FORMAS DE APRESENTAÇÃO DE ALGORITMOS Linguagem Natural Os algoritmos são expressos diretamente em linguagem natural. Fluxograma Convencional Esta é um representação gráfica que emprega formas geométricas padronizadas para indicar as diversas ações e decisões que devem ser executadas para resolver o problema. 1

Pseudo-linguagem Emprega uma linguagem intermediária entre a linguagem natural e uma linguagem de programação para descrever os algoritmos. Não existe consenso entre os especialistas sobre qual seria a melhor maneira de representar um algoritmo. Atualmente a maneira mais comum de representar-se algoritmos é através de uma pseudo-linguagem ou pseudo-código. Esta forma de representação tem a vantagem de fazer com que o algoritmo seja escrito de uma forma que está próxima de uma linguagem de programação de computadores. 4. FASES DE UM ALGORITMO Vimos que ALGORITMO é uma seqüência lógica de instruções que podem ser executadas. Entretanto ao montar um algoritmo, precisamos primeiro dividir o problema apresentado em três fases fundamentais.

Onde temos: ENTRADA: São os dados informados, lidos, digitados pelo usuário. PROCESSAMENTO: São os procedimentos utilizados para chegar ao resultado final SAÍDA: São os dados já processados e mostrados no vídeo ou na impressora. 4.1 Método para construir um algoritmo 1. Ler atentamente o enunciado Deve-se reeler o enunciado de um exercício quantas vezes for necessário, até compreendê-lo completamente. A maior parte da resolução de um exercício consiste na compreensão completa do enunciado. 2. Retirar a relação das entradas de dados do enunciado Através do enunciado, descobrimos quais são os dados que devem ser fornecidos ao programa, via teclado, a partir dos quais são desenvolvidos os cálculos. Obs. Pode haver algum algoritmo que não necessite da entrada de dados (pouco comum). 3. Retirar do enunciado, a relação das saídas das informações Através do enunciado podemos descobrir quais são as informações que devem ser mostradas para compor o resultado final, objetivo do algoritmo. 4. Determinar o que deve ser feito para transformar as entradas nas saídas especificadas Nessa fase é que teremos a construção do Algoritmo propriamente dito. Devemos determinar qual sequência de passos ou ações é capaz de transformar um conjunto de dados nas informações de resultado Exemplo de Algoritmo Imagine o seguinte problema: Calcular a média final dos alunos da 3ª Série, sendo que os alunos realizarão quatro provas: P1, P2, P3 e P4. Onde: Média Final = P1+P2+P3+P4 4 Para montar o algoritmo proposto, faremos três perguntas: a) Quais são os dados de entrada? R: Os dados de entrada são ... b) Qual será o processamento a ser utilizado? R: O procedimento será ... 2

processamento e saída nos algoritmos abaixo: a) Informe código da peça Informe valor da peça Informe Quantidade de peças O valor total da peça é a quantidade de peças multiplicada pelo valor da peça Mostre o código da peça e seu valor total Informe cotação do dólar Informe valor em dólares O valor em reais é a multiplicação da cotação pelo valor do dólar Mostre o resultado da conversão em Real Informe quatro valores Somar o quadrado de cada um Mostre o resultado da soma dos quadrados 3 b) c) ..LINGUAGEM NATURAL Faz-se uso do português para descrever algoritmos e tem a vantagem de que não há a necessidade de aprender nenhum conceito.c) Quais serão os dados de saída? R: O dado de saída será . 5. ATIVIDADES 1 1) Identifique os dados de entrada. 1ª FORMA DE ESCRITA DE ALGORITMO .1 Regras para construção do Algoritmo na linguagem natural Para escrever um algoritmo precisamos descrever a seqüência de instruções. basta saber como se faz para resolver um determinado problema.. Para isso utilizaremos algumas técnicas: * Usar preferencialmente um verbo por frase * Imaginar que você está desenvolvendo um algoritmo para pessoas que não trabalham com informática *Usar frases curtas e simples * Ser objetivo *Procurar usar palavras que não tenham sentido dúbio EXEMPLO 1: Calcular a massa corpórea de uma pessoa Informe o peso da pessoa Informe a altura da pessoa A massa corpórea é o peso dividido pelo dobro da altura Mostre a massa corporea EXEMPLO: Cálculo da média de 4 notas Informe a nota da prova1 Informe a nota da prova2 Informe a nota da prova3 Informe a nota da prova4 A média final é a soma de todas as notas dividida por 4 Mostre a média final. de maneira simples e objetiva. 5.

b) Construa um algoritmo para calcular e mostrar o valor da comissão de um vendedores de peças. É representado por diagrama de blocos. 2ª FORMA DE ESCRITA DE ALGORITMO . permitindo o desvio para um ponto qualquer do algoritmo Símbolo que se utiliza para saída de dados 4 . saída de dados. embora por lei não possa obrigar o cliente a pagar. sua principal função é a de facilitar a visualização dos passos de um processamento. Levando-se em consideração que sua comissão será de 5% do total da venda e que você tem os seguintes dados: * Preço unitário da peça * Quantidade vendida da peça c) Calcular e mostrar o perímetro e a área de um quadrado d) Todo restaurante. Fazer um algoritmo calcula e mostra o valor da gorjeta e o total da conta com a gorjeta. fim. costuma cobrar 10% para o garçom. 6. processamento e saída e faça um algoritmo na linguagem natural: a) Escreva um algoritmo que calcula e mostra o dobro de um número. o valor do salário família. considerando 1 mês e aplicação e o reajuste de 2% ao mês. Com estas informações calcular e mostrar o salário total deste trabalhador. entrada de dados. Simbologia Existem diversos símbolos em um diagrama de bloco. etc. o valor que recebe por hora. cálculos.2) Para cada um dos exercícios abaixo: Identifique os dados de entrada.FLUXOGRAMA Utilização de símbolos gráficos para representar algoritmos. f) Elaborar um algoritmo para entrar com o saldo de uma aplicação e mostrar o novo saldo. Com o diagrama podemos definir uma seqüência de símbolos. e) Informe o número de horas trabalhadas. com significado bem definido. portanto.Veja no quadro abaixo alguns dos símbolos que iremos utilizar: SÍMBOLO FUNÇÃO Indica o Início ou Fim de um processamento Símbolo que se utiliza para entrada de dados Símbolo que se utiliza para indicar o processamento Símbolo que se utiliza para indicar uma decisão a ser tomada. No fluxograma existem símbolos padronizados para início. Símbolo utilizado quando é preciso particionar o diagrama. indicando a possibilidade de desvios. Diagrama de Bloco O diagrama de blocos é uma forma padronizada e eficaz para representar os passos lógicos de um determinado processamento.

' (ponto-e-vírgula) por exemplo. já um programa não funcionaria. para representar algoritmos. ou seja. ela possui todos os elementos básicos e uma estrutura semelhante à de uma linguagem de programação de computadores. o algoritmo não deixa de funcionar porque esquecemos de colocar um '. Programa Nome_Do_Algoritmo var Declaração das variáveistipo de dado Início instruções Fim Programa CALCULA_DOBRO Var NUM.PORTUGUES ESTRUTURADO Consiste na definição de uma pseudolinguagem de programação. Embora o Português Estruturado seja uma linguagem bastante simplificada. 7. só não tão rígida quanto a sua sintaxe.1 ESTRUTURA DE UM ALGORITMO NO PORTUGUES ESTRUTURADO: devemos definir uma sintaxe e uma semântica. cujos comandos são em português. Portanto.Exemplos de diagrama de blocos: Veja que no exemplo da média utilizamos cálculo e exibimos o resultado do mesmo. de forma a permitir uma única interpretação das instruções num algoritmo. INICIO NOTA DA PROVA 1 NOTA DA PROVA 2 NOTA DA PROVA 3 NOTA DA PROVA 4 A MÉDIA FINAL É A SOMA DAS 4 PROVAS DIVIDIDA POR 4 FIM M O ST R A R A M É DI A FI N A L ATIVIDADES 2 1) Construa um diagrama de blocos para os exercícios da atividade 1: 7. DOBRO  inteiro início Leia( NUM) DOBRO  2 * NUM Escreva (DOBRO) fim 5 . resolver problemas com português estruturado pode ser uma tarefa tão complexa quanto a de escrever um programa em uma linguagem de programação qualquer. PSEUDO-LINGUAGEM.

Ela Só Pode Armazenar Um Valor A Cada Instante. veja outras palavras que você não deve utilizar como identificadores de variáveis. 7. b) Os caracteres permitidos são letras de “A” a “Z”. PARA.7.2 Regras para a Formação de Nomes de Variáveis a) O nome de variável é formado por um ou mais caracteres. Nos Algoritmos. obrigatoriamente. um algoritmo para cálculo das raízes de uma equação de 2o grau (ax2 + bx + c = 0 ). letras ou dígitos. ITENS FUNDAMENTAIS PARA A FORMA PORTUGUES ESTRUTURADO Correspondem aos recursos necessários para formalizar os algoritmos. IdadeFilho. fazendo.2. os nomes A. NOTA1. e o caracter especial underline(_). ser uma letra e os caracteres seguintes. e) O tamanho de um nome de variável varia de linguagem para linguagem de programação. o papel das variáveis na matemática.1 Variáveis Sabe-se da Matemática que uma variável é a representação simbólica dos elementos de um certo conjunto. neste caso. IDADE_FILHO. FONE. algoritmo. Destinados A Resolver Um Problema No Computador.2. g) Não pode haver espaços em branco entre os caracteres. Cujo Conteúdo Pode Variar Ao Longo Do Tempo Durante A Execução De Um Programa. 6 . Variáveis válidas: NOME. quando permitido. por exemplo. pois são palavras reservadas da linguagem. Estado Civil. nunca no início ou no final. Assim. f) Não pode ser uma palavra chave ou palavra reservada. c) O primeiro caracter deve. números de “0” a “9”. Embora Uma Variável Possa Assumir Diferentes Valores. A Cada Variável Corresponde Uma Posição De Memória. d) O underline(_). Toda Variável É Identificada Por Um Nome. Toda variável é identificada por um nome. somente pode aparecer entre caracteres ou dígitos. Média As palavras “PARA e algoritmo” são variáveis inválidas. B e C podem representar as posições de memória que armazenam os coeficientes da equação.2. 7. Est_Civil Variáveis inválidas: 3Endereco. numero/complemento.

Exemplo: A B A B CA+B C b A 2 B 5 7 De acordo com a figura acima A e B são Variáveis de Entrada e C é uma Variável de Saída. que posteriormente poderão ser utilizados para cálculos. número de sapato. Alfanuméricas Específicas para dados que contenham letras. não poderá ser utilizada para operações matemáticas. Pode em determinados momentos conter somente dados numéricos ou somente literais. ATIVIDADES 3 1) Identifique o tipo de dado ideal para se representar as seguintes informações: a) O número da conta bancária b) A altura de uma pessoa em metros c) A placa de um veículo 7 . Geralmente é usado para representar medição. data. Numéricas Específicas para armazenamento de números. normalmente usuários ou discos. Ex: endereço. onde a vírgula é substituída por ponto. número de casa.Variáveis de Entrada armazenam informações fornecidas por um meio externo. Variáveis de Saída armazenam dados processados como resultados. Geralmente é usado para representar contagem (quantidade). valores monetários.3 Tipos de Dados das Variáveis As variáveis podem armazenar basicamente de três tipos básicos de dados: Numéricas. etc Real : admite números com ou sem casas decimais. apto. números ou caracteres de pontuação. Inteiro: admite somente números inteiros. 7. etc. Ex: idade. Podem ser ainda classificadas como Inteiros ou Reais.2. Se usado somente para armazenamento de números. etc Lógicas Armazenam somente dados lógicos que podem ser Verdadeiro ou Falso.. Alfanuméricas(Literais ou caracter) ou lógicas.

nº 12 i) 10/10/1987 j) 0 3) Sublinhar os nomes de variáveis válidos: a) VALOR b)@xyz c)AH! d)”SOMA” e)IGUAL_A 4) Supondo que as variáveis Nota. o número da matrícula e o sexo. seu conteúdo pode ser alterado a qualquer momento. 5) Selecione os nomes Válidos para uma variável. 8 .1 Operador de Atribuição Uma variável nunca é eternamente igual a um valor. indique o tipo de dado adequado que cada uma poderá armazenar.3. NA.d) O número de filhos de uma pessoa e) A cor de um objeto 2) Identificar os tipos dos seguintes dados: a) Processamento de Dados b) 0. _______________ e) Não se pode somar uma variável Real com uma Inteira.4 c) 45. decrementamos. comparamos e avaliamos dados dentro do computador.3 Operadores Os operadores são meios pelo qual incrementamos. sublinhe onde está o erro e corrija o mesmo: a) Uma variável Inteira pode receber o valor de uma Multiplicação. ___ 7.80 d) 97015-200 e) '?' f) ' ' g) (55) 3332-1231 h) Appel. MAT e SX sejam utilizadas para armazenar respectivamente a nota do aluno. __________ c) Uma variável String recebe somente Letras. o nome do aluno. Portanto para “colocar” valores em variáveis devemos usar o sinal de uma seta( ) apontando para esquerda. _____________ b) Para uma divisão( / ) qualquer a variável usada deve ser do tipo real. Temos três tipos de operadores: Operador de Atribuição Operadores Aritméticos Operadores Relacionais Operadores Lógicos 7. ______________ d) Uma variável Real não recebe o valor de uma variável Inteira. a) _Salario b) Casa c) Nota3 d) Valor_Total e) 4Nota f) $Salário g) Soma Total h) NOTA i) Maior j) 2005 6) Marque a(s) Opção(ões) errada(s).

3. multiplicação e divisão. Nome  João da Silva // Este comando atribui à variável Nome o valor João da Silva. valores do mesmo tipo da variável. podem utilizar também o operador para exponenciação. que sempre à esquerda do comando de atribuição deve haver um (e somente um) identificador de variável. Exemplo 2 (incorreto) É importante lembrar que só se pode atribuir às variáveis.7 // Este comando atribui à variável Peso o valor 78. divisão (o que aparecer primeiro) 4 º + ou – (o que aparecer primeiro) Exemplo 9 .7. Os símbolos para os operadores aritméticos são: OPERAÇÃO Adição Subtração Multiplicação Divisão Exponenciação Raiz Quadrada Parte inteira de nº Arredondamento de nº SÍMBOLO + * / ^ SQRT TRUNC ROUND SINTAXE CA+B CA-B CA*B CA/B CA^B CSQRT(A) CTRUNC(A) CROUND(A) Hierarquia das Operações Aritméticas 1 º ( ) Parênteses 2 º Exponenciação 3 º Multiplicação. Além da adição. subtração. são incorretos os seguintes comandos: 2060  NumeroConta NumeroAgencia+digitoControle  2345 + 0 7.2 Operadores Aritméticos Os operadores aritméticos são os utilizados para obter resultados numéricos. Assim.Exemplo 1 (correto) Peso  78. Assim. o seguinte comando seria inválido: Salario Insuficiente A variável Salário é do tipo real não pode armazenar conteúdo literal Exemplo 3 (incorreto) Deve estar claro. também.

B  A * 3. C  Round(A) * B. R (D * B) / C. 2a Operadores Relacionais Os operadores relacionais são utilizados para comparar caracteres e números. NOT 10 . D  C / Sqrt(A). R: ____________ 2) Escreva a Fórmula b) A Length(Casa). Os valores a serem comparados podem ser caracteres ou variáveis. retornando se o resultado final é verdadeiro ou falso. R: ____________ − b + b 2 − 4ac em linguagem de programação. utilize os parênteses.ATIVIDADES 4 1) 5 Variáveis(A. Estes operadores sempre retornam valores lógicos (verdadeiro ou falso/ True ou False) Para estabelecer prioridades no que diz respeito a qual operação executar primeiro. D e R) são declaradas no inicio de 3 programas. R ((A + B) / D) + C. Os operadores lógicos são: E / AND . R: ____________ c) A = 3. Encontre os 3 valores de R : a) A  5. usando os operadores aritméticos. C  (B / A) + 10. D  Sqrt(C) + Round(A). R  Sqrt(D+A) * A. B  Sqr(Trunc(A)). B  Sqr(A). OU / OR .6. B. C. C  A + (B / 3). D  Sqr(C) / A. Os operadores relacionais são: Descrição Igual Diferente de Maior que Menor que Maior ou igual a Menor ou igual a Símbolo = <> > < >= <= Exemplo: Tendo duas variáveis A=5 e B=3 Os resultados das expressões seriam: Expressão A=B A<>B A>B A<B A>=B A<=B Resultado Falso Verdadeiro Verdadeiro Falso Verdadeiro Falso Operadores Lógicos Os operadores lógicos servem para combinar resultados de expressões.

e considerando os valores abaixo. ATIVIDADES 5 1) Tendo as variáveis SALARIO.00 15.00 10.00 200. IR e SALLIQ. SALARIO 100. informe se as expressões abaixo são verdadeiras ou falsas.A tabela abaixo mostra todos os valores possíveis criados pelos três operadores lógicos: 1º Valor V V F F V V F F V F Operador AND AND AND AND OR OR OR OR NOT NOT 2º Valor V F F F V F V F Resultado V F F F V V V F F V Exemplo: Supondo que tem-se três variáveis A=5. B=4 e C=3 e D=6. Num diagrama de bloco. Informe se as expressões são verdadeiras ou falsas.00) (SALLIQ < 190.00 EXPRESSÃO (SALLIQ >= 100. a) (A > C) AND (C <= D) () b) (A+B) > 10 OR (A+B) = (C+D) () c) (A>=C) AND (D >= C) () 11 . B=7 e C=4. B=8 e C=1 os resultados das expressões seriam: Expressão A=B A<>B A>B A<B A>=B A<=B Operador AND OR NOT AND OR NOT Expressão B>C B<C B>C B=C Resultado F V V V F F Expressões Lógicas : Operações Lógicas são utilizadas quando se torna necessário tomar decisões em um diagrama de bloco.00 300.00 SALLIQ 100 190.00 IR 0. toda decisão terá sempre como resposta o resultado VERDADEIRO ou FALSO. informe se as expressões abaixo são verdadeiras ou falsas. a) (A+C) > B ( ) b) B >= (A + 2) ( ) c) C = (B –A) ( ) d) (B + A) <= C ( ) e) (C+A) > B () 3) Sabendo que A=5.00) SALLIQ = SALARIO -IR V ou F 2) Sabendo que A=3.00 285.

5) De acordo com os valores fornecidos na tabela ao lado. faça um teste de mesa com o diagrama abaixo: INICIO SALBASE GRATIF SALBRUTO=SALBASE+GRATI F SALBRUTO <1000 Não IR=SALBRUTO*(20/10 0) Sim IR=SALBRUTO*(15/10 0) S A LL IQ SALLIQ=SALBRUTO-IR FIM 12 . g) 3  3. e) Não é verdade que (2 +2 = 5 e 5  7). b) 3  7 ou 4 é um inteiro impar. f) Não é verdade que (2 + 2 = 5 ou 5  7). d) 5 é impar ou divisível por 4.4) Atribua valores verdade para as seguintes proposições: a) 3  7 e 4 é um inteiro impar.

Um algoritmo (programa) de caixa automático.5 4 7. uma calculadora que realiza uma infinidade de operações matemáticas. A sintaxe deste comando é: Escreva (nome da variável de saida) Exemplo 1: X  3. 13 . A sintaxe deste comando é: Leia (nome da variável de entrada) ESCREVA é o comando de saída que exibe uma informação a qual pode ser o resultado de uma variável ou mensagem na tela do monitor. Assim. variável de saida) Exemplo 2: X  3. tem que obter do usuário o número da conta.5 Y4 CX+Y Escreva ( X) Escreva ( Y) Escreva (C) Faria com que aparecesse na tela: 3. Nem todos os dados que um algoritmo manipula são gerados por ele. todas as linguagens de programação permitem isto. etc. X+Y) Faria com que aparecesse na tela: O valor de X é 3.5 E o valor de Y é 4 A soma de X e Y é 7. e no nosso Português Estruturado usamos o comando leia. Em geral.5 ou ou Escreva(‘mensagem’. em algum ponto do algoritmo geralmente deve ocorrer à exibição de valores. LEIA é o comando de entrada que permite a leitura de Variáveis de Entrada.8. a opção de serviço desejada. Portanto.5 Y4 CX+Y Escreva (‘O valor de X é’. deve haver um meio para que sejam digitados (ou fornecidos de outra maneira) dados para o algoritmo. Y) Escreva (‘ A soma de X e Y é’. um programa que faz seu processamento e não tem como mostrar seus resultados é inútil (imagine. Em Português Estruturado usamos o comando escreva. por exemplo. por exemplo. e todas as linguagens de programação têm comandos para este fim.5 IMPRIMA  Comando de saída que envia uma informação para a impressora. mas não tem um display para mostrar os resultados!). Mais uma vez. X) Escreva (‘ E o valor de Y é ‘. a senha.COMANDOS DE I/O (INPUT/OUTPUT): São os comandos que representam a comunicação entre o usuário e a máquina.

14 * SQR(RAIO) {PROCESSAMENTO} ESCREVA (‘ÁREA =’. PROCESSAMENTO COMANDOS DE SAÍDA FIM. ou seja.CORPO GERAL DE UM PROGRAMA PROGRAMA nomedoprograma VAR Listar as variaveis entre vírgula definir o tipo de dado ÍNICIO COMANDOS DE ENTRADA. MEDIA: INTEIRO NOME : CARACTERE [35] INICIO LEIA (NOME) LEIA (NOTA1. NOTA2. assim ele sabe qual é o conteúdo que deve ser colocado.9. PROGRAMA MEDIA_FINAL VAR NOTA1. NOTA4) MEDIA  (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4 ESCREVA (NOME. NOTA3. MEDIA) FIM. Em seguida o Algoritmo calcula e escreve a média obtida. Ex: Algoritmo 2 Segue um Algoritmo que lê o raio de uma circunferência e calcula sua área. digitado. 14 . OBS: Você pode mandar uma mensagem antes para o usuário. A) {SAÍDA} FIM. A : REAL INICIO LEIA (R) {ENTRADA} A  3. NOTA3. NOTA4. PROGRAMA AREA_CIRCUNFERENCIA VAR R. NOTA2. Ex: Algoritmo 1 Segue um Algoritmo(Português Estruturado) que lê o nome e as 4 notas bimestrais de um aluno.

que chamaremos M. Etapa 5 Basta exibir o conteúdo da variável M. usando o método citado acima. que armazenará a média aritmética calculada. e sendo assim a primeira etapa já está pronta. Enunciado: Faça um programa que leia dois valores numéricos. Etapa 2 Os dados necessários serão os dois valores. do tipo numérico. O resultado do cálculo será armazenado na variável M. b) elaboração da solução algorítmica. pois depende da engenhosidade e experiência do “construtor”. Etapa 3 A obtenção dos dados neste programa é simples e direta. e calcule e exiba a sua média aritmética. Etapa 4 O processamento aqui é o cálculo da média. Solução: 15 . e c) codificação da solução no Português Estruturado. PASSSOS PARA A CONSTRUÇÃO DE UM ALGORITMO: De forma genérica. Geralmente a etapa 2 é a mais complexa. e uma terceira variável. na etapa 1. Etapa 1 Dos tempos de escola lembramos que a média aritmética de dois valores é calculada como (a+b)/2.Exemplo: Escreva (‘Digite o nome: ‘) Leia (N) Escreva (‘Digite sua agencia: ‘) Leia (NumeroAgencia) Escreva (‘Digite sua conta: ‘) Leia (NumeroConta) Deve estar claro que sempre à direita do comando leia haverá um identificador de variável. que colocaremos em duas variáveis A e B. a construção de um algoritmo se resume às seguintes etapas: a) entendimento do problema. Basta pedir ao usuário que digite os valores.

Programa Calculo_Media VAR A. sabendo-se que este sofreu um desconto de 10%. Mostrar os dados obtidos. Informar a medida de um lado de um quadrado. 9) a) Ler 3 valores b) Calcular o produto destes valores c) Mostrar ‘O produto vale’.B. Calcular seu perímetro e armazenar em P. Fazer um algoritmo que leia o valor gasto em um restaurante e mostrar o valor da gorjeta e o total com a gorjeta. M) Fim ATIVIDADES Escreva os algoritmos abaixo em português estruturado: Informar três valores e calcular e mostrar a média desses valores. calcule e mostre o novo preço. o valor do produto 10) Todo restaurante. sendo dados a sua base e a sua altura. 6) Escreva um algoritmo para ler uma temperatura dada na escala Fahrenheit e exibir o equivalente em Celsius. (nota1= peso 6 e nota2= peso 4) 5) Escreva um algoritmo para calcular e exibir o comprimento de uma circunferência ( C = 2 ∏ R ).’) Escreva (‘Digite um valor : ‘) Leia (A) Escreva (‘Digite outro valor : ‘) Leia (B) M (A+B)/2 Escreva (‘A média dos dois valores é : ‘. C= 5 * ( F − 32 ) 9 ) ) 7) Escreva um algoritmo para calcular a área de um triângulo. 3) Escreva um algoritmo que leia um número inteiro e exiba o dobro do mesmo. embora por lei não possa obrigar o cliente a pagar. costuma cobrar 10% para o garçom. sendo dado o valor de seu raio.M  REAL Inicio Escreva (‘Programa que calcula a média aritmética de dois valores. 4) Escreva um algoritmo para calcular e exibir a média ponderada de 2 notas dadas. 16 . Calcular sua área e armazenar em A. 8) Faça um programa que receba o preço de um produto.

. Sendo a condição verdadeira. é claro.então tem por finalidade tomar uma decisão e efetuar um desvio no processamento. estas deverão estar inseridas em um bloco. Caso venha a existir mais de uma instrução verdadeira para uma determinada condição. o número de horas trabalhadas. fazer o algoritmo para calcular a raiz quadrada da soma do três valores..11)Ler o código de um funcionário..0. da condição atribuída ser verdadeira ou falsa. 1.então. A estrutura de Decisão e a estrutura de Repetição 1 Comandos de Decisão Os comandos de decisão ou desvio fazem parte das técnicas de programação que conduzem a estruturas de programas que não são totalmente seqüenciais. Sintaxe: se <condição> então <instrução para condição verdadeira>. “Se então Senão”. Com as instruções de SALTO ou DESVIO pode-se fazer com que o programa proceda de uma ou outra maneira. serão executadas as instruções que estejam após as instruções consideradas verdadeiras. Vejamos um exemplo de um trecho de programa com o uso da instrução se. Mostrar o resultado. <instrução para condição falsa ou após condição ser verdadeira> Imagine um algoritmo que determinado aluno somente estará aprovado se sua média for maior ou igual a 5. o valor do salário família. o valor que recebe por hora. Essas decisões interferem diretamente no andamento do programa. THEN A instrução se. 12) Dados 3 valores numéricos... considerando 1 mês de aplicação e o reajuste de 2% ao mês. 17 . Um bloco é o conjunto de instruções estar entre inicio e fim Sintaxe: se <condição> então inicio <instrução para condição verdadeira> <instrução para condição verdadeira> <instrução para condição verdadeira> <instrução para condição verdadeira> fim. de acordo com as decisões lógicas tomadas em função dos dados ou resultados anteriores. <instrução para condição falsa ou após condição ser verdadeira>. As principais estruturas de decisão são: “Se Então”..então: se (x > 10) então escreva(‘O valor da variável X é maior que 10’).ESTRUTURAS DE DECISÃO Em algumas situações verificamos que na maioria das vezes necessitamos tomar decisões no andamento do algoritmo.1 SE ENTÃO / IF . será executada a instrução que estiver escrita após a instrução se. Trabalharemos com dois tipos de estrutura. 13) Elaborar um algoritmo para entrar com o saldo de uma aplicação e mostrar o novo saldo. dependendo. veja no exemplo de algoritmo como ficaria. Com estas informações calcular o salário total deste trabalhador e mostrar junto como código do funcionário. ALGORITMOS . Se a instrução for falsa.

.0 ENTÃO ALUNO APROVADO Em diagrama de blocos ficaria assim: Programa media Var Media:real Inicio Leia(Media) Se media>=5. ELSE Assim como a instrução se. Em algoritmo ficaria assim: SE MÉDIA >= 5. 1. THEN ... e sendo assim. <instruções para condição falsa>.senão tem por finalidade tomar uma decisão e efetuar um desvio no processamento.SE MEDIA >= 5. O conceito de blocos de instruções vale também para esta instrução. Sintaxe: se <condição> então <instruções para condição verdadeira> senão <instruções para condição falsa>. Isto ocorre pelo fato de a instrução senão ser uma extensão da instrução se.).então. Caso venha a existir mais de uma instrução verdadeira ou falsa para uma condição. Sintaxe: se <condição> então inicio <instruções para condição verdadeira>... fim. Observe que nos dois casos abordados acima.. fim senão inicio <instruções para condição falsa>. Sendo a condição falsa... o final da condição somente ocorre após o processamento da instrução senão executado.2 SE ENTÃO SENÃO / IF . será executada a instrução que estiver posicionada logo após a instrução senão.0 então Escreva(‘Aluno Aprovado’) Fim. Se a condição for verdadeira será executada a instrução logo abaixo do se. estas deverão estar inseridas em um bloco.então. <instruções para condição verdadeira>....0 ENTÃO Escreva(‘ALUNO APROVADO’) SENÃO Escreva(‘ALUNO REPROVADO’) Em diagrama 18 .então. a instrução se.. qualquer instrução que antecede a instrução senão está escrita sem o ponto-e-vírgula (.

o preço do Kw e a quantidade de Kw consumido. Calcular o total da conta.20. fim EXERCÍCIOS ESTRUTURAS DE DECISÃO : 1) a) Ler os valores de X e Y . c) Fim. e exiba o código do consumidor.No exemplo acima está sendo executada uma condição que. fim fim senão inicio escreva (‘Aluno REPROVADO’). 4) Deseja-se calcular a conta de consumo de energia elétrica de um consumidor. se for verdadeira. 3) Escreva um algoritmo que leia dois números e exiba o maior deles. Podemos também dentro de uma mesma condição testar outras condições. b) Se X for maior ou igual a Y calcular a média desses valores e imprimir ‘Media = ‘. Se o total da conta for menor ou igual 11. Senão o total a pagar é o total da conta 19 . escreva um algoritmo que leia o código do consumidor. valor da média calculada.0 então inicio escreva(‘Aluno APROVADO’). Para isto. igual ou menor que zero. 2) Escreva um algoritmo para ler um número e determinar se ele é maior.20. Como no exemplo abaixo: se MEDIA >= 5 então inicio se MEDIA >= 7. caso contrário executa o segundo comando “REPROVADO”. fim senão inicio escreva(‘Aluno Necessita fazer outra Avaliação’). então o total a pagar é R$ 11. executa o comando “APROVADO”.

00 a 1. B. se ele for negativo calcular e mostrar o seu quadrado.00 c) o valor total das diárias é calculado pela multiplicação do número de diárias utilizadas pelo valor da diária. O reajuste deve obedecer a seguinte tabela: SALÁRIO ATUAL (R$) 0. o tipo do apartamento utilizado (A. sabendo-se que: .0 e < 8. fazer o algoritmo para calcular e mostar a raiz quadrada desse número se ele for positivo. 8) Escreva um algoritmo que determine o grau de obesidade de uma pessoa.00 50. e exiba o nome. b) o valor da diária é determinado pela seguinte tabela: TIPO DO APTO.1 x altura) – 44. sendo fornecido o peso e a altura da pessoa.7 Mostrar: O nome da pessoa e o seu peso ideal.6) Dado um número.7 x altura) – 58.0 CONCEITO A B C 10) O Botafogo Futebol Clube deseja aumentar o salário de seus jogadores. O grau de obesidade é determinado pelo índice da massa corpórea (Massa = Peso / Altura 2 ) através da tabela abaixo: MASSA CORPÓREA < 26 ≥ 26 e < 30 ≥ 30 GRAU DE OBESIDADE Normal Obeso Obeso Mórbido 9) Faça um algoritmo que.000.00 acima de 5.0 ≥ 5.000. .00 75. o número de diárias utilizadas pelo hóspede e o valor do consumo interno do hóspede.01 a 5.o conceito é determinado de com base na tabela abaixo: MÉDIA FINAL ≥ 8. 20 . considerando que: a) serão lidos o nome do hóspede. 7)Fazer o algoritmo para ler as seguintes informações: o nome. determine e exiba a sua média final e o seu conceito. o salário atual e o salário reajustado. se for feminino o peso ideal é (62. 11) Faça um algoritmo para calcular a conta final de um hóspede de um hotel fictício.000.00 100.0 < 5.a média final é calculada pela média aritmética das 3 notas. C ou D). dado as três notas de um aluno. altura e o sexo de uma pessoa Se sexo for masculino então o peso ideal é (72. A B C D VALOR DA DIÁRIA (R$) 150.000.00 AUMENT O 20% 10% 0% Escrever um algoritmo que leia o nome e o salário atual de um jogador.00 1.

2-) Utilizar um compilador para traduzir o programa fonte para um programa em linguagem de máquina. em homenagem a Blaise Pascal. O interpretador traduz para a linguagem de máquina e roda uma linha por vez. Desta forma. o processo de compilação é de certa forma moroso. Nas mãos da Borland. o subtotal. para programação em ambiente Windows.0. Existem linguagens de programação interpretadas e compiladas. Em 1970 é disponibilizado o primeiro compilador para a linguagem. pois bem. A diferença entre eles está na forma de executar a tarefa de tradução. 4. O Cobol é compilado. Existem diversas linguagens de programação. o valor unitário da diária. e assim sucessivamente até que o programa fique ao seu gosto. implementando recursos que não são encontrados na estrutura padrão da linguagem. o tipo do apartamento.5 na década de 80. podemos aprender e utilizar quantas desejarmos.d) o subtotal é calculado pela soma do valor total das diárias e o valor do consumo interno. o Cobol. suponha que você chegue à conclusão de que o programa tenha que sofrer modificações. você terá que repetir os três passos descritos. Suíça. já foram lançadas as versões 3. Por outro lado. o Basic pode ser tanto compilado como interpretado e assim por diante. f) a total geral resulta da soma do subtotal com a taxa de serviço. Esta linguagem foi batizada com o nome de Pascal. o Pascal e tantas outras.0. devemos juntar ao programa compilado as diversas rotinas necessárias que. Após todo esse processo. 3-) Finalmente. Objetivo: desenvolver uma linguagem de programação disciplinada de alto nível para ensinar programação estruturada. Há os que defendem o Basic. o valor do consumo interno. o número de diárias utilizadas. o valor da taxa de serviço e o total geral. 5. os programas em linguagens de alto nível devem ser traduzidos antes de serem executados pelo computador. 2 Linguagem de Programação Um computador não pode entender nem tão pouco executar instruções em linguagens de alto nível. g) escreva a conta final contendo: o nome do hóspede.0 e o lançamento da linguagem Delphi. ficam armazenadas numa biblioteca. Quem faz essa tradução são os programas tradutores. Ele só entende linguagem de máquina. Dizer qual a melhor é muito relativo. o valor total das diárias. Os dois aceitam como entrada um programa em linguagem de alto nível (fonte) e produzem como saída um programa em linguagem de máquina (objeto). e o compilador.0 e 5. pois deve seguir as seguintes etapas: 1-) Devemos utilizar um editor de textos para escrever e armazenar em disco o nosso programa fonte. 21 . LINGUAGEM PASCAL 1 Histórico Origem: desenvolvida nos anos entre 1968 e 1970 por Nicklaus Wirth na Universidade Técnica de Zurique. normalmente. a C. até que todo programa seja executado. Atualizações: durante os últimos anos foram lançadas diversas variações da linguagem Pascal-Padrão. Durante a década de 90 foram lançadas as versões 6. Já o compilador traduz para a linguagem de máquina todo o programa fonte e só então ele é executado. e) o valor da taxa de serviço equivale a 10% do subtotal. Existem basicamente 2 tipos de programa tradutor: o interpretador. A linguagem Pascal é tradicionalmente compilada.0. filósofo e matemático francês que viveu entre 1623 e 1662. 7.

obedecendo à sintaxe própria da linguagem. é um delimitador. Devem ser escritos linha por linha. TIPO DE DADOS estruturas 22 . em que: program. se tiver algum designado. begin corpo do programa com comandos e end. Menu Compilar Executar : inicia o processo de compilação. Comandos principais do aplicativo PASCAL ZIM Menu Arquivo Novo : inicializa o editor de texto para a edição de um novo arquivo-fonte.pas) 3.pas) Salvar e Salvar Como : gravar arquivos-fonte do editor Sair : abandona o ambiente Pascal zim Menu Editar Recortar: cortar . var. para maior clareza. indica fim de uma instrução lista de variáveis – pode ser um ou mais nomes de variáveis separados por vírgulas : delimitador tipo indica o tipo de dado da variável corpo do programa – contém os comandos e as estruturas que definem o que o programa deve executar. Abrir : abre um arquivo-fonte existente. Devem estar entre as palavras reservadas begin e end. sempre com o arquivo que esteja atualmente no editor. end – são palavras reservadas nome – identifica o programa . var lista de variáveis: tipo. ESTRUTURA DO PROGRAMA EM PASCAL Todo programa fonte escrito em Pascal obedece a seguinte forma geral: program nome. F9 Gerar Executável : compila o arquivo principal. 4. Senão compila o arquivo que estiver atualmente editado e gera o arquivo executável no mesmo diretório onde se encontra o arquivo fonte (*. begin. Colar : colar. Copiar : copiar. (*.Aplicativo Pascal Zim O compilador Pascal Zim foi desenvolvido Departamento de Ciências da Computação da Universidade de Brasília possuindo praticamente quase todas as funções do Turbo Pascal. Verifica se o código fonte possui algum erro.

Este tipo de dado é referenciado pelo identificador string.3 Tipos de Dados Caracteres São considerados tipos caracteres.7 e38 de 1.5 e-45 até 3. as seqüências contendo letras. Toda variável e constante usada em um programa tem um tipo associado a ela. Em Pascal.Os dados são representados pelas informações a serem processadas por um computador.0 e-324 até 1. Vejamos um exemplo do tipo de dado char: var Sexo : char 4. Existe ainda o tipo char.2 e18 até 9.768 a 32. em Pascal.932 de –9.9 e-39 até 1. deve ser representada entre apóstrofos (‘’). Vejamos os tipos: Tipo de dado real real single double extended comp Tamanho(byte s) 6 bytes 4 bytes 8 bytes 10 bytes 8 bytes Faixa de abrangência de 2.147.4 Tipos Lógicos 23 . Nome : string[45].4 e-4. Podemos ainda especificar um tamanho menor do que os 255 caracteres permitidos. sendo sua capacidade de armazenamento maior que dos números inteiros. os dados numéricos positivos ou negativos.932 até 1.1 Tipos de Dados Inteiros São caracterizados tipos inteiros. utilizado da mesma forma que o tipo string.147.647 de 0 até 255 de 0 até 65535 4.483.7e308 de 3. ou seja os valores e operações possíveis de serem utilizados com um dado desse tipo.767 de –2. Vejamos a sintaxe para criarmos uma variável do tipo string com tamanho limitado.2 e18 4. Um tipo de dados especifica as características.4 e38 de 5. excluindo-se qualquer número fracionário. tanto positivos como negativos.1 e4.483. números e símbolos especiais. 4. Sintaxe: variável : string[tamanho]. podendo armazenar de 1 até 255 caracteres. porém com uma pequena diferença: é usado para strings de apenas um caracter. Uma seqüência de caracteres. A linguagem Pascal fornece ao programador um conjunto de tipos de dados predefinidos.648 a 2.2 Tipos de Dados Reais O tipo de dado real permite trabalhar com números fracionários. Vejamos um exemplo do uso de strings: var Frase : string. este tipo de dado pode ser referenciado por um dos seguintes identificadores: Tipo de dado inteiro shortint integer longint byte word Tamanho(byte s) 1 byte 2 bytes 4 bytes 1 byte 2 bytes Faixa de abrangência de –128 até 127 de –32.

Confirma : boolean. Vejamos um exemplo da utilização do tipo de dado boolean: var Aprovado : boolean. Este tipo de dado também e chamado de tipo boleano. readln (B). separados por um espaço em branco ou a cada valor é pressionado ENTER. Exemplo: X5 ⇒ EXP (5 * LN (X)) X2 ⇒ SQR (X) variável ← expressão variável : = expressão. via teclado. C). B. 5 Comandos na Linguagem PASCAL As instruções em um PROGRAMA FONTE correspondem aos comandos e estruturas do algoritmo e obedecem a uma sintaxe própria com palavras reservadas que possuem um sentido pré-determinado para o compilador PASCAL. tornando mais agradável e fácil a interação do usuário com o programa é usado o comando de entrada antecedido do comando de saída com um texto explicativo. esse comando exibe o conteúdo da variável contida na posição de memória identificada os dados são introduzidos. OBS: expressão obedece às regras vistas. S). readln (A). 5. OBS: 1) para gerar telas mais amigáveis. Se for necessário executar uma potenciação é preciso usar uma combinação de funções embutidas.3) Comandos de saída: no algoritmo escreva lista de variáveis e/ou constantes writeln (lista de variáveis e/ou constantes). 5. Os 2 24 . lembrando que a linguagem PASCAL tem uma Biblioteca de funções embutidas e que não existe o operador potenciação. Ele é representado pelo identificador boolean. mudando de linha o que equivale a: na Linguagem PASCAL Exemplo: writeln (‘SOMA = ‘ .1)Comandos de atribuição: nos algoritmos na Linguagem PASCAL Exemplo: A:= 3. 5. readln (C). os dados com valores true (verdadeiro) e false (false).2) Comandos de entrada: no algoritmo leia lista de variáveis na Linguagem PASCAL readln (lista de variáveis). Exemplo: readln (A. por S antecedido da mensagem SOMA =.São caracterizados tipos lógicos.

fazem com que seja exibida a mensagem contida no comando write e que o cursor se posicione na mesma linha esperando a entrada da informação correspondente. readln(Z). readln(N). begin readln (X. write( ‘Digite o valor de Z ’ ). A forma é: write(‘comentário’). readln(Y). Exemplo: write(‘Digite o numero de dados’). write e readln. Z Necessita . Dados de Entrada { . Z) P  X*Y*Z escreva (PRODUTO =’ .1 nome para o produto P programa produto var X. program produto.1 nome de variável para cada valor X.Z. var X. OUTROS COMANDOS NO PASCAL: 1) TextBackGround Este procedimento seleciona a cor do fundo sobre o qual o texto será escrito.Y. Y.comandos.o produto destes valores .P:inteiro inicio ler (X. Y. end. P: integer.Z). writeln (‘Produto = ’ . write( ‘Digite o valor de Y ’ ).Y. P:=X*Y*Z. readln(X).3 valores Pede (processamento) { . Para uma tela mais amigável a etapa de entrada de dados deveria ser escrita da seguinte forma: write( ‘Digite o valor de X ’ ). Z. Y. Exemplo 1: Fazer o algoritmo e escrever o PROGRAMA FONTE que leia 3 números inteiros e imprima o seu produto.P) . readln(nome da variável ). P) fim. 25 .

esse comando permite posicionar o cursor em uma determinada posição da tela. 3. End. Writeln('teste'). 11. TextBackGround(Red). Tabela de cores 0. 4. 6. Begin ClrScr. 26 . 10. 1. Readln. 2. 14. Black Blue Green Cyan Red Magenta Brown LightGray DarkGray LightBlue LightGreen LightCyan LightRed LightMagenta Yellow White Blink Preto Azul Verde Ciano Vermelho Magenta Marrom Cinza-claro Cinza-escuro Azul-claro Verde-claro Ciano-claro Vermelho-claro Magenta-claro Amarelo Branco Piscante 3)Gotoxy . Uses CRT. Begin Clrscr. 2) TextColor Este procedimento permite selecionar a cor com que o texto será impresso. readln. 9. É preciso fornecer os 2 parâmetros que determinam a linha e a coluna da posição. linha). 8. writeln('teste'). TextColor(red).Sua sintaxe geral é: TextBackGround(cor). 13. Exemplo: Program Exemplo. End. 15. write('teste'). 7. TextColor(blue). 12. O gotoxy deve preceder o comando de saída e possui a seguinte forma geral: gotoxy(coluna. 16. Uses CRT. 5. Writeln('teste'). Nós podemos entrar com o número ou o nome da cor em inglês Exemplo: Program Exemplo. TextBackGround(white).

‘Nome é :’. write (‘Matrícula é ’. A coluna varia de 1 a 80. uses crt. gotoxy (5. readln.em que: gotoxy – palavra chave coluna – é o parâmetro que determina a coluna relacionada ao ponto onde deve ser exibida a próxima saída de dados. begin clrscr. 4) Delay ou Readkey.nome:string. linha – é o parâmetro que determina a linha relacionada ao ponto onde deve ser exibida a próxima saída de dados. writeln(‘Digite o nome do aluno’). writeln(‘Digite a matricula do aluno’). 27 . mat.nome). Sintaxe readkey.Suspende a execução do programa durante X milissegundos ou suspende a execução de um programa a partir de uma tecla pressionada. readln(nome). Sintaxe delay ( 10000 ) . Exemplo: program exemplo3. readln(mat ).10).12). end. var mat. gotoxy (5. A linha varia de 1 a 25.

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)//-->