freeCodeCamp/curriculum/challenges/spanish/08-coding-interview-prep/rosetta-code/i-before-e-except-after-c.s...

3.3 KiB

title id localeTitle challengeType
I before E except after C 5a23c84252665b21eecc7eb0 5a23c84252665b21eecc7eb0 5

Description

La frase "I antes de E, excepto después de C" es una mnemotécnica muy conocida que se supone que ayuda cuando se deletrean palabras en inglés. Usando las palabras proporcionadas, verifique si las dos sub-cláusulas de la frase son plausibles individualmente:
  1. "I antes de E cuando no está precedido por C".
  2. "E antes que yo cuando está precedido por C".
Si ambas subfrases son plausibles, entonces se puede decir que la frase original es plausible. Escriba una función que acepte una palabra y verifique si la palabra sigue esta regla. La función debería devolver verdadero si sigue la regla de lo contrario falso.

Instructions

Tests

tests:
  - text: <code>IBeforeExceptC</code> debería ser una función.
    testString: 'assert(typeof IBeforeExceptC=="function","<code>IBeforeExceptC</code> should be a function.");'
  - text: <code>IBeforeExceptC(&quot;receive&quot;)</code> debe devolver un valor booleano.
    testString: 'assert(typeof IBeforeExceptC("receive")=="boolean","<code>IBeforeExceptC("receive")</code> should return a boolean.");'
  - text: <code>IBeforeExceptC(&quot;receive&quot;)</code> debe devolver <code>true</code> .
    testString: 'assert.equal(IBeforeExceptC("receive"),true,"<code>IBeforeExceptC("receive")</code> should return <code>true</code>.");'
  - text: <code>IBeforeExceptC(&quot;science&quot;)</code> debe devolver <code>false</code> .
    testString: 'assert.equal(IBeforeExceptC("science"),false,"<code>IBeforeExceptC("science")</code> should return <code>false</code>.");'
  - text: <code>IBeforeExceptC(&quot;imperceivable&quot;)</code> debe devolver <code>true</code> .
    testString: 'assert.equal(IBeforeExceptC("imperceivable"),true,"<code>IBeforeExceptC("imperceivable")</code> should return <code>true</code>.");'
  - text: <code>IBeforeExceptC(&quot;inconceivable&quot;)</code> debe devolver <code>true</code> .
    testString: 'assert.equal(IBeforeExceptC("inconceivable"),true,"<code>IBeforeExceptC("inconceivable")</code> should return <code>true</code>.");'
  - text: <code>IBeforeExceptC(&quot;insufficient&quot;)</code> debe devolver <code>false</code> .
    testString: 'assert.equal(IBeforeExceptC("insufficient"),false,"<code>IBeforeExceptC("insufficient")</code> should return <code>false</code>.");'
  - text: <code>IBeforeExceptC(&quot;omniscient&quot;)</code> debe devolver <code>false</code> .
    testString: 'assert.equal(IBeforeExceptC("omniscient"),false,"<code>IBeforeExceptC("omniscient")</code> should return <code>false</code>.");'

Challenge Seed

function IBeforeExceptC (word) {
  // Good luck!
}

Solution

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