Essayez de résoudre un problème FizzBuzz restreint en Java

que vas-tu faire

J'ai créé un compte Qiita, mais je n'ai rien écrit Problème FizzBuzz dont on a parlé au point de s'entraîner à publier des articles en Java Essayez de le résoudre. Si vous le résolvez normalement tel quel, cela n'aura vraiment aucun sens, alors Cette fois, je l'ai fait selon les règles suivantes.

Pas de branche conditionnelle

String[] fizz = new String[]{"Fizz", " ", " "}; //Il y a un espace demi-largeur dans les index 1 et 2.
String[] buzz = new String[]{"Buzz", " ", " ", " ", " "}; //Il y a un espace demi-largeur dans les index 1 à 4

for (int i = 1; i <= 100; i++) {
    System.out.println((fizz[i % 3] + buzz[i % 5]).replaceAll("^\\s+$", String.valueOf(i)).trim());
}

Si vous écrivez un processus qui dit 0 alors qu'il est divisible par 3, 5, 15 et 1 sinon, il sera rafraîchissant là où il y a une chaîne de caractères vide. Je ne pouvais pas penser à ...

Pas de division et de surplus

int fizzCounter = 0;
int buzzCounter = 0;

for (int i = 1; i <= 100; i++) {
    fizzCounter++;
    buzzCounter++;
    if (fizzCounter != 3 && buzzCounter != 5) {
        System.out.print(i);
    }
    if (fizzCounter == 3) {
        System.out.print("Fizz");
        fizzCounter = 0;
    }
    if (buzzCounter == 5) {
        System.out.print("Buzz");
        buzzCounter = 0;
    }
    System.out.println();
}

Il est plus rapide de regarder le dernier chiffre en 15-aire, mais je ne comprends pas une histoire aussi difficile. </ S>

Pas de répétition de phrases

public static void main(String[] args) {
    printFizzBuzz(1);
}

static void printFizzBuzz(int num) {
    if (num % 15 == 0) {
        System.out.println("FizzBuzz");
    } else if (num % 3 == 0) {
        System.out.println("Fizz");
    } else if (num % 5 == 0) {
        System.out.println("Buzz");
    } else {
        System.out.println(num);
    }

    if (num < 100) {
        printFizzBuzz(num + 1);
    } else {
        return;
    }
}

Peu importe combien vous en parlez et à quel point il est efficace et intelligent d'écrire Je pense qu'il est vraiment important de le transcrire et de le déplacer avec la logique à laquelle vous pouvez penser.

Recommended Posts

Essayez de résoudre un problème FizzBuzz restreint en Java
Essayez de résoudre Project Euler en Java
Essayez de créer un babillard en Java
Comment résoudre les problèmes d'expression en Java
[Java] Essayez de résoudre le problème de Fizz Buzz
Essayez d'implémenter Yuma en Java
Interface Essayez de créer un problème Java TypeScript 7-3
[Java] Essayez de résoudre le problème de Fizz Buzz en utilisant un traitement récursif
Essayez d'implémenter l'ajout n-aire en Java
Créons une application de calcul avec Java
FizzBuzz en Java
Deux façons de démarrer un thread en Java + @
Comment afficher une page Web en Java
Code pour échapper aux chaînes JSON en Java
Comportement incrémenté Essayez de créer un problème Java TypeScript 3-4
Je voulais que (a == 1 && a == 2 && a == 3) vrai en Java
Opération de chaîne de caractères Essayez de changer le problème Java en TypeScript 9-3
J'ai fait un jeu de problèmes de calcul simple en Java
Comment créer un environnement Java en seulement 3 secondes
[Java] J'ai essayé de résoudre le problème de rang B de Paiza
Initialisation de for Essayez de changer le problème Java en TypeScript 5-4
J'ai essayé de créer une compétence Clova en Java
Comment créer un URI de données (base64) en Java
J'ai essayé de créer une fonction de connexion avec Java
Comment convertir A en A et A en A en utilisant le produit logique et la somme en Java
Comment convertir un fichier en tableau d'octets en Java
Essayez de créer un environnement de développement Java à l'aide de Docker
Essayez d'utiliser RocksDB avec Java
Essayez d'appeler JavaScript en Java
Essayez de développer Spresense avec Java (1)
Essayez le type fonctionnel en Java! ①
Rechercher un sous-ensemble en Java
[Débutant] Essayez de créer un jeu RPG simple avec Java ①
Convertir un tableau d'octets Java en une chaîne hexadécimale
[Débutant] J'ai créé un programme pour vendre des gâteaux en Java
Je voulais juste créer une propriété réactive en Java
Comment stocker des chaînes de ArrayList à String en Java (personnel)
Créer une méthode pour renvoyer le taux de taxe en Java
Même en Java, je veux afficher true avec un == 1 && a == 2 && a == 3
J'ai essayé de convertir une chaîne de caractères en un type LocalDate en Java
Comment développer et enregistrer une application Sota en Java
Comment simuler le téléchargement de formulaires post-objet vers OSS en Java
J'ai créé un client RESAS-API en Java
Essayez d'implémenter Android Hilt en Java
Un moyen intelligent d'unifier les enregistreurs à SLF4J dans Java / build.gradle entry / 2019
Résolvez AtCoder Beginner Contest 150 avec Java
Essayez de faire un simple rappel
3 Implémentez un interpréteur simple en Java
Essayez d'implémenter Yuma dans Ruby
Multithread pour s'adapter au modèle [Java]
J'ai créé un PDF avec Java.
Résolvez AtCoder Beginner Contest 153 avec Java
Comment essayer la fonction de prévisualisation Java (telle que Java 15 Record) avec IntelliJ
Comment implémenter un travail qui utilise l'API Java dans JobScheduler
Comment créer un nouveau projet Gradle + Java + Jar dans Intellij 2016.03
Comment apprendre JAVA en 7 jours
Comment faire fonctionner automatiquement un écran créé en Java sous Windows
Essayez d'exécuter Selenuim 3.141.59 avec eclipse (java)
AtCoder ARC 081 C hash à résoudre en Ruby, Perl et Java