Vous êtes sur la page 1sur 33

Bacharelado em Sistemas de Informao

UFRPE

Introduo Programao
Tema 4 Conceitos Bsicos sobre Construo de Algoritmos
Por: Prof. Robson Fidalgo

Introduo Programao - Prof. Robson Fidalgo

Contedo
UFRPE

Sintaxe e Semntica

Instrues Primitivas

Entrada Sada

Estrutura seqencial

Incio/Fim

Dicas para escrever bons algoritmos

Introduo Programao - Prof. Robson Fidalgo

Contextualizao
UFRPE

Abrangncia

Apresentar os conceitos bsicos construo de algoritmos estruturados.

relacionados

Importncia

Os conceitos apresentados formam a parte bsica de qualquer algoritmo.

Introduo Programao - Prof. Robson Fidalgo

Objetivos
UFRPE

Contextualizar sintaxe e semntica em programao. Introduzir e exemplificar as instrues primitivas de entrada e sada de dados. Apresentar e ilustrar a estrutura de seqncia incio/fim.

Discutir diretrizes para escrever bons algoritmos.

Introduo Programao - Prof. Robson Fidalgo

Iniciando . . .
UFRPE

Introduo Programao - Prof. Robson Fidalgo

Sintaxe e Semntica
UFRPE

O que Sintaxe e Semntica?

Introduo Programao - Prof. Robson Fidalgo

Sintaxe e Semntica
UFRPE

Sintaxe diz respeito forma como as instrues devem ser escritas.

Conjunto de regras formais que especificam a composio dos algoritmos a partir de letras, dgitos e outros smbolos.

A violao da sintaxe de uma instruo impede que o algoritmo seja executado!

Introduo Programao - Prof. Robson Fidalgo

Sintaxe e Semntica
UFRPE

Semntica diz respeito ao significado lgico das instrues que sero executadas pelo computador.

Conjunto de regras que especificam o significado de qualquer programa, sintaticamente vlido.

A violao da semntica de um algoritmo no


impede que ele seja executado. Todavia, ele

processar um resultado errado!


Introduo Programao - Prof. Robson Fidalgo 8

Sintaxe e Semntica
UFRPE

Exemplo de erro sinttico:


Inteiro : mdia; mdia 25/5 {pois toda diviso retorna um no Real} mdia >= 7 {pois no se pode comparar tipos diferentes}

Exemplo de erro semntico:


Real : mdia; Se (mdia >= 7) ento

Escreva (REPROVADO);
Escreva (APROVADO);

Seno

Sintaticamente a estrutura SE-Ento-Seno est correta, mas semanticamente, NO.


9

Introduo Programao - Prof. Robson Fidalgo

Sintaxe e Semntica
UFRPE

Os erros sintticos so identificados pelos tradutores, enquanto que os erros semnticos no o so. Por isso que os erros semnticos exigem mais ateno para corrigi-los.
Introduo Programao - Prof. Robson Fidalgo 10

Instrues Primitivas
UFRPE

So os instrues bsicas que efetuam tarefas essenciais para o recebimento e apresentao de dados. Estas so:

entrada; sada.

Introduo Programao - Prof. Robson Fidalgo

11

Instrues Primitivas
UFRPE

A instruo de entrada de dados permite que informaes dos usurios sejam transferidas para a memria do computador (variveis). Sua sintaxe pode ser:

Leia (var1);

Ex: Leia (nome); Ex: Leia (nome, sexo)

Leia (var1, ..., varN);

A semntica: os dados so fornecidos ao computador por meio de um dispositivo de entrada (ex: teclado e mouse ) e armazenados nas posies de memria das variveis.

Introduo Programao - Prof. Robson Fidalgo

12

Instrues Primitivas
UFRPE

Ex:

Algoritmo ExemploInstruoEntrada Real: preoUnit, preoTot; Incio Inteiro: qtd ; Incio preoUnit, qtd Leia(preoUnit, qtd); preoTot preoUnit * qtd; preoTot Fim.
Fim

qtd * preoUnit

Introduo Programao - Prof. Robson Fidalgo

13

Instrues Primitivas
UFRPE

Note I
Quando uma varivel declarada, esta apenas reserva uma posio na RAM. Ou seja, o contedo dessa posio vazio. Assim, a cada varivel criada deve-se ler ou atribuir um valor a ela.
Introduo Programao - Prof. Robson Fidalgo 14

Instrues Primitivas
UFRPE

Note II
Diferente do operador , que s atribui valores pr-definidos, a instruo LEIA permite qualquer entrada de dados vlida. Ou seja, os valores das variveis no so mais fixos.
Introduo Programao - Prof. Robson Fidalgo 15

