Vous êtes sur la page 1sur 8

15/03/2019 Unicesumar - Ensino a Distância

ATIVIDADE 2 - ADS - PROGRAMAÇÃO III - 2019A3


Período:25/02/2019 08:00 a 17/03/2019 23:59 (Horário de Brasília)
Status:ABERTO
Nota máxima:0,50
Gabarito:Gabarito será liberado no dia 18/03/2019 00:00 (Horário de Brasília)
Nota ob da:

1ª QUESTÃO
A linguagem PHP como em outras linguagens de programação, permitem ao desenvolvedor utilizar vários
tipos de operadores: aritméticos, lógicos, relacionais ente outros, e um destes, permite que seja realizado a
união de duas cadeias de caracteres em uma única cadeia, este recurso é chamado de operação de
atribuição com concatenação.
 
TOLEDO, Carlos Benedito Sica de Toledo. Programação III. Maringá-PR: Unicesumar, 2018.

Considerando o exposto acima, assinale a alternativa correta que concatene na variável $x o conteúdo dela
com o conteúdo da variável $y.

ALTERNATIVAS
$x . $y;

$x .= $y;

$x = .$y;

$x += $y;

$x = $x + $y;

2ª QUESTÃO

1/8
15/03/2019 Unicesumar - Ensino a Distância

Nem sempre nossos códigos atenderão ao objetivo proposto e podem conter erros tanto de sintaxe quanto
de lógica. No caso mostrado abaixo, existe uma classe de validação para saber se um ano é bissexto ou não
e abaixo 4 chamadas para testes.

<?php
class AnoBissexto
{   
  public function isAnoBissexto($ano)
 {
    if ($ano % 400 == 0) {
        return true;
    }
    if ($ano % 100 == 0) {
        return false;
    }
    if ($ano % 4 == 0) {
        return true;
    }
    return false;
 }
}
$validacao = new AnoBissexto();
var_dump($validacao->isAnoBissexto(2100));
var_dump($validacao->isAnoBissexto(2000));
var_dump($validacao->isAnoBissexto(2050));
var_dump($validacao->isAnoBissexto(2008));
?>

Com base no código acima, qual será o resultado obtido após a execução deste código.

ALTERNATIVAS
bool(false) bool(false) bool(true) bool(true)

bool(false) bool(true) bool(false) bool(true)

bool(false) bool(true) bool(false) bool(false)

bool(false) bool(false) bool(false) bool(false)

bool(true) bool(true) bool(true) bool(true)

3ª QUESTÃO
Dados os arrays $estado e $cidades no código PHP abaixo, qual o resultado apresentado ao fim da
execução deste script?

<?php
$estados = array("PR" => 1, "RJ" => 2, "MG" => 3, "SP"=>4);
$cidades = array("Curitiba", "Londrina", "Rio de Janeiro", "Belo Horizonte", "São Paulo");
echo $cidades

$estados[ " PR "

];
?>

ALTERNATIVAS
2/8
15/03/2019 Unicesumar - Ensino a Distância

Curitiba.

Londrina.

São Paulo.

Belo Horizonte.

Rio de Janeiro.

4ª QUESTÃO
O conceito de herança na orientação a objetos passa a exigir uma análise mais aprodundada a medida que
o reuso de funções e propriedades começam também a acontecer com maior frequência em um código. O
exemplo abaixo mostra um código com duas classes que possuem a mesma propriedade e método e na
classe Teste2 um método tem por objetivo retornar o valor das duas propriedades da classe.

<?php
class Teste1
{
    protected $i = 10;
    public function retornaNum() {
        return $this->i;
  }
}

class Teste2 extends Teste1


{
    public $i = 20;
    public function retornaNum() {
        return $this->i;
  }
    public function retornaNumTeste1e2() {
        return $this->retornaNum() + parent::retornaNum();
  }
}

$teste = new Teste2();


$teste->i = 30;

var_dump($teste->retornaNumTeste1e2());
?>

Ao término da execução do método qual será o resultado impresso em tela?

ALTERNATIVAS
30

40

50

60

Erro do PHP

5ª QUESTÃO

3/8
15/03/2019 Unicesumar - Ensino a Distância

Analise o script abaixo:

<?php
  $result = null;
  for ($i = 0; $i < 10; $i++) {
    for ($j = 0; $j < 10; $j++) {
      if ($j == 0) {
        break;
   }
      $result++;
  }
    $result++;
 }
  echo $result;
?>

Qual o valor apresentado após a execução do script?

ALTERNATIVAS
9

10

19

20

null

6ª QUESTÃO
A linguagem PHP como as suas antecessoras, permite ao desenvolvedor utilizar diversas estruturas, e uma
delas é a estrutura condicional, que tem por função validar uma expressão devidamente declarada e que
pode ser construída de maneira simples, ou seja, com apenas uma verificação ou composta de mais de uma
expressão com a utilização de operadores. Dentre os mais utilizados, temos o operador E (utilizado por &&
ou AND) e também do operador OU (utilizado por || ou OR).

<?php
$a = ???;

if ($a>0 && $a<1){

echo "Entrou";

}else{

echo "Não entrou";

  ?>

Considerando o script acima, assinale a alternativa que ao ser atríbuida como valor para a variável $a
(representado no código por ???), faria com que ao término da execução do script fosse impresso a
mensagem:

Entrou

4/8
15/03/2019 Unicesumar - Ensino a Distância

ALTERNATIVAS
-1

0.5

7ª QUESTÃO
A visibilidade de propriedades (atributos) e métodos de uma classe é um recurso muito importante e ao
mesmo tempo interessante da orientação a objetos, pois podem ser visíveis apenas onde é estritamente
necessário. Este recurso é muito utilizando quando se faz necessário que métodos de uma classe sejam
chamados por objetos de outras classes.
 
TOLEDO, Carlos Benedito Sica de Toledo. Programação III. Maringá-PR: Unicesumar, 2018
 
Neste sentido, imagine que a classe Automovel possua um atributo chamado placa, e que este atributo só
possa ser acessado pela própria classe e demais classes que venham a herdar a classe Carro, e, também, não
possam ser acessados por objetos (instâncias). Assinale a alternativa correta para a visibilidade deste
atributo:

ALTERNATIVAS
class

public

private

protected

interface

8ª QUESTÃO

5/8
15/03/2019 Unicesumar - Ensino a Distância

Alguns comandos de desvio no PHP, como break e continue, podem ser usados de maneira providencial em
algumas regras de negócio mais complexas, pois o uso do break, por exemplo, pode resultar no término de
uma instrução switch ou forçar a terminação de um laço de repetição.
 
TOLEDO, Carlos Benedito Sica de Toledo. Programação III. Maringá-PR: Unicesumar, 2018.

<?php
$valor1 = 2;

switch($valor1){
case 1:
echo "1";
break;
case 2:
echo "2";
break;
default:
echo "0";
}
$valor1 = 1;

switch($valor1){
case 1:
echo "1";
case 2:
echo "2";
case 3:
echo "3";
default:
echo "0";
}
?>

Analise o código acima e descreva qual será a saida de texto após a interpretação e execução deste código.

ALTERNATIVAS
2

00

21

2123

21230

9ª QUESTÃO

6/8
15/03/2019 Unicesumar - Ensino a Distância

A estrutura de repetição FOREACH é altamente indicada para o trabalho com Arrays no PHP. Estes arrays
também são conhecidos por outros nomes, como arranjos, matrizes e vetores. Existem duas formas de se
usar um FOREACH, e dentre elas, uma irá permitir a recuperação do índice deste arranjo.
 
<?php
$carros = array(

"uno" => "Fiat Uno",

"gol" => "VW Gol"

);

foreach ($carros as ??????) {

echo "Índice: $x ";

?>

Com base no código acima, qual das opções a seguir, estando presente no lugar de ??????, imprimiria na
tela a seguinte mensagem:

Índice: uno Índice: gol

ALTERNATIVAS
$x

$x=>$y

$y=>$x

$x, $y

$y, $x

10ª QUESTÃO

7/8
15/03/2019 Unicesumar - Ensino a Distância

Interfaces de objetos permitem a criação de códigos que especificam quais métodos uma classe deve
implementar, sem definir como esses métodos serão tratados. Ao herdar uma classe abstrata, todos os
métodos marcados como abstratos na declaração da classe pai devem ser implementados na classe filha;
adicionalmente, estes métodos devem ser definidos com a mesma (ou menos restrita). Analise o código
abaixo:

<?php
interface SegurancaInterface {
  public function verificarAutenticacao();
}

abstract class DadosCadastro {


  public $cadastradoEm;
  public $atualizadoEm;
  public $status;
}

class Pessoa ...............................................


    public function verificarAutenticacao() {
        return true;
  }
    
    public $nome;
    // demais campos...
}

$pessoa = new Pessoa();

Diante do conceitos de Interfaces, classes abstratas e do script apresentado, indique qual deveria ser a
declaração correta da class Pessoa garantindo que seja utilizada a interface SegurancaInterface e que a
classe Pessoa herde a classe DadosCadastro:

ALTERNATIVAS
class Pessoa {

class Pessoa extends DadosCadastro, SegurancaInterface {

class Pessoa extends DadosCadastro implements SegurancaInterface {

class Pessoa extends DadosCadastro, implements SegurancaInterface {

class Pessoa implements SegurancaInterface, class Pessoa extends DadosCadastro{

8/8