ChallengeR #3

Votre dernière mission consistait à compter le nombre de chiffres pairs du vecteur x avec le moins de code possible (étant bien entendu que les espaces, les indentations et les retours à la ligne ne sont pas comptés comme des caractères).

x <- sample(0:9, 100, TRUE)

La meilleure réponse possible était :

sum(! x %% 2)

... et vous êtes 14 à l'avoir trouvée. Dans l'ordre d'arrivée : @thedudeparis, @_antoineb, @_pvictorr, @davidgohel, @loicmolinari, @AlekVladNevski @privefl, @basiliximAb @dickoah, @ClementinC @StephaneOrlins, @claramorganexxx (ahem..), @francois_ls et @After_Eight. Bravo à toutes et à tous !

Comme vous êtes bons, on va augmenter la difficulté. Votre mission, si vous l'acceptez, consiste à coder une fonction syracuse qui renvoie la suite de Syracuse de n'importe quel entier x jusqu'à ce qu'elle atteigne 1. En d'autres termes, nous cherchons une fonction de type :

syracuse = function(x) {
 # faire quelque chose...
}

De telle sorte que :

> syracuse(42)
[1] 42 21 64 32 16  8  4  2  1

Mais comme ça, c'est trop facile, vous allez faire ça sans boucle (ni for ni while ni repeat !).

Aucun commentaire:

Enregistrer un commentaire

Cheval de fer, acte II

La première partie est ici. Quand John Kennedy s’y était installé au tout début des années 1790, Manchester n’était encore qu’un gros bour...