«Решение FizzBuzz HackerRank C++» относится к задаче решения проблемы FizzBuzz на платформе HackerRank с использованием языка программирования C++.
Вот одно из возможных решений проблемы FizzBuzz в C++:
#include <iostream>
int main() {
for (int i = 1; i <= 100; ++i) {
if (i % 3 == 0 && i % 5 == 0) {
std::cout << "FizzBuzz" << std::endl;
} else if (i % 3 == 0) {
std::cout << "Fizz" << std::endl;
} else if (i % 5 == 0) {
std::cout << "Buzz" << std::endl;
} else {
std::cout << i << std::endl;
}
}
return 0;
}
Это решение использует цикл for
для перебора от 1 до 100. Он проверяет, делится ли текущее число на 3 и 5, и если да, то печатает «FizzBuzz». Если число делится только на 3, выводится «Fizz». Если число делится только на 5, печатается «Buzz». В противном случае он печатает сам номер.
Альтернативное решение:
#include <iostream>
#include <string>
int main() {
for (int i = 1; i <= 100; ++i) {
std::string output = "";
if (i % 3 == 0) {
output += "Fizz";
}
if (i % 5 == 0) {
output += "Buzz";
}
if (output.empty()) {
output = std::to_string(i);
}
std::cout << output << std::endl;
}
return 0;
}
Это решение использует конкатенацию строк для построения выходных данных. Он проверяет, делится ли число на 3, и добавляет «Fizz» к выходной строке, если оно истинно. То же самое происходит и с делимостью на 5, добавляя к выходной строке слово «Buzz». Если после этих проверок выходная строка по-прежнему пуста, это означает, что число не делится ни на 3, ни на 5, поэтому число преобразуется в строку и присваивается выходным данным.