Trilhas
/
SQLite
SQLite
/
Exercícios
/
Agendamento Swift
Agendamento Swift

Agendamento Swift

Médio

Introdução

Esta semana é a sua vez de fazer as anotações na reunião de planejamento do departamento. Nessa reunião, seu chefe vai definir as datas de entrega de todos os itens de trabalho em aberto. O incômodo é que, em vez de especificar as datas de entrega de verdade, seu chefe vai apenas descrevê-las em um formato abreviado. Como muitos dos seus colegas não estão familiarizados com esse jargão corporativo, você vai precisar converter essas descrições de datas de entrega em datas de entrega de verdade.

Instruções

Sua tarefa é converter descrições de data de entrega em datas de entrega reais, com base em quando a reunião começou.

Existem dois tipos de descrição de data de entrega:

  1. Fixas: um conjunto predefinido de palavras.
  2. Variáveis: palavras que têm um componente variável, mas seguem um conjunto predefinido de padrões.

Descrições fixas de data de entrega

Existem três descrições fixas de data de entrega:

  • "NOW"
  • "ASAP" (o mais rápido possível)
  • "EOW" (fim da semana)

A tabela a seguir mostra como traduzi-las:

Description Meeting start Delivery date
"NOW" - Duas horas após o início da reunião
"ASAP" Antes das 13:00 Hoje às 17:00
"ASAP" A partir das 13:00 Amanhã às 13:00
"EOW" segunda, terça ou quarta sexta às 17:00
"EOW" quinta ou sexta domingo às 20:00

Descrições variáveis de data de entrega

Existem dois padrões de descrição variável de data de entrega:

  • "<N>M" (N-ésimo mês)
  • "Q<N>" (N-ésimo trimestre)
Description Meeting start Delivery date
"<N>M" Antes do N-ésimo mês Às 8:00 no primeiro dia útil do N-ésimo mês deste ano
"<N>M" A partir do N-ésimo mês Às 8:00 no primeiro dia útil do N-ésimo mês do próximo ano
"Q<N>" Até o N-ésimo trimestre Às 8:00 no último dia útil do N-ésimo trimestre deste ano
"Q<N>" Depois do N-ésimo trimestre Às 8:00 no último dia útil do N-ésimo trimestre do próximo ano
Note

Um dia útil é segunda, terça, quarta, quinta ou sexta-feira.

Um ano tem quatro trimestres, cada um com três meses:

  1. janeiro/fevereiro/março
  2. abril/maio/junho
  3. julho/agosto/setembro
  4. outubro/novembro/dezembro.
Editar via GitHub O link abre em uma nova janela ou aba
SQLite Exercism

Tudo pronto para começar Agendamento Swift?

Crie sua conta no Exercism para aprender e dominar SQLite com 81 exercícios e mentoria humana de verdade, tudo de graça.