

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
O Delphi é um ambiente composto por IDE, compilador e linguagem de programação. Foi criado na década de 90 e possui sintaxe semelhante ao Pascal. Ele foi originalmente concebido para o desenvolvimento de aplicativos para a plataforma Windows, mas atualmente é capaz de criar aplicações para outros sistemas operacionais como, por exemplo, Linux, Android e IOS. Considere uma aplicação rodando em ambiente Windows, cujo código fonte é apresentado abaixo. Assinale a alternativa que indica corretamente o valor que será apresentado em tela quando o código em questão for executado.
procedure TForm1.BitBtn1Click(Sender: TObject);
var
x: array[1..5] of Integer;
soma, i: Integer;
begin
soma := 0;
for i := 1 to 5 do
begin
x[i] := trunc(Power(i, 2)) div 2;
end;
for i := 5 downto 1 do
begin
soma := soma + x[i];
end;
showmessage(IntToStr(soma));
end;
26
55
15
30
A respeito da Programação em DELPHI, julgue os seguintes itens e assinale a alternativa CORRETA:
I. O comando “var mensagem:string” é usado para realizar a declaração de uma variável do tipo texto.
II. “Var interger: i, j” é um fragmento de código com sintaxe válida para a linguagem Object Pascal (Delphi).
III. TupdateSQL é um componente da VCL do Delphi 7, que permite acesso direto a objetos de banco de dados por meio do BDE.
Somente o item II está correto.
Somente o item III está correto.
Somente os itens I e III estão corretos.
Todos os itens estão corretos.
Em relação ao tema Programação orientada a Objetos (POO) utilizando o Delphi 7, qual destes comandos faz parte da sintaxe CORRETA para criação de classes em Delphi:
class TNome
TNome class
TNome = class
Não existe POO em Delphi.
A função/procedimento/método “ShowMessage” é nativa da linguagem:
Java
Delphi
PHP
Nenhuma das anteriores
A VCL (Visual Component Library) do Delphi contém diversos componentes, sendo um dos mais utilizados o componente cuja classe é a “TButton”. Marque a opção que exibe a hierarquia correta de tal classe:
TObject → TPersistent → TComponent → TControl → TWinControl → TButtonControl → TCustomButton → TButton
TObject → TPersistent → TComponent → TControl → TWinControl → TButton
TObject → TPersistent → TComponent → TControl → TButton
TObject → TPersistent → TComponent → TWinControl → TCustomButton → TButtonControl → TButton
Uma importante característica das linguagens de programação são os tipos de dados utilizados, sendo estes uma combinação de valores e de operações que uma variável pode aceitar ou não. Dentre as linguagens abaixo qual delas é uma linguagem “fortemente tipada”.
Delphi.
PHP.
Assembly.
Nenhuma das alternativas.
Um programador utilizando a “Delphi Language” precisa efetuar uma chamada a uma biblioteca externa chamada “Processar” que não recebe nenhum parâmetro e retorna um valor inteiro (integer). Tal biblioteca se encontra no arquivo chamado “funcoes.dll”. Marque a opção que exibe, corretamente, um exemplo de chamada:
external function Processar: integer; file 'funcoes.dll';
Import function Processar: integer; file 'funcoes.dll';
function Processar: integer; external 'funcoes.dll';
procedure Processar: integer; external 'funcoes.dll';
Na linguagem de programação Delphi 7, qual seria a maneira correta de declarar uma variável, supondo que essa declaração esteja dentro de uma seção var de uma unit?
Nome_variável: Tipo_da_variável;
Nome_variável: Tipo_da_variável
Nome_variável Tipo_da_variável;
Tipo_da_variável: Nome_da_variável
Tipo_da_variável Nome_da_variável;
Text, SQL.Clear, ExecSQL, !Empty, form2:=Tform2.Create(Application)
Text, SQL.Clear(), Open(), not isEmpty(),form2:=new Tform2(Application)
String, SQL.Clear, Open, not isEmpty, form2:=Tform2.Create(Application)
String, SQL.Clear(), ExecSQL(), not isEmpty(), form2:=Tform2.Create(Application)
Append, Status, FieldName, Post, Close
Open, State, FieldByName, Post, Close
Open, State, FieldByName, Close, Append
Close, Status, FieldByName, Append, Open
Considere um cenário em que é necessário sobrescrever o método “validar” da classe “TPessoa” a partir da classe “TCliente”, a qual herda a classe “TPessoa”, e que essas classes foram implementadas na linguagem Delphi. O que acontecerá ao se compilar um programa que utiliza as classes “TCliente” e “TPessoa”, conforme o código descrito a seguir?
unit Unit3;
interface
type
TPessoa = class
public
procedure Validar(Id :Integer);
end;
TCliente = class(TPessoa)
public
procedure Validar(Id :Integer); override;
end;
implementation
{ TCliente }
procedure TCliente.Validar(Id: Integer);
begin
inherited;
{alterações necessárias implementadas aqui}
end;
{ TPessoa }
procedure TPessoa.Validar(Id: Integer);
begin
{validação na classe pessoa}
end;
end.
Ocorrerá um erro na compilação do programa, porque o método validar da classe “TPessoa” não é marcado com um dos modificadores “virtual” ou “dynamic”.
Não ocorrerá erro na compilação do programa, mas, ao se utilizar a classe “TPessoa” durante a execução do programa ocorrerá um erro de AbstractClass.
O programa compilará sem erros, pois as classes foram implementadas corretamente.
O programa compilará sem erros, mas somente o método validar da classe “TPessoa” ocasionará erro ao ser executado.
O programa compilará sem erros, mas somente o método validar da classe “TCliente” ocasionará erro ao ser executado.
Analisando o seguinte código, que foi escrito utilizando a linguagem Delphi, o que acontecerá quando a função UsarValor for executada?
unit Unit2;
interface
type
TMeuInteger = ^Integer;
function GetValor(numero :Integer) :TMeuInteger;
procedure UsaValor;
implementation
function GetValor(numero :Integer) :TMeuInteger;
begin
Result := @numero;
numero := 4;
end;
procedure UsaValor;
var
i : Integer;
begin
i := GetValor(5)^;
end;
end.
A variável “i” vai receber o valor informado no parâmetro “número”
A variável “número” ficará com o valor “nil”.
A variável “i” receberá o valor 4.
A variável “i” receberá o valor 5.
Ocorrerá um erro de Access Violation.
Muitas linguagens de programação definem os tipos de dados primitivos para ponto flutuante. Quais dos tipos a seguir podem ser considerados ponto flutuante em sua linguagem?
Java: double; delphi: real
Java: Int; delphi: real
Java: word; delphi: currency
Java: byte; delphi: currency
Java: float; delphi: word
Qual não é uma característica da linguagem Delphi:
É uma linguagem orientada a objeto.
Tem seu código aberto.
Possui um gerador de relatórios embutido.
Possui recursos de reutilização de componentes.
A linguagem de programação Delphi possui várias formas de realizar um laço de repetição. Qual das formas a seguir tem o comportamento de executa, ao menos uma vez, os comandos dentro do laço de repetição?
try...except
try...finally
while...do
for...do
repeat...until
Analisando o seguinte código escrito em linguagem Delphi, o que vai acontecer quando a função “Exemplo” for executada?
1.___Procedure Exemplo;
2.___var
3. ___ ar: Array of Integer;
4.___begin
5. ___ SetLength(ar,3);
6.
7.___ ar[0] := 34;
8. ___ar[1] := 45;
9. ___ar[2] := 745;
10.
11.___SetLength(ar,5);
12.
13. ___ar [3] := 561;
14. ___ar [4] := 99;
15.__end;
Ocorrerá um erro de access violation na linha 5.
Não ocorrerá erro.
Ocorrerá um erro na linha 11, pois definido o tamanho do array ele não pode ser redimensionado.
Ocorrerá um erro na linha 12, pois o índice 3 não existirá.
Ocorrerá um erro na linha 3, pois o array não possui as suas dimensões informadas.
Analise o trecho de código Object Pascal (Delphi) a seguir.
.
.
.
var
x: Integer;
begin
x := 0;
while x < 10 do
begin
if (x + 1) mod 2 = 0 then
begin
ShowMessage(IntToStr(x));
inc(x);
end;
end;
end;
.
.
.
O que acontecerá ao se executar o programa anterior?
O programa será executado normalmente, e exibirá os valores: 2, 4, 6, 8.
O programa será executado normalmente, e exibirá os valores: 2, 4, 6, 8, 10.
O programa não será executado normalmente, pois há um erro de sintaxe.
O programa não será executado normalmente, pois sua execução cairá em um loop infinito.
Qual dos fragmentos de código a seguir tem uma sintaxe inválida para a linguagem Delphi?
for y := 1 to 5 do begin showmessage(''); end;
for y := 5 downto 1 do begin showmessage(''); end;
while y < 10 do begin inc(y); end;
var String: a;
Considere o seguinte trecho de código Delphi
var
i : Interger;
begin
i:= 1;
while (Sqr(i)> 100) or (Sqrt (i) <=3) do
Inc(i);
end;
A variável i, após a execução do código, valerá
7.
8.
9.
10.
11.
O seguinte código, escrito na linguagem de programação object pascal, utilizando a IDE delphi, cria uma aplicação que executa uma rotina para resolver o problema da torre de hanoi. Para isso, foi utilizada uma técnica muito conhecida de programação. Qual é essa técnica?

Polimorfismo.
Árvore binária.
Recursividade.
Tratamento de exceção.
Encapsulamento.