Percursos
/
PHP
PHP
/
Exercícios
/
Namorados do liceu
Namorados do liceu

Namorados do liceu

Exercício de aprendizagem

Introdução

Strings

Uma string é uma série de carateres, rodeada de aspas. Tanto as aspas simples como as duplas são suportadas.

<?php

$where = "Spain";
$what = 'rain';

Expansão de variáveis em strings

Nas strings entre aspas duplas, se fizeres referência a uma variável que está no âmbito, o valor é inserido na string.

<?php

$answer = 42;
$expanded = "The answer to life, the universe, and everything is $answer"; 

Suporte de codificação de carateres

Historicamente, as funções de string em PHP só suportavam carateres ASCII e não suportavam as codificações Unicode modernas. Cada caráter ASCII ocupa 1 byte, enquanto os carateres Unicode podem ocupar entre 1 e 4 bytes. Se precisares de manipular strings Unicode em segurança, consulta as versões multibyte das funções históricas.

<?php

$byte_length = strlen('😃'); // => 4
$string_length = mb_strlen('😃'); // => 1

Instruções

Neste exercício, vais ajudar namorados do secundário a declarar o seu amor nas redes sociais, gerando um coração ASCII com as iniciais deles:

     ******       ******
   **      **   **      **
 **         ** **         **
**            *            **
**                         **
**     J. K.  +  M. B.     **
 **                       **
   **                   **
     **               **
       **           **
         **       **
           **   **
             ***
              *

1. Obter a primeira letra do nome

Implementa a função HighSchoolSweetheart::firstLetter. Deve receber um nome e devolver a sua primeira letra. Deve limpar os espaços em branco desnecessários do nome.

<?php

$sweetheart = new HighSchoolSweetheart();
$sweetheart->firstLetter("Jane");
# => "J"

2. Formatar a primeira letra como inicial

Implementa a função HighSchoolSweetheart::initial. Deve receber um nome e devolver a sua primeira letra, em maiúscula, seguida de um ponto. Certifica-te de que reutilizas HighSchoolSweetheart::first_letter, que definiste no passo anterior.

<?php

$sweetheart = new HighSchoolSweetheart();
$sweetheart->initial("jane");
# => "J."

3. Dividir o nome completo no primeiro nome e no último nome

Implementa a função HighSchoolSweetheart::initials. Deve receber um nome completo, composto por um primeiro nome e um último nome separados por um espaço, e devolver as iniciais. Certifica-te de que reutilizas HighSchoolSweetheart::initial, que definiste no passo anterior.

<?php

$sweetheart = new HighSchoolSweetheart();
$sweetheart->initials("Jane Doe");
# => "J. D."

4. Colocar as iniciais dentro do coração

Implementa a função HighSchoolSweetheart::pair. Deve receber dois nomes completos e devolver as iniciais dentro de um coração ASCII. Certifica-te de que reutilizas HighSchoolSweetheart::initials, que definiste no passo anterior.

<?php

$sweetheart = new HighSchoolSweetheart();
$sweetheart->pair("Blake Miller", "Riley Lewis")
# => """
#      ******       ******
#    **      **   **      **
#  **         ** **         **
# **            *            **
# **                         **
# **     B. M.  +  R. L.     **
#  **                       **
#    **                   **
#      **               **
#        **           **
#          **       **
#            **   **
#              ***
#               *
# """
Editar via GitHub A ligação abre numa nova janela ou separador
PHP Exercism

Estás pronto para começar Namorados do liceu?

Inscreve-te no Exercism para aprenderes e dominares PHP com 11 conceitos122 exercícios, e mentoria humana real, tudo grátis.