Disciplina Programação Prof. Esp. Armando Hage Programação em Turbo Pascal
Introdução A linguagem de programação pascal foi escrita por Niklaus Wirth entre 1969 e 1971, e deriva das linguagens ALGOL-60 que por sua vez, gerou ALGOL-69, que são muitos complexas e extensas. Do Pascal derivam as linguagens Modula-2, Ada, Object Pascal, Turbo Pascal entre outras.
Conhecendo a Ferramenta Os principais itens do primeiro menu são: New: Cria um novo arquivo Open: Abre um código fonte de existente Save e Save as...: Servem respectivamente para salva e salvar com outro nome Print: Imprime o código Printer setup: Mostra as configurações da impressora Dos shell: Abre o MS-DOS Exit: Sai do Turbo Pascal
Conhecendo a Ferramenta O mais importante deste menu é o comando Undo, que serve para desfazer a ultima ação executada
Conhecendo a Ferramenta Run:Compila e Roda o programa ao mesmo tempo Sempre usado para testar e verificar se seu programa pascal está correto
Conhecendo a Ferramenta Compilar: Usado somente para compilara seu programa fonte, verificando possíveis erros.
Conhecendo a Ferramenta Messages: Exibe uma caixa de mensagens na inferior do vídeo, onde são mostradas todas as mensagens e linhas de erros
Conhecendo a Ferramenta Editor de textos do Pascal, é nele que serão digitados os códigos de programas
Comandos Básicos Tipo de dado real Tipos de Variáveis Faixa de abrangência Real 2,9 E-39 a 1,7 E+38 Single 1,5 E-45 a 3,4 E+38 Double 5,0 E-324 a 1,7 E+308 Extended 3,4 E-4.932 a 1,1 E+4.932 Comp -9,2 E+18 a 9,2 E+18
Tipo de dado inteiro Comandos Básicos Tipos de Variáveis Shortint -128 a 127 Faixa de abrangência Integer -32.768 a 32.767 Longint -2.147.483.648 a 2.147.483.647 Byte 0 a 255 Word 0 a 65.535
Comandos Básicos Tipos de Variáveis Boolean : Armazena somente os valores verdadeiros (True) ou falso (False). Char : Armazena um único caracter (letras, dígitos ou caracter especiais, como uma tecla por exemplo) String : Pode armazenar uma seqüência de letras, dígitos e caracteres especiais, desde que tenham tamanho máximo de 255 caracteres.
Palavras Reservadas As palavras reservadas do Turbo Pascal são palavras que fazem parte da sua estrutura e têm significados pré- determinados. Elas não podem ser redefinidas e não podem ser utilizadas como identificadores de variáveis, procedures, functions etc.
Palavras Reservadas absolute and array begin case const div do downto else end external file for forward function goto if in inline label mod nil not of or packed procedure program record repeat set shl shr string then to type until var while with xor
Entrada e Saída de Dados Write ou WriteLn : escreve algo num dispositivo de saída, se o dispositivo não for especificado o default será a tela do micro. writeln('isto é uma string e sairá na tela'); Podemos enviar dados para a impressora através das procedures Write e Writeln. Para tanto, devemos colocar, antes dos parâmetros a serem enviados à impressora, o nome lógico LST. Read ou ReadLn : Permite a entrada de dados via teclado. write('digite um valor para X: )' read(x);
Operadores Aritméticos + adição - subtração * multiplicação / divisão entre números reais DIV divisão entre números inteiros MOD resto da divisão
Operadores Lógicos AND OR XOR NOT E lógico OU lógico OU EXCLUSIVO lógico Não lógico
Operadores Relacionais O Turbo Pascal possui ao todo 7 operadores relacionais que são muito utilizados nas tomadas de decisões, são eles: = igual <> diferente > maior que < menor que >= maior ou igual que <= menor ou igual que IN um conjunto testa se um elemento está incluso em
Propriedades de Tela O monitor tem a medida de 80 (altura) x 25 (largura) e é expresso por X,Y. A cor padrão das letras são : Letra cinza clara e fundo preto. GOTOXY(X,Y) - Este comando faz com que o cursor vá para o local desejado, de coordenadas X e Y, um exemplo é : Gotoxy(12,5).. Após este comando o cursor vai para o local especificado e (se quiser) escreve algo lá! TEXTCOLOR(cor cor), TEXTBACKGROUND(cor cor) - Com estes dois comandos é possível mudar a cor do texto e do fundo respectivamente. A cor pode ser especificada em número ou com o nome.
Corpo de um pr ograma em Pasc al A área de declarações é subdividida em seis sub-áreas. - Label - Const - Type - Var - Procedures - Functions
Label Serve como um rotulo dentro de um código fonte.pode-se atribuir qualquer nome, e quando invocado pelo comando GOTO(Nome_Label) voltará para aquela marcação. Uses Crt; Label Nome1, Nome2,...;... Devemos declarar todos os labels que forem utilizados no corpo do programa. Os labels são utilizados em conjunto com a instrução goto.
Labels e Goto A instrução Goto permite desviar a seqüência de execução do programa para um determinado Label pré-definido. Para utilizarmos algum Label,, ele deve, obrigatoriamente, ser declarado na subárea Label. Uses CRT;... Label Inicio; Var x,y,z : Integer; tecla : Char; Begin Inicio: ClrScr; If ((Tecla = 'S') OR (Tecla = 's')) Then Goto Inicio; End.
Estrutura Condicional As estruturas condicionais impõem uma condição para que uma tarefa seja realizada. - Condição IF.. Then.. Else (Se.. Então.. Senão); - Se a condição for satisfeita e não executa um bloco de tarefas senão executa outra tarefa ou cai fora da estrutura. If <condição> Then <bloco>; OU If <Condição> Then <bloco> Else <bloco>;
Estrutura Condicional - Instrução CASE; O comando CASE é um seletor de opções, executando a opção que for igual à expressão. Ex.: CASE <expressão> Of Else END; 1:bloco; 2:bloco; 3:bloco; bloco;
Estrutura de Repetição Uma estrutura de repetição repete um bloco até que a condição seja satisfeita. FOR For <variavel> := <valor inicial> to/downto <valor final> do <comando>; FOR X:=1 to 10 do Begin <Bloco> { O bloco será repetido até que x tenha o valor 10} end;
Exemplo Program Exemplo_1; Uses CRT; Var i : Integer; Begin ClrScr; For i:=10 to 15 do Writeln(i); (* para i igual a 10 até 15 faça escreva i *) End. Program Exemplo_2; Uses CRT; Var i : Integer; Begin ClrScr; For i:=10 downto 1 do Writeln(i); End.
Estrutura de Repetição WHILE While <condição> Do Enquanto a condição não for satisfeita faça REPEAT Repeat Comando_1; Comando_2; Comando_3;... Until (expressão_lógica); Repete ATÉ a condição ser satisfeita.
Exemplos Program Exemplo_1; Uses CRT; {Programa exemplo para mostrar o funcionamento da estrutura Repeat Until} Var i : Integer; Begin ClrScr; i:=1; Repeat Writeln(i); i:=i+1; Until i=10; End.
Exemplo Program Exemplo_1; Uses CRT; {Programa exemplo que escreve na tela de 0 até 10} Var i : Integer; Begin ClrScr; i:=0; While (I < 11) Do Begin Writeln(i); i:=i+1; End End.
Equivalência de Comandos de Laço Tr ês m anei ras de contar de 1 a 5 va r I :lon gint ; b eg in wr ite ln( 'fo r:' ); f or I: =1 to 5 do be gi n {co man do s} wr ite ln( I) ; end ; writel n( 're pe at:' ); I:= 1; re pea t {Comand os } Writel n(i ); I: =I+ 1; un til I>5 ; writel n( 'while :' ); I:= 0; while I<5 do be gin inc (I) ; {Com and os} Writel n(i ); en d en d.
Exercícios Básicos Faça um programa para ler as seguintes informações de uma pessoa: Nome, Idade, Sexo, Peso, Altura, Profissão, Rua, Bairro, Cidade, Estado, CEP, Telefone. Faça um programa para identificar o maior entre três números digitados. Faça um programa para ler a base e a altura de um triângulo. Em seguida, escreva a área do mesmo. Obs.: Área = ( Base * Altura ) / 2 Faça um programa que leia os coeficientes de uma equação do segundo grau e calcule suas raízes. O programa deve mostrar, quando possível o valor das raízes calculadas, o valor do delta e a classificação das raízes ( RAÍZES IMAGINÁRIAS, RAIZ ÚNICA, RAÍZES DISTINTAS ).
O preço de um automóvel é calculado pela soma do preço de fabrica com o preço dos impostos (45%( do preço de fabrica) ) e a percentagem do revendedor (28%( do preço). Faça um programa em pascal que leia o nome do automóvel e o preço de fabrica e mostre na tela o nome do automóvel e o preço final. Obs: Imposto=Preço de Fábrica X (0,45 + 0,28) Preço final= Preço de fábrica + imposto O departamento de trânsito do estado anotou dados de acidentes de transito no ultimo ano. Para cada motorista envolvido no acidente, tem-se a seguinte informação: Ano de nascimento/ Sexo (M-masculino, F- feminino) / Procedência (0-Capital, 1-Interior, 2-Outro Estado) Faça um programa que: a) Calcule quantos motoristas tem menos de 21 anos; b) Quantas mulheres são da capital e quantas são do interior; c) Calcule quantos motoristas do interior do estado tem idade maior que 60 anos; d) Diga quantas mulheres de outro estado tem idade maior que 60 anos.
Bibliografia CARROL, D. Programação em Turbo PASCAL. São Paulo: McGraw-Hill,1988. GHEZZI, C., JAZAYERI, M. Conceitos de linguagens de programação. Rio de Janeiro: Campus, 1988. RINALDI, R. Turbo PASCAL 7.0: comandos e funções. São Paulo: Érica, 1993. VILLAS, M. V., VILLASBOAS, L. F. Programação: conceitos, técnicas e linguagens. Rio de Janeiro: Campus, 1988.