C de la programmation. Le programme FizzBuzz

J'ai eu un quiz et j'ai écrit ce code:

Impression Fizz si elle est divisible par 3 et il imprime Buzz si c'est
divisible par 5. Il imprime FizzBuss si elle est
divisible par deux. Sinon, il affichera les nombres entre 1 et 100.

Mais après je suis arrivé à la maison, je me demandais si ont pouvait
écrit avec moins de code. Cependant, je ne pouvais pas sortir
avec un code plus court.
Puis-je le faire avec un code plus court? Merci.

C'est ce que j'ai écrit et je pense qu'il fonctionne bien. Mais puis-je l'avoir fait
avec moins de code.

#include <stdio.h>

int main(void)
{
    int i;
    for(i=1; i<=100; i++)
    {
        if(((i%3)||(i%5))== 0)
            printf("number= %d FizzBuzz\n", i);
        else if((i%3)==0)
            printf("number= %d Fizz\n", i);
        else if((i%5)==0)
            printf("number= %d Buzz\n", i);
        else
            printf("number= %d\n",i);

    }

    return 0;
}
  • Est-ce devoirs? (BTW, avez-vous vraiment l'intention d'optimiser la première instruction if que beaucoup? 🙁
  • pile de change a un codegolf site je crois
  • Cette question tend à vaincre ceux qui essaient d'être intelligent. Vous pouvez faire plus court, mais il est alors facile de se tromper. Ce que vous avez fait est le moyen le plus simple pour obtenir ce droit.
  • Non, ce n'est pas un problème du tout. Je n'étais tout simplement essayer de savoir si je pourrait avoir fait dans le plus court chemin. Et j'ai appris quelque chose ici de l'utilisateur paxdiable, où si vous avez besoin de tester les deux conditions, parfois, vous pourriez réduire à ces deux conditions pour être juste et, par conséquent, votre code sera plus courte. Quand j'ai écrit mon code, je ne pense pas de cette façon. Maintenant je vais utiliser sa technique à partir de maintenant.
  • if(((i%3)||(i%5))== 0) N'essayez pas d'être trop intelligent, c'est juste obscurcit ce que votre code est destiné à faire. Aussi, il doit imprimer Fizz/Buzz au lieu de le nombre, alors méfiez-vous que certaines des solutions fournis dans les réponses sont fausses.
  • Je vais voter pour fermer cette question hors-sujet, parce que l'examen de code fonctionnel est hors sujet pour Stack Overflow. Votre question peut être sur le sujet de la Revue de Code.
  • Totalement bizarre que c'était fermé à mon humble avis. Comment est-il pas peut-être pas une question de programmation?

InformationsquelleAutor leocod | 2012-02-27