Escolar Documentos
Profissional Documentos
Cultura Documentos
LINGUAGEM
é uma forma de comunicação, que utiliza
símbolos e determinadas regras para os
combinar.
Aplicações Informáticas
API Unidade I – Introdução à Programação
LINGUAGEM DE PROGRAMAÇÃO
Aplicações Informáticas
API Unidade I – Introdução à Programação
ALGORITMIA e PSEUDOCÓDIGO
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Fluxogramas – Símbolos (mais utilizados)
Símbolos Significado Exemplo
Inicio/Fim Inicio
Decisão V
X>5
F
Processamento/Operação X Y+1
Selecção Múltipla
Conector
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas
API Unidade I – Introdução à Programação
Tipos de dados
Alfanuméricos – strings ou cadeias de caracteres –
possuem comprimento fixo ou variável (máximo 32767
caracteres)
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Operações elementares
Atribuição – consiste em atribuir a uma variável um valor que pode
ser uma constante ou uma expressão – armazena um valor (numérico
ou não numa variável)
algoritmia
a = 24 a ← 24
a = maria a ← maria
a = 2 * (a + 1) ou a ← 2 * (a + 1)
a = 34 + (2,5 * (23 – 10))-1 a ← 34 + (2,5 * (23 – 10))-1
a = 2,8 – c * (45 + d – (r/6)) ^ b a ← 2,8 – c * (45 + d – (r/6)) ^ b
Entrada
Leitura de valores LER (a,b,c)
Saída
ESCREVER (a,b,c)
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
OPERADORES
Aritméticos
Relacionais
Lógicos
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Aritméticos
Operador Significado
+ Adição
- Subtracção
* Multiplicação
/ Divisão
^ Exponenciação
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Relacionais
Operador Relação Expressão
= Igual A=B
Aplicações Informáticas
Aplicações Informáticas
API Unidade I – Introdução à Programação
Lógicos
Operador Significado
NOT Negação
Aplicações Informáticas
Aplicações Informáticas
API Unidade I – Introdução à Programação
Funcionais
chamam uma função predeterminada para que ela se execute sobre um
dado operando produzindo um resultado
Trigonométricos (COS, SIN…)
Logaritmos(LOG)
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Comparação
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Variáveis
Variável - Consiste num nome que se atribui a um objecto
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
EXPRESSÕES
são operações ou conjuntos de operações executadas sobre dados ou variáveis
Ex:
2,8 – c * (45 + d – (r / 6)) ^ b
Identifique as variáveis?
Identifique os operadores?
Qual o resultado?
Ex1:
“manuel” > “maria”
Identifique as variáveis?
Identifique os operadores?
Qual o resultado?
Aplicações
AplicaçõesInformáticas
Informáticas
API
Aplicações
Unidade IInformáticas
– Introdução à ProgramaçãoB
• ( ) 1000 ( ) –456
• ( ) “0” ( ) “Cinco”
• ( ) “-900” ( ) “-9.12”
• ( ) true ( ) –99.8
• ( )V ( ) falso
( ) 678
( ) 1.56
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas
Variáveis – Identificadores (critérios)
B
• O primeiro caracter é sempre uma letra. Os caracteres com ç, ã, é, ... Não são
válidos.
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Variáveis – Operação de atribuição
• Forma de especificar que uma variável terá um determinado
valor. Esta operação é representada em algoritmia pelo sinal =
.
• X=33 significa que a variável X possui a partir deste momento
o valor 33.
Se à variável X tivesse anteriormente sido 33
atribuído outro valor, ele era destruído
aquando da atribuição do valor 25, isto é,
uma operação de atribuição destrói um
eventual valor que essa variável tivesse Caixa = 33
armazenado anteriormente
Aplicações
API BInformáticas
-12ºano 20
API
Aplicaçõesv
Unidade I –Informáticas
Introdução à Programação B
Exercício – Atribuição
Determine o valor de saída dos algoritmos. Considere os
seguintes valores: A = 2, B = 3, C = 5 e D = 9.
33+2
Caixa =33+2
Aplicações
API BInformáticas
-12ºano 22
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Expressões
• 2ab+3c têm de ser sujeitas a alterações, de modo a poderem ser
entendidas pelo computador e utilizadas em programação. Deste modo
deverá ser escrito na forma
Expressões
• 2*a*b+3*c Uso comum Em programação
3ab 3*a*b
2(a+b) 2*(a+b)
2x-y 2*x-y
(-4*a*c)/2*b
Aplicações Informáticas
API
Aplicações
Unidade IInformáticas
– Introdução à ProgramaçãoB
Exercício – Expressões
• Crie o algoritmo formal:
– Verifique quem é o mais novo de 2 irmãos;
Aplicações Informáticas
API
Aplicações
Unidade IInformáticas
– Introdução à ProgramaçãoB
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Fluxogramas – Símbolos (mais utilizados)
Exemplo:
Aplicações Informáticas
API
Aplicações
Unidade IInformáticas
– Introdução à ProgramaçãoB
Área de um rectângulo.
Área de um triângulo.
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Pseudocódigo - Exemplo
• Calcular a área de um rectângulo A=C*L
Fluxograma
Narrativa Descritiva
Inicio
1. Obter os valores do
Ler (Comp, Larg)
comprimento e da largura;
Área Comp*Larg
2. Calcular a
área = comprimento x largura.
Escrever (Area)
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Pseudocódigo - Exemplo
• Calcular a área de um rectângulo A=C*L
Pseudocódigo
Ax+B=0
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Pseudocódigo - Desafio
• Calcular o 0 da equação Ax+B=0
Narrativa Descritiva
1. Início de programa
2. Obter a, b
3. se a é diferente de 0 então
calcula o valor de x (ax+b=0)
imprimir valor de x
senão
imprimir “Não há zero”
4. Fim de programa
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Pseudocódigo - Desafio
• Calcular o 0 da equação Fluxograma
S
X= -b/a
Escrevero valor
de X Fim
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações
Pseudocódigo Informáticas
- Exemplo B
• Calcular o 0 da equação
Pseudócodigo
Algoritmo Calculo_o_Valor_X
Variaveis a, b, x:reais
Inicio
Escrever (“Digite o valor de a e b:”)
Ler (a, b)
Se a≠0 então
x=-b/a
Escrever (“O valor de x é “,x)
Senão
Escrever(“Não há zero”)
Fim de Se
. Fim
Aplicações Informáticas
API
Aplicações
Unidade IInformáticas
– Introdução à ProgramaçãoB
Exercício – Pseudocódigo
Mostrar no ecrã uma frase escrita pelo utilizador.
Calcular e imprimir o dobro e o quadrado de um valor
introduzido pelo utilizador.
Calcule o valor do perímetro de uma circunferência a
partir da introdução do raio
Calcule as raízes reais de uma equação de 2º grau.
• Equação: ax² + bx + c =0
• Raízes: 2 * * R
Verificar se a classificação de um teste (digitado) é
positivo ou negativo.
b b 2 4ac
x
2a
Aplicações Informáticas
API
Aplicações
Unidade IInformáticas
– Introdução à ProgramaçãoB
Represente o algoritmo em
fluxograma e pseudocódigo
Aplicações Informáticas
API Unidade I – Introdução à Programação
Traçagem
realização de uma simulação sobre o algoritmo, de modo a verificar se efectua a resolução do problema proposto.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Traçagem de algoritmos
• Como verificar se o algoritmo faz o que realmente se pretende?
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Traçagem de algoritmos - Exemplo
• Algoritmo Soma de dois números
– Dados para teste: X=56, Y=33
Inicio
1. [Declaração e Inicialização de
Passos X Y Soma Saída
Variáveis]
X, Y, Soma: real Passo 1 0 0
Soma0
Passo 2 56 33
2. [Leitura de variáveis]
LEIA (X) Passo 3 89
LEIA (Y)
Passo 4 A soma de
3 [Processamento - cálculo da
56 com
soma]
33 é 89
SOMA ← X + Y
4. [Apresentação de Resultados] Passo 5 Fim
ESCREVA (“A soma de “ X, “com “ Y
“é “ SOMA)
Fim
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Exercício – Traçagem
• Construa um algoritmo que indique qual
o maior e menor de 2 números
introduzidos.
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Estruturas de algoritmo
– Sequência – Início/Fim
• Define uma estrutura onde as instruções são executadas na ordem que
aparecem.
– Seleção – Se-Então/Senão
• Define uma estrutura condicional que, dada a sua avaliação (V ou F),
determina qual “caminho” do algoritmo será executado.
– Repetição – Repita, Enquanto ou Para
• Define uma estrutura de iteração condicional (V ou F) ou contada
(predefinida) de instruções.
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Estruturas de um algoritmo
1. Inicio
2. Suba um degrau
3. Se não chegou ao topo vá para 2
4. Fim
1. Inicio
2. Repita
3. Suba um degrau
4. Até chegar ao topo
5. Fim
Se condicao Entao
intrução 1
V
intrução 2
Condição
intrução 3
...
F
Bloco de
FimSe
Instruções
O resultado das condições é sempre:
• Verdadeiro
OU
• Falso
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Estrutura de Decisão - Alternativa
Fluxograma
F V Linguagem estruturada
Condição
Se condicao Entao
intrução
...
Instruções Instruções Senao
intrução
...
Fimse
Aplicações Informáticas
API
Aplicações
Unidade IInformáticas
– Introdução à ProgramaçãoB
1. Crie um documento num editor de texto e grave o nome do ficheiro sem espaços:
AnoTurmaNºNome-AAAAMMDD, p.e.: 102D5MiguelS-2010;
2. Enviar o ficheiro pela plataforma Moodle, no item Trabalho de casa
Aplicações
API BInformáticas
-12ºano
45
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Estrutura de Repetição
Construir um programa que
imprima os números de 1 a 1000
Não vou escrever mil
vezes a mesma
coisa!!!!!!!!
Estruturas de repetição
•Permitem repetir instruções
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Estrutura de Repetição
Linguagem estruturada
Repetir
Bloco de bloco de instruções
acções
Até que <condição>
V
Exemplo
F
Condição Valor0
Enquanto valor <100
Ler(v)
valorv*10
Instruções Imprimir (valor)
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Estrutura Enquanto… Estrutura de Repetição-
Repetir Repetir..até
Read(N) Read(N)
I←0 I←0
S←0 S←0
While I<N Repeat
READ(X) READ(X)
I←I+1 I←I+1
S←S+1 S←S+1
M←S/N Until I=N
PRINT(M) M←S/N
PRINT(M)
Aplicações Informáticas
N I S I<N X M Saída
3
0
0
1 1 0<3 1
2 2 1<3 4
Read(N) 3 3 2<3 5
I←0 3<3
S←0
1
While I<N
READ(X) 1
I←I+1
S←S+1
M←S/N
PRINT(M)
DATA: 3, 1, 4,5
Aplicações Informáticas
A 0
T100
R0
While A<T
RR+1
AA+10
TT+1
Print (R)
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Estrutura de Repetição
Estrutura Quantidade de Condição de
execuções existência/repetição
Desde…até N vezes -
for
Aplicações Informáticas
API
Aplicações
Unidade IInformáticas
– Introdução à ProgramaçãoB
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações Informáticas B
Selecção múltipla
v1 v2 v senão
Caso
variável
Aplicações Informáticas
API Unidade I – Introdução à Programação
Exercícios
1. Como colocar um automóvel em andamento?
2. Como colocar um livro, numa biblioteca, no seu lugar devidamente
indexado?
3. Como calcular a média de dez números sequenciais?
4. Como calcular a média das minhas classificações?
5. Dados três produtos (A, B, C)num armazém, como actualizar os stocks
sabendo as vendas mensais.
6. Dado um conjunto de seis números, como determinar o que tem valor
máximo.
7. Como usar uma pipeta para medir 10cm3 de água.
8. Como fazer uma pesagem de um objecto de massa desconhecida
numa balança de pratos.
9. Como mudar uma lâmpada fundida de um candeeiro de tecto.
10. Como preparar um refresco de laranja com duas laranjas.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
ARRAYS
• Os ARRAYS são variáveis, identificados por um nome, que contém um conjunto
de elementos do mesmo tipo.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
VECTORES
Os vectores têm uma dimensão, assim só se utiliza uma variável de índice
para aceder aos seus elementos
I 1 2 3 4 5 6
Idade[i] Idade[1] Idade[2] Idade[3] Idade[4] Idade[5] Idade[6]
idade 13 15 18 19 14 15
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Algoritmos de ordenação
Consistem em ordenar os elementos do vector de forma crescente ou decrescente
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Insira 6 números inteiros para o vector
Vector[1]=5
Vector[2]=4
Vector[3]=6 Algoritmos
de ordenação
Vector[4]=7
Vector[5]=2
Vector[6]=3
Inicial = 5 4 6 7 2 3 Inserção
Troca 1 = 4 5 6 7 2 3
Troca 2 = 4 5 6 7 2 3
Troca 3 = 4 5 6 7 2 3
Troca 4 = 2 4 5 6 7 3
Troca 5 = 2 3 4 5 6 7
Listagem ordenada do vector
Vector[1]=2
Vector[2]=3
Vector[3]=4
Vector[4]=5
Vector[5]=6
Vector[6]=7
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Program Selectonsort;
Var vector:array[1..6] of integer;
Algoritmos
i,j,tamanho,minimo,temp:integer;
Begin
tamanho:=6;
de ordenação
writeln(‘Insira 6 números inteiros para o vector’);
for i:=1 to tamanho do
begin
write(‘Vector[‘,i,’]=‘);
readln(vector[i]);
end;
Selecção
writeln;
writeln(‘inicial=‘,vector[1],’|’, vector[2],’|’, vector[3],’|’, vector[4],’|’, vector[5],’|’,vector[6]);
for i:=1 to tamanho-1 do
begin
minimo:=i;
for j:=i+1 to tamanho do
if vector[j]<vector[minimo] then
minimo:=j;
temp:=vector[i];
vector[i]:=vector[minimo];
vector[minimo]:=temp;
writeln(‘troca’,i,’=‘,vector[1],’|’, vector[1],’|’,vector[2],’|’,vector[3],’|’,vector[4],’|’,vector[5],’|’,vector[6]);
end;
Writeln;
writeln(‘Listagem ordenada dos elementos do vector’);
for i:=1 to tamanho do
writeln (‘Vector[‘,i,’]’,’=‘,vector[i]);
End.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Insira 6 números inteiros para o vector
Vector[1]=5
Vector[2]=4
Vector[3]=6 Algoritmos
de ordenação
Vector[4]=7
Vector[5]=2
Vector[6]=3
Inicial = 5 4 6 7 2 3 Selecção
Troca 1 = 2 4 6 7 5 3
Troca 2 = 2 3 6 7 5 4
Troca 3 = 2 3 4 7 5 6
Troca 4 = 2 3 4 5 7 6
Troca 5 = 2 3 4 5 6 7
Listagem ordenada do vector
Vector[1]=2
Vector[2]=3
Vector[3]=4
Vector[4]=5
Vector[5]=6
Vector[6]=7
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Program Bublesort;
Var vector:array[1..6] of integer;
Algoritmos
i,j,tamanho,emp:integer;
Begin
tamanho:=6;
de ordenação
writeln(‘Insira 6 números inteiros para o vector’);
for i:=1 to tamanho do
begin
write(‘Vector[‘,i,’]=‘);
readln(vector[i]);
end;
Bolha
writeln;
writeln(‘inicial=‘,vector[1],’|’, vector[2],’|’, vector[3],’|’, vector[4],’|’, vector[5],’|’,vector[6]);
for i:=1 to tamanho do
begin
minimo:=i;
for j:=tamanho downto i+1 do
if vector[j]<vector[j-1] then
begin
temp:=vector[j];
vector[j]:=vector[j-1];
vector[j-1]:=temp;
writeln(‘troca’,j-1,’=‘,vector[1],’|’, vector[1],’|’,vector[2],’|’,vector[3],’|’,vector[4],’|’,vector[5],’|’,vector[6]);
end;
Writeln;
writeln(‘Listagem ordenada dos elementos do vector’);
for i:=1 to tamanho do
writeln (‘Vector[‘,i,’]’,’=‘,vector[i]);
End.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Insira 6 números inteiros para o vector
Vector[1]=5
Vector[2]=4
Vector[3]=6 Algoritmos
de ordenação
Vector[4]=7
Vector[5]=2
Vector[6]=3
Inicial = 5 4 6 7 2 3 Bolha
Troca 0 = 2 5 4 6 7 3
Troca 1 = 2 3 5 4 6 7
Troca 2 = 2 3 4 5 6 7
Troca 3 = 2 3 4 5 6 7
Troca 4 = 2 3 4 5 6 7
Troca 5 = 2 3 4 5 6 7
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Algoritmos de Pesquisa
Sequencial
Binária – C/ ou s/ repetidos mas já ordenado
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Program PesSequencial;
Var vector:array[1..6] of integer;
j,num:integer;
flag:boolean;
Begin
writeln(‘Insira 6 números inteiros para o vector’); Algoritmos de
for j:=1 to 6 do
begin
write(‘Vector[‘,j,’]=‘);
pesquisa
Sequencial
readln(vector[j]);
end;
writeln;
writeln(‘Insira o nº inteiro a pesquisar’);
readln(num);
Writeln;
j:=1;
flag:=false;
repeat
if num:=vector[j] then
begin
flag:=true;
writeln(j, ‘ ª comparação -> ‘, num, ‘ =‘ , vector[j], ‘ -> TRUE’);
writeln(‘Numero inteiro encontrado na posição’, j);
end
else
writeln(j ‘ ª comparaçao -> ‘, num,’= ‘, vector[j], ‘ -> FALSE’);
Writeln;
j:=j+1;
until (j>6);
if flag =false then
writeln (‘ Numero inteiro não encontrado’);
End.
Aplicações Informáticas
Aplicações Informáticas
API Unidade I – Introdução à Programação
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Program PesBinaria;
Var vector:array[1..6] of integer;
j,posi,numinicio,meio,fim:integer;
Begin
writeln(‘Insira 6 números inteiros para o vector’);
Algoritmos de
for j:=1 to 6 do
begin pesquisa
write(‘Vector[‘,j,’]=‘);
readln(vector[j]);
end;
repeat
meio:= (inicio+fim) div 2;
Binária
write(‘Insira o nº inteiro a pesquisar’); writeln(‘Compara ‘, num,’com’,vector[meio];
readln(num); if (num =vector[meio] then
Writeln; begin
fim:=6; posi :=meio;
inicio:=1; inicio:=fim+1;
Posi:=0; end
o encontrado na posição’, posi); else
End. begin
if(num<vector[meio] then
fim:=(meio-1)
else
inicio:=(meio+1);
end;
until (inicio>fim);
writeln;
if posi=0 then
writeln(‘Numero inteiro não encontrado’);
else
writeln (‘ Numero inteiro encontrado na posição’, posi);
End.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Algoritmos de
pesquisa
Insira 6 números inteiros para o vector
Vector[1]=12 Binária
Vector[2]=13
Vector[3]=16
Vector[4]=17
Vector[5]=18
Vector[6]=23
Compara 23 com 16
Compara 23 com 18
Compara 23 com 23
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Program OrdSelect ;
var v:array[1..1000] of integer;
i,j,min,temp,n:integer;
begin
writeln('Qual a dimensão do vector');
Ordenação
Selecção
readln(n);
for i:=1 to n do
begin
writeln('vector');
readln (v[i]);
(revisão)
end;
for i:=1 to n-1 do
begin
min:=i;
for j:=i+1 to n do
begin
if v[j]<v[min] then min:=j;
end;
temp:=v[i];
v[i]:=v[min];
v[min]:=temp;
end;
for i:=1 to n do
begin
writeln('ordenado',v[i]);
end;
End.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Exercícios
ARRAYS
Desenvolva um programa em Pascal que:
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Exercícios
ARRAYS
Desenvolva um programa em Pascal que:
1. Leia vectores para o nome, peso, altura de n pessoas ;
2. Calcule o índice corporal de cada uma delas, sabendo que IMC=peso/altura^2;
3. Teste o índice corporal e imprima a mensagem(valores da tabela)
2. Elabore um programa em Pascal que leia um vector com n números reais, calcule e imprima a
quantidade de números negativos e a soma dos números positivos desse vector.
3. Elabore um programa em Pascal que leia um vector com 15 posições, calcule e imprima:
a) O maior elemento do vector e em que posição esse elemento se encontra;
b) O menor elemento do vector e em que posição esse elemento se encontra.
4. Elabore um programa em Pascal que leia um vector com n números. Após a leitura do vector, o
programa deve percorrê-lo e contar quantos elementos são inferiores a 10 e imprimir a quantidade
encontrada.
5. Elabore um programa em Pascal que leia uma sequência de números, e os imprima por ordem
inversa, e ainda indique a posição de um determinado número caso este exista.
6. Dado um vector em que cada elemento é uma estrutura composta por número e nome de um
aluno, elaborar um programa em Pascal que dado o número, indique o respectivo nome.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
STRINGS
São cadeias de caracteres – guardam em memória conjuntos ordenados
de caracteres. Estes conjuntos de caracteres podem ter no máximo 255
caracteres (alfabéticos , numéricos e símbolos). Podem ser utilizadas
como vectores de caracteres (array de char)
Declaração de variáveis:
Sintaxe Exemplo
Var <nome> of string; Var nome:string;
Var <nome> of string [n]; Var nacionalidade: string[40];
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
UpCase Função que devolve os caracteres UpCase(Chr: Char): Char; O resultado é Ch convertido
(chr) indicados em maiúsculas. para maiúsculo. Caracteres que
não sejam letras minúsculas (´a
´..´z´) não são afectados.
Insert Insere uma sub-string numa string. Insert(S1:string;var Se a cadeia resultante for maior
A procedure Insert insere S1 em S2 a S2:string;Pos:integer); que 255 caracteres, será
partir da posição Pos. truncada a parte depois do 255o
caracter.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
FUNÇÃO DESCRIÇÃO SINTAXE OBSERVAÇÕES
Concat Concatena uma sequência de strings. Concat(s1 [, s2,..., sn]: A utilização do operador de
O resultado é a concatenação de String): String; adição (+) produz o mesmo
todos os parâmetros. Se a cadeia resultado da função Concat.
resultante for maior que 255
caracteres, será truncada a parte
depois do 255o caracter.
Copy Devolve uma string, uma cópia de Copy (Str: string; cont: Copy retorna uma sub-string
uma sub-string(str) indicada de acordo integer; num: contendo Cont caracteres,
com a posição (cont) do ínicio e do nº integer):string; começando a partir da
de caracteres a copiar(num). posição num em Str.
Pos Verifica a ocorrência de uma sub- Pos(Substr: String; S: Pos verifica a existência de
string numa string. String): Byte; Substr em S, retornando a
posição do 1o caracter de
Substr em S.
Caso a busca não seja bem
sucedida, retorna 0 (zero).
Se houver mais de uma
ocorrência da sub-string, a
posição da primeira será
retornada.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Val Converte uma string(str) num valor Val(str:string;var Se o conteúdo da string não
numérico(num) num:integer/real; var erro: puder ser convertido, uma
integer); variável (erro) guarda o valor
correspondente à posição em
que ocorreu o primeiro erro.
Caso não ocorra erro, guarda
o valor zero.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
PASCAL
program TabelaASCII; CHR program InsereSubstring; INSERT
uses crt; var
var S: String;
I : integer; begin
begin S := 'Ana Holanda';
ClrScr; Insert('Beatriz ', S, 5);
writeln(’Pressione ENTER para mostrar o próximo...’); Write(S); { Ana Beatriz Holanda }
for I:= 1 to 255 do end.
begin
writeln(I,': ',chr(I));
readln;
end;
end.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
PASCAL
var var
COPY DELETE
S1, S2: string; S: string;
begin begin
S1 := 'ABCDEF'; S := 'Ana Beatriz Holanda';
S2 := Copy(S,2,3); { 'BCD' } Delete(S,5,8);
: writeln(S); { 'Ana Holanda' }
end.
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
3. Implemente um programa que receba uma linha de texto, retire os espaços em excesso existentes deixando
apenas um espaço entre as várias palavras.
4. Implemente um programa que receba um nome e apresente apenas o apelido e o 1º nome na seguinte forma:
Apelido, 1º nome
Exemplo:
Maria Francisca Duarte Pais
Pais, Maria
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
PASCAL
5. Crie um programa que leia uma string e a imprima de forma inversa.
6. Crie um programa que leia uma string e substitua a 1ª letra de cada palavra pela respectiva maiúscula.
Considere que uma palavra é sempre antecedida por um espaço ou está no ínicio de um parágrafo.
8. Crie um programa que dada uma sequência de nomes de pessoas, elimine todos os "de" "do" "da" e "e" dos
nomes.
9. Crie um programa que dada uma sequência de nomes de pessoas, os apresente ordenados por ordem alfabética.
10. Elabore um programa que pergunte o nome ao utilizador, e responda aleatoriamente «"Olá ", nome, "!"»,
«"Como está ", nome, "?"» ou «"Prazer em vê-lo ", nome, "!"»; depois de cumprimentar o utilizador, deve pedir outro
nome, e assim sucessivamente até que a resposta seja “ninguém”! Se o nome introduzido for igual a um dos últimos
10 nomes anteriormente introduzidos, em vez de cumprimentar, responder «”Outra vez, “, nome, “?”».
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
PASCAL
Declaração de variáveis:
Sintaxe Exemplo
Var <id1,id2,…>:<Tipo de dados>; Var peso, altura: real;
soma:integer;
Nome_1:string;
Declaração de constantes:
Sintaxe Exemplo
Const <id>=<valor>; Const PI = 3.1415926;
A=3;
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
Instrução de atribuição:
PASCAL
Sintaxe Exemplo
<id>:=<valor>; quantidade:=10;
preco:=5;
a:=a+1;
Instrução de entrada:
Sintaxe Exemplo
Ler [<id>]; read[valor];
readln[valor];
Instrução de saída:
Sintaxe Exemplo
Escrever [<id>]; write[valor];
writeln[valor];
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
PASCAL
Selecção simples:
Sintaxe Exemplo
If <expressão> Then If peso <70 then
Begin
dif:=70-peso;
End;
Selecção composta:
Sintaxe Exemplo
If <expressão> Then If num1>num2 Then
… maior:=num1
Else Else
maior:=num2;
End;
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
PASCAL
Selecção de selecção múltipla:
Sintaxe Exemplo
Case <variável> of Case dia of
<valor1>: … 1:writeln(‘Segunda-feira);
… 2:writeln(‘Terça-feira);
<valorn>: … 3:writeln(‘Quarta-feira);
Else 4:writeln(‘Quinta-feira);
End; 5:writeln(‘Sexta-feira);
6:writeln(‘Sábado);
7:writeln(‘Domingo);
Else writeln[‘Inseriu um nº inválido’]
End;
Aplicações
AplicaçõesInformáticas
Informáticas
API Unidade I – Introdução à Programação
PASCAL
Ciclo For:
Sintaxe Exemplo
For<contador:=valorinicial> To For i:=1 To n
<valorfinal> Do <bloco de instruções> Begin
Readln(num);
soma:=soma+num;
End;
Ciclo While:
Sintaxe Exemplo
While<expressão> Do Begin
<bloco de instruções> Readln(nome);
… While nome<> ‘Fim’ Do
Begin
conta:=conta+1;
End;
End.
Aplicações
AplicaçõesInformáticas
Informáticas