ホームページ  >  記事  >  バックエンド開発  >  C++ プログラミング パズルのコレクション: 思考を刺激し、プログラミング スキルを向上させます

C++ プログラミング パズルのコレクション: 思考を刺激し、プログラミング スキルを向上させます

WBOY
WBOYオリジナル
2024-06-01 22:26:00513ブラウズ

C++ プログラミング パズルは、フィボナッチ数列、階乗、ハミング距離、配列の最大値と最小値などのアルゴリズムとデータ構造の概念をカバーします。これらのパズルを解くことで、C++ の知識を強化し、アルゴリズムの理解とプログラミング スキルを向上させることができます。 。

C++ 编程谜题集锦:激发思维,提升编程水平

C++ プログラミング パズル コレクション: 思考を刺激し、プログラミング スキルを向上させます

はじめに

プログラミング パズルは、創造性を刺激し、プログラミング スキルを向上させる優れた方法です。この記事では、この強力な言語をより深く理解できるように、さまざまなプログラミング概念とアルゴリズムをカバーする C++ プログラミング パズルをいくつか厳選しました。

パズル 1: フィボナッチ数列

質問: フィボナッチ数列の最初の n 個の数値を出力する C++ プログラムを作成してください。

コード:

#include <iostream>

int main() {
  int n;
  std::cout << "Enter the number of Fibonacci numbers to print: ";
  std::cin >> n;

  int a = 0, b = 1;
  std::cout << "Fibonacci Series: ";
  for (int i = 1; i <= n; i++) {
    std::cout << a << " ";
    int c = a + b;
    a = b;
    b = c;
  }
  std::cout << std::endl;

  return 0;
}

パズル 2: 階乗

質問: 指定された数値の階乗を計算する C++ プログラムを作成してください。

コード:

#include <iostream>

int main() {
  int n;
  std::cout << "Enter the number whose factorial you want to calculate: ";
  std::cin >> n;

  int factorial = 1;
  for (int i = 1; i <= n; i++) {
    factorial *= i;
  }
  std::cout << "Factorial of " << n << " is: " << factorial << std::endl;

  return 0;
}

パズル 3: ハミング距離

質問: 2 つの 2 進数間のハミング距離を計算する C++ プログラムを作成してください。

コード:

#include <iostream>

int main() {
  int n1, n2;
  std::cout << "Enter two binary numbers: ";
  std::cin >> n1 >> n2;

  int distance = 0;
  while (n1 > 0 || n2 > 0) {
    if ((n1 % 10) != (n2 % 10)) {
      distance++;
    }
    n1 /= 10;
    n2 /= 10;
  }
  std::cout << "Hamming distance between the two numbers is: " << distance << std::endl;

  return 0;
}

パズル 4: 配列の最大値と最小値

質問: 指定された配列の最大値と最小値を見つける C++ プログラムを作成してください。

コード:

#include <iostream>

int main() {
  int arr[] = {10, 20, 5, 15, 30};
  int size = sizeof(arr) / sizeof(arr[0]);

  int max = arr[0];
  int min = arr[0];
  for (int i = 1; i < size; i++) {
    if (arr[i] > max) {
      max = arr[i];
    }
    if (arr[i] < min) {
      min = arr[i];
    }
  }
  std::cout << "Maximum element: " << max << std::endl;
  std::cout << "Minimum element: " << min << std::endl;

  return 0;
}

結論

これらのパズルは、あなたのプログラミング スキルに挑戦し、創造的な可能性を刺激するように設計されています。これらのパズルを解くことで、C++ の知識を強化し、アルゴリズムとデータ構造の理解を高めることができます。

以上がC++ プログラミング パズルのコレクション: 思考を刺激し、プログラミング スキルを向上させますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。