Instrues Primitivas
UFRPE

A instruo de sada de dados o meio pelo qual variveis, constantes e expresses tm seus dados exibidos pelos dispositivos de sada de um computador (ex: vdeo e impressora). Sua sintaxe pode ser:

Escreva (var1);

Ex: Escreva (salrio);


Ex: Escreva (nome, endereo, cidade); Ex: Escreva (Aula de programao); Ex: Escreva (nome e CPF = ,nome, cpf, fone = ,fone);
16

Escreva (Var1, ..., varN);

Escreva (texto);

Escreva (texto, var1, ..., varN,texto,var1, ..., varN );

Introduo Programao - Prof. Robson Fidalgo

Instrues Primitivas
UFRPE

Usa-se , (vrgula) para concatenar (juntar) o valor de uma varivel com um texto explicativo. Exemplo: mdia 15/2; Escreva (Mdia = ,mdia); Mdia = 7,5
Introduo Programao - Prof. Robson Fidalgo 17

Ateno:

Instrues Primitivas
UFRPE

Semntica da instruo escreva:

Enviar seus argumentos para um dispositivo de sada.

No caso de uma lista de variveis, o contedo de cada uma delas pesquisado na memria e enviado para um dispositivo de sada.

No caso de argumentos constantes (ex: texto), estes so enviados diretamente para o dispositivo de sada.

Introduo Programao - Prof. Robson Fidalgo

18

Instrues Primitivas
UFRPE

Ex:

Algoritmo ExemploInstruesEntradaSada Real : preoUnit, preoTot; Incio Inteiro : qtd; Incio preoUnit, qtd Leia(preoUnit, qtd); preoTot preoUnit * qtd; preoTot Escreva(preoTot); qtd * preoUnit Fim.
preoTot
Fim

Introduo Programao - Prof. Robson Fidalgo

19

Instrues Primitivas
UFRPE

Note III
Incio Leia(preoUnit, qtd); preoTot preoUnit * qtd; Escreva(preoTot); Fim
Introduo Programao - Prof. Robson Fidalgo 20

Instrues Primitivas
UFRPE

Duas regras bsicas para melhorar nossos algoritmos :

Toda operao de leitura deve antes enviar uma mensagem ao usurio informando que dados ele deve entrar. Todo resultado enviado ao usurio deve ser precedido de uma mensagem explicativa.

Introduo Programao - Prof. Robson Fidalgo

21

Instrues Primitivas
UFRPE

Algoritmo ExemploInstruesEntradaSada Real : preoUnit, preoTot;


Incio
informe preo unitrio informe preo Unitrio e QTD e quantidade preoUnit , qtd pre oTot := pre oTot qtd * pre oUnit pre oUnit Preo total =+ =, preoTot Fim

Inteiro : qtd;
Incio Escreva(informe preo unitrio e quantidade);

Leia(preoUnit, qtd);
preoTot preoUnit * qtd; Escrever(Preo total = , preoTot);

Fim.

Introduo Programao - Prof. Robson Fidalgo

22

Estrutura de seqncia
UFRPE

Na estrutura de seqncia os comandos de um algoritmo so executados na ordem em que aparecem. Uma estrutura de seqncia delimitada pelas palavrasreservadas Incio e Fim e contm basicamente comandos de atribuio, de entrada e de sada. Todos os algoritmos vistos at agora utilizam uma nica estrutura seqencial (Incio-Fim).

Introduo Programao - Prof. Robson Fidalgo

23

10 Dicas para escrever bons algoritmos


UFRPE

Dica Geral: Todo algoritmo deve ser feito visando a sua eficincia, clareza e manuteno. Dicas especficas: 1 Pense de forma incremental (Tc. de refinamentos sucessivos) e detalhada no problema a ser resolvido.

Quais so os dados de entrada? Como estes dados devem ser processados? Quais so os dados de sada?

2 Faa o algoritmo to simples quanto possvel. Isto facilita:


A leitura do algoritmo por outras pessoas. A correo de erros quando estes existem.
24

Introduo Programao - Prof. Robson Fidalgo

10 Dicas para escrever bons algoritmos


UFRPE

3 - Escreva comentrios claros e objetivos no momento em que estiver escrevendo o algoritmo. Isto tambm facilita o entendimento do mesmo.

Comentrios podem ocorrer em qualquer parte do algoritmo e devem estar entre chaves.

Ex: {isso um comentrio}.

Os comentrios devero acrescentar alguma coisa, no apenas frasear as instrues.


