O documento fornece uma introdução às linguagens de programação Pascal e C++, descrevendo suas principais características como: tipos de dados, variáveis, constantes, operadores, estrutura de programas, comandos, procedimentos e funções. O Pascal é apresentado de forma mais detalhada com exemplos de seus recursos, enquanto o C++ é introduzido com foco nos conceitos de orientação a objetos.
2. Introdução
A apresentação pretende mostrar de forma breve
uma introdução à estas duas linguagem de
programação, com o objetivo de destacar as
principais características e para que se tenha uma
base mínima das possibilidades de cada linguagem.
3. 1 Pascal
Ambiente
Tipos de Dados
Variáveis
Constantes
Operadores
Estrutura de um Programa
Comandos
Procedimentos e Funções
Biblioteca de Funções
5. 1.2 Tipos de Dados
Inteiros
Reais
Caracteres
Lógicos
6. 1.2.1 Tipos de Dados Inteiros
Tipo de Dado
Inteiro
Faixa de Abrangência
Shortint De –128
Até 127
Integer De –32.768
Até 32.767
Longint De –2.147.483.648
Até 2.147.483.647
Byte De 0
Até 255
Word De 0
Até 65.535
7. 1.2.2 Tipos de Dados Reais
Tipo de Dado
Real
Faixa de Abrangência
Real De 2,9 E-39
Até 1,7 E+38
Single De 1,5 E-45
Até 3,4 E+38
Double De 5,0 E-324
Até 1,7 E+308
Extended De 3,4 E-4.932
Até 1,1 E+4.932
Comp De –9,2 E+18
Até 9,2 E+18
8. 1.2.3 Tipos de Dados Caracteres
String: armazena de 1 a 255 caracteres
Char: armazena somente 1 caracter
9. 1.2.4 Tipo de Dado Lógico
Boolean: assume somente os valores True
(verdadeiro) e False (falso).
11. 1.3.1 Regras para Nomeação
Deve ser constituído por um ou mais caracteres
Só poderão ser utilizadas letras, números e o
underscore ( _ )
O primeiro caractere deverá ser uma letra
Não pode possuir espaços em branco
Não pode ser uma palavra reservada
12. 1.3.2 Declaração
Sintaxe:
Var
<nome 1> : <tipo 1>;
<nome 2> : <tipo 2>;
<nome N> : <tipo N>;
Exemplos:
Var
Nome : string;
Idade : integer;
Altura : real;
Var A, B, C : integer;
13. 1.3.3 Escopo
Global: quando declarada no início do do programa,
podendo ser utilizada por qualquer subrotina
subordinada
Local: quando declarada após as subrotinas, ou
dentro de uma subrotina
19. 1.7 Operadores Lógicos
Operador Lógica
Not Retorna o oposto do valor. Este é o único
operador unário.
And Retorna Verdadeiro somente se todos os
valores forem Verdadeiros
Or Retorna Falso somente se todos os
valores forem Falsos
Xor Retorna Verdadeiro se os valores forem
diferentes
20. 1.8 Estrutura de um Programa
Cabeçalho
Área de declarações
Corpo do programa
22. 1.8.2 Área de Declarações
Uses
Label
Const
Type
Var
Procedure
Function
23. 1.8.3 Corpo do Programa
Begin
<instrução 1>;
<instrução 2>;
<instrução N>;
End.
24. 1.9 Comandos de Entrada e Saída
Comandos de saída:
– Write
– Writeln
Comandos de entrada:
– Read
– Readln
25. 1.9.1 Write e Writeln
Sintaxe:
Write(<expressões>);
Writeln(<expressões>);
Exemplos:
Writeln(‘Saída em vídeo’);
Write(2001);
Writeln(‘Média igual a ‘, media);
28. 1.11 Desvio Condicional
Sintaxe Simples:
If <valor booleano> then
<instrução para valor=True>;
Exemplo:
If a>10 then
writeln (a, ‘ é maior que 10’);
Sintaxe Composta:
If <valor booleano> then
<instrução para valor=True>
else
<instrução para valor=True>;
38. 1.14 Construindo uma Biblioteca de Rotinas
Sintaxe:
Unit <nome>;
Interface
<declaração das rotinas>
implementation
<rotinas>
end.
39. 2 C++
Introdução à Orientação ao Objeto
Tipos de Dados
Variáveis
Constantes
Operadores
Estrutura de um Programa
Comandos
Procedimentos e Funções
Classes
40. 2.1 Introdução à Orientação ao Objeto
Combinar num único registro dados e funções
Uma classe é considerada um tipo de dado
Uma variável de um tipo de classe é chamada objeto
Definir uma classe não cria um objeto
As funções de um objeto são chamadas funções-
membro ou métodos
De modo geral, os métodos são o único meio de
acesso aos dados
41. 2.1.2 Encapsular e Esconder
Não podemos acessar variáveis de instância
diretamente
Isto previne alterações incidentais
Os campos de dados e suas funções estão
encapsulados numa única identidade
“Chamar uma função membro de um objeto” é o
mesmo que “enviar uma mensagem a um objeto”.
42. 2.1.3 Herança
Classes podem ser organizadas em hierarquias
As classes derivadas herdam as características da
classe base
Características
AB
Características
AB C D
Características
AB E F
Características
AB C F G
43. 2.2 Tipos de Dados
Tipo Bytes Escala
Char 1 -128 a 127
Int 2 -32.768 a 32.767
Float 4 3,4E-38 a 3,4E+38
Double 8 1,7E-308 a 1,7E+308
Void 0 Nenhum valor
44. 2.2 Tipos de Dados
Tipo Bytes Escala
Unsigned char 1 0 a 255
Unsigned 2 0 a 65.535
Short 2 -32.768 a 32.767
Long 4 -2.147.483.648 a 2.147.483.647
Unsigned long 4 0 a 4.294.967.295
Long double 10 3,4E-4932 a 1,1E+4932
46. 2.3.1 Regras para Nomeação
É permitido nome para variáveis com até 32
caracteres.
Caso haja mais caracteres que isso eles serão
ignorados.
O nome pode conter letras maiúsculas e minúsculas,
dígitos e sublinhado (underscore)
Obrigatoriamente o primeiro caracter deve ser uma
letra ou um sublinhado
Letras maiúsculas e minúsculas são diferentes
Não pode ser o nome de uma palavra reservada do
C++.
48. 2.3.3 Operador de Atribuição
Sintaxe:
<variável>=<expressão>;
Exemplos:
X=2000;
total=10+20+30;
Atribuição Múltipla:
Y=X=3;
equivale a
Y=(X=3);
49. 2.4 Constantes
2.4.1 Constantes Numéricas
Base Representação
Decimal Escrevemos um número em decimal de
forma pura e simples, como aquela que
estamos acostumados. Ex.: 20, 280, 88
Hexadecimal Os números na base 16 devem ser
precedidos de 0x. Ex.: 0x41, 0x1afb, 0x54c2
Octal Os números escritos na base 8 devem ser
precedidos de um zero. Ex.: 041, 010, 0754.
50. 2.4 Constantes
2.Cadeia de Caracteres Constante: deve ser
representada entre aspas. Exemplo:
“Primeiro Programa”
“Linguagem C++”
3. O Qualificador const
Const char bip=’a’;
Const double pi=3.141592;
52. 2.5.1 Operadores Aritméticos Básicos
Símbolo Operação
+ Adição
- Subtração
* Multiplicação
/ Divisão
% Resto da divisão inteira
- Multiplicação por –1 ex.: X = -5
53. 2.5.2 Operadores de Incremento e Decremento
Exemplos:
X = X + 1; // adiciona 1 a X
++X; // adiciona 1 a X
X++; // adiciona 1 a X
X = X – 1; // subtrai 1 de X
-- X; // subtrai 1 de X
X --; // subtrai 1 de X
54. 2.5.2 Operadores de Incremento e Decremento
Diferença de Sintaxe:
N = 5;
X = ++N;
O resultado dessas operações é N=6 e X=6.
N = 5;
X = N++;
O resultado é N=6 e X=5.
55. 2.5.3 Operadores Aritméticos de Atribuição
Operador Aritmético de
Atribuição
Expressão Equivalente
A + = 2; A = A + 2;
B * = Y + 1; B = B * (Y + 1);
C / = 2.5; C = C / 2.5;
D % = 5; D = D % 5;
E - = 3; E = E - 3;
59. 2.8 Estrutura de um Programa
Forma geral das funções C++
O Primeiro Programa
60. 2.8 Estrutura de um Programa
Forma geral das funções C++
<tipo> <nome> (<parâmetros> )
{
<instrução 1>;
<instrução 2>;
<instrução N>;
}
61. 2.8 Estrutura de um Programa
O Primeiro Programa
#include <iostream.h>
void main( )
{
cout << “Primeiro Programa”;
}
62. 2.9 Comandos de Entrada e Saída
Imprimindo usando cout e o operador de inserção:
#include <iostream.h>
void main()
{
cout << “Vênus está a “ << 67 <<
“milhões de milhas” << ‘n’ << “do
sol”;
}
63. 2.9 Comandos de Entrada e Saída
2.9.2 Lendo com cin e o operador de extração:
#include <iostream.h>
void main ()
{
cout << “nDigite a sua idade em
anos: “;
int anos;
cin >> anos;
cout << “nA sua idade em dias é: “
<< (anos * 365);
}
64. 2.10 Comentários
// termina com o fim da linha
X = X * 0.5; // X é reduzido à metade
/* um dos tipos de comentários em C++
permite o uso de múltiplas linhas. */
65. 2.11 Desvio Condicional
Sintaxe Simples:
If (<expressão de teste>)
<Instrução>;
If (<expressão de teste>)
{
<Instrução 1>;
<Instrução 2>;
<Instrução N>;
}
66. 2.11 Desvio Condicional
Sintaxe Composta:
If (<expressão de teste>)
<Instrução>;
Else
<Instrução>;
Exemplo:
If (a>5)
cout << a << “ é maior que 5”;
else
cout << a << “ é menor que 6”;
67. 2.12 Procedimentos e Funções
#include <iostream.h>
int celsius (int fahr)
{
int c;
c=(fahr –32)* 5/9;
return c;
}
void main()
{
int c, f;
cout << “nDigite a temperatura em
Fahrenheit: “;
cin >> f;
c = celsius( f ); // chamada à função
cout << “nCelsius = “ << c;
}
68. 2.13 Classes
Sintaxe:
class <nome> {
<variáveis privadas>
<protótipo das funções privadas>
public:
<variáveis públicas>
<protótipos das funções públicas>
};
<implementação das funções>
69. 2.13 Classes
#include <iostream.h>
class animal {
public:
void comer(void);
void dormir(void);
void respirar(void);
};
class elefante : public animal {
public:
void trompete(void);
void esguicho(void);
};
72. Conclusão
Pascal é a linguagem ideal para programadores
iniciantes, pelos conceitos e comandos simples.
C++ é uma linguagem mais poderosa, por
implementar a orientação ao objeto e manter as
características de “médio nível” herdadas do C.
C++ é indicado para programadores com alguma
experiência e compreensão da orientação ao objeto.