Questões de Informática · PROGEP FURG

InformáticaLinguagens de programaçãoPROGEP FURG 2019

FURG

Questão de Informática

Os arquivos definidos abaixo, de um sistema operacional Ubuntu, se encontram em um diretório de caminho /home/usuario/ e devem ser considerados na solução das questões 7, 8, 9 e 10.: /home/usuario/src/C.php <?php class C { public function m(string $x) { return $x; } public function n(int $x) { return $this->k($x + 3); } protected function k($v) { return $this->m(strval($v)); } } /home/usuario/src/D.php <?php require_once 'C.php'; 2 class D extends C { public function k($v) { if (is_numeric($v)) { return $this->m(strval($v + 3)); } else { throw new Exception('Preciso de um número!'); } } } /home/usuario/src/runC.php <?php require_once 'C.php'; $o = new C(); echo $o->n(3); echo $o->m('3'); echo $o->m('3' . $o->n(3)); /home/usuario/src/runD.php <?php require_once 'D.php'; $l = new D(); echo $l->n(3); echo $l->m('3'); echo $l->m('3' . $l->n(3)); /home/usuario/tests/CDTest.php <?php use PHPUnit\Framework\TestCase; require_once __DIR__ . '/../src/C.php'; require_once __DIR__ . '/../src/D.php'; final class CDTest extends TestCase { public function test1(): void { $c = new C(); $d = new D(); $this->assertEquals($c->m('a'), $d->m('a')); $this->assertNotEquals($c->m('a'), $d->m('n')); $this->assertFalse($c->m('1') != $d->m('1')); $this->assertTrue($d->m('1') == 1); } public function test2(): void { $c = new C(); $d = new D(); $this->assertTrue($c->n(1) == '4'); $this->assertEquals($c->n(1), $d->n(1) - 3); } public function test3(): void { $this->expectExceptionMessage('Preciso de um número!'); $d = new D(); $d->k('a'); } public function test4(): void { $this->expectExceptionMessage('Preciso de um número!'); $d = new D(); $d->k('2'); } }

Ao executar o comando "php src/runC.php" no diretório /home/usuario/, marque a alternativa abaixo que representa a saída obtida:

Sua resposta

Mais questões de Linguagens de programação

Ver as 2.491 questões de Linguagens de programação

Questão de prova oficial, com o gabarito definitivo publicado pela banca. Reproduzida para fins de estudo.