Instrues dizem o que est sendo feito. Comentrios dizem o porqu de estar sendo feito. EX: lucro venda custo; {Atribui a lucro o valor de venda menos o valor de custo} {Calcula o lucro obtido}
25

Introduo Programao - Prof. Robson Fidalgo

10 Dicas para escrever bons algoritmos


UFRPE

4 - Use comentrios no incio do algoritmo. Estes podem ser: a descrio do que o algoritmo faz; como utiliz-lo; qual o significado das variveis mais importantes; as estruturas de dados e mtodos especiais utilizados; o autor; a data de escrita.
Algoritimo Soma {esse algoritmo soma as variveis num1 e num2. Autor: Meu Nome; Data: 99/99/9999} Inteiro : num1,num2,soma; Incio Escreva (Digite dois nmeros inteiros) Leia(num1, num2); soma num1 + num2; Escreva(A soma :,soma); Fim

Introduo Programao - Prof. Robson Fidalgo

26

10 Dicas para escrever bons algoritmos


UFRPE

5 - Escolha nomes de variveis que sejam significativos.


Ex: lucro preoVenda preoCusto;

6 - Utilize espaos e/ou linhas em branco para melhorar a legibilidade do algoritmo. 7 - Utilize parnteses para aumentar a legibilidade e prevenir erros.

Exemplos:
sem parnteses 5>7e3=5 com parnteses extras (5>7) e (3=5)

8 Escreva apenas um comando por linha. Isto tambm facilita a legibilidade do algoritmo.

Introduo Programao - Prof. Robson Fidalgo

27

10 Dicas para escrever bons algoritmos


UFRPE

9 - Procure alinhar os comandos de acordo com o nvel a que pertenam, isto , destaque a estrutura na qual esto contidos. Este alinhamento chamado de identao.

Exemplo genrico: Incio comando do algoritmo no nvel 1; subcomando dentro do nvel 2; subcomando dentro do nvel 3; comando do algoritmo no nvel 1 Incio subcomando dentro do nvel 2; subcomando dentro do nvel 2; Fim Fim
28

Introduo Programao - Prof. Robson Fidalgo

10 Dicas para escrever bons algoritmos


UFRPE

10 - Toda vez que for feita uma modificao no algoritmo, os comentrios associados devem ser alterados. prefervel no comentar do que deixar um comentrio errado.

Agora s exercitar!

Introduo Programao - Prof. Robson Fidalgo

29

Atividade 1 - Faa um algoritmo que:


UFRPE

1) leia nome, idade e salrio de um funcionrio e exiba os mesmos dados, devendo ser o salrio reajustado em 12%. 2) leia a base e a altura de um tringulo. Em seguida, escreva a rea do mesmo. BASE ALTURA
REA 2

3) leia uma temperatura em Fahrenheit e exiba o equivalente em Celsius. 5

F 32

4) leia 2 notas, calcule e exiba a mdia ponderada dessas notas. Considere nota1= peso 6 e nota2= peso 4.

Introduo Programao - Prof. Robson Fidalgo

30

Atividade 1 - Faa um algoritmo que:


UFRPE

5) transforme de um valor em dlar para reais. 6) leia o nome, nmero de horas trabalhadas e nmero de dependentes de um funcionrio. Aps a leitura, escreva qual o nome, salrio bruto, os valores descontados para cada tipo de imposto e, finalmente, qual o salrio lquido do funcionrio, considerando que:
a) A empresa paga $12 por hora e $40 por dependentes. b) Sobre o salrio so descontados 8,5% p/ o INSS e 5% p/ IR.

7) leia uma distncia em km, o preo da gasolina em reais e exiba quantos litros de gasolina o carro ir consumir e quanto ser gasto em reais. Considere que o carro faz 12 km/l de gasolina.
Introduo Programao - Prof. Robson Fidalgo 31

Atividade 1 - Faa um algoritmo que:


UFRPE

8) leia o preo de fbrica de um automvel e exiba seu preo final. Considere que o preo final igual ao preo de fbrica mais o preo dos impostos (45% do preo de fbrica), mais a percentagem do revendedor (28% do preo de fbrica).

9) leia um valor inteiro em segundos e, depois de convert-lo, mostre-o no formato hh:mm:ss. 10) leia as variveis inteiras n1 e n2 e troque o valor destas variveis. Isto , n1 deve ficar com o valor de n2 e n2 deve ficar com o valor de n1.
32

Introduo Programao - Prof. Robson Fidalgo

Bacharelado em Sistemas de Informao


UFRPE

Introduo Programao - Prof. Robson Fidalgo

33

Vous aimerez peut-être aussi