freeCodeCamp/curriculum/challenges/portuguese/10-coding-interview-prep/rosetta-code/i-before-e-except-after-c.md

2.2 KiB

id title challengeType forumTopicId dashedName
5a23c84252665b21eecc7eb0 I antes de E, exceto depois de C 5 302288 i-before-e-except-after-c

--description--

"I antes de E, exceto depois de C" é uma regra mnemônica para a ortografia em inglês. Quando não temos certeza se uma palavra é escrita com o dígrafo ei ou ie, a rima sugere que a ordem correta é ie, a menos que a letra anterior seja c, caso no qual ele deve ser ei.

Usando as palavras fornecidas, verifique se as duas subcláusulas da frase são plausíveis individualmente:

  1. "I antes de E quando não for precedido por C".
  2. "E antes de I quando for precedido por C".

Se ambas as subfrases forem plausíveis, então a frase original pode ser considerada plausível.

--instructions--

Escreva uma função que aceite uma palavra e verifique se a palavra segue esta regra. A função deve retornar verdadeiro se a palavra seguir a regra e falso se não seguir.

--hints--

IBeforeExceptC deve ser uma função.

assert(typeof IBeforeExceptC == 'function');

IBeforeExceptC("receive") deve retornar um booleano.

assert(typeof IBeforeExceptC('receive') == 'boolean');

IBeforeExceptC("receive") deve retornar true.

assert.equal(IBeforeExceptC('receive'), true);

IBeforeExceptC("science") deve retornar false.

assert.equal(IBeforeExceptC('science'), false);

IBeforeExceptC("imperceivable") deve retornar true.

assert.equal(IBeforeExceptC('imperceivable'), true);

IBeforeExceptC("inconcebível") deve retornar verdadeiro.

assert.equal(IBeforeExceptC('inconceivable'), true);

IBeforeExceptC("insuficiente") deve retornar falso.

assert.equal(IBeforeExceptC('insufficient'), false);

IBeforeExceptC("onisciente") deve retornar falso.

assert.equal(IBeforeExceptC('omniscient'), false);

--seed--

--seed-contents--

function IBeforeExceptC(word) {

}

--solutions--

function IBeforeExceptC(word)
{
    if(word.indexOf("c")==-1 && word.indexOf("ie")!=-1)
        return true;
    else if(word.indexOf("cei")!=-1)
        return true;
    return false;
}