Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C /C++トリッキーなプログラム


プログラミングの基本をテストする10のトリッキーなプログラムがあります。

1。 C++で「」を出力するプログラム

C ++プログラミング言語では、引用符を使用して、印刷されるテキストの開始と終了を示します。したがって、引用符を印刷するには、「特別なエスケープシーケンスが必要です。したがって、\”を使用してC++で引用符を出力します。

#include<iostream>
using namespace std;
int main() {
   cout<<"\"Tutorials Point \"";
   return 0;
}

出力

"Tutorials Point "

2。ループまたはgotoステートメントを使用して1から10までの数字を出力するようにプログラムします

同じコードブロックを複数回反復するプログラミングでは、いくつかの方法があります。彼らは-

  • ループの使用
  • gotoステートメントの使用
  • 再帰関数の使用

ループやgotoステートメントは使用できないため、有効な方法は再帰関数を使用することだけです。再帰呼び出しを使用して1から10までの数字を出力する方法を見てみましょう。

#include <stdio.h>
void printNumber(int count){
   printf("%d\n", count );
   count+=1;
   if(count<=10)
      printNumber(count);
}
int main(){
   printNumber(1);
   return 0;
}

出力

1
2
3
4
5
6
7
8
9
10

3。算術演算子や比較演算子を使用せずに2つの数値が等しいかどうかを確認するには

2つの数値が等しいかどうかを確認するには、ビット単位のXOR演算子(^)を使用できます。 2つの数値が等しい場合、これらの数値のビット単位のXORは0です。次に、この概念をプログラムに実装しましょう。

#include<iostream>
using namespace std;
int main(){
   int a = 132;
   int b = 132;
   if ( (a ^ b) )
      cout<<"a is not equal to b";
   else
      cout<<"a is else to b";
      return 0;
}

出力

a is equal to b

4。;を使用せずに「Hello」を印刷します。 c /c++で

c / c ++プログラミング言語には、セミコロンを使用せずに何かを印刷する方法があります。これを行うには、出力メソッドの戻り型であるprintfを使用します。 C ++のprintfメソッドは、出力画面に出力された文字数を返します。セミコロンなしで実行できる条件文を使用できます。

#include <stdio.h>
int main(){
   if(printf("Hello "))
   return 0;
}

出力

Hello

5。比較演算子を使用せずに、2つの数値の最大値と最小値を見つけるようにプログラムします。

比較演算子を使用せずに定義された2つの数値の最大数と最小数を見つけるために、absメソッドを使用し、2つの数値の差をそれに渡します。数値間の正の差が返され、この絶対差を差し引いて、指定された2つの数値の最大値と最小値が求められます。

#include<iostream>
using namespace std;
int main (){
   int x = 15, y = 20;
   cout<<"The numbers are x = "<<x<<"and y = "<<y<<endl;
   cout<<"The max of the numbers is "<<((x + y) + abs(x - y)) / 2<<endl;
   cout<<"The min of the numbers is "<<((x + y) - abs(x - y)) / 2<<endl;
   return 0;
}

出力

The numbers are x = 15and y = 20
The max of the numbers is 20
The min of the numbers is 15

6。プログラムのソースコードを印刷して出力する

プログラムのソースコードを同じプログラムの出力として印刷するには、少し難しい質問であり、プログラミング言語を十分に理解している必要があります。

このプログラムでは、ファイル処理の概念を使用し、コードの記述に使用しているのと同じファイルを開いてから、ファイルの内容を印刷します。

#include <stdio.h>
int main(void){
   FILE *program;
   char ch;
   program = fopen(__FILE__, "r");
   do{
      ch=fgetc(program);
      printf("%c", ch);
   }
   while(ch!=EOF);
      fclose(program);
   return 0;
}

7。 +演算子を使用せずに2つの数値の合計を見つけるプログラム

コード内で-演算子を複数回使用することにより、+演算子を使用せずに2つの数値の合計を見つけることができます。以下のプログラムはその方法を示しています。

#include<iostream>
using namespace std;
int main(){
   int x = 5;
   int y = 5;
   int sum = x - (-y);
   cout<<"The numbers are x = "<<x<<" y = "<<y<<endl;
   cout<<"Their sum = "<<sum;
   return 0;
}

出力

The numbers are x = 5 y = 5
Their sum = 10

8。算術演算子や関係演算子を使用せずに、指定された数が偶数かどうかを確認します。

指定された数が偶数であるかどうかを確認するために、ビット演算子を使用できます。ビット単位の演算子と0x01 数値の0番目のビットをチェックします。 0番目の位置のビットが1の場合、数値は奇数であり、それ以外の場合は偶数です。

#include<iostream>
using namespace std;
int main(){
   int a = 154;
   if(a & 0x01) {
      cout<<a<<" is an odd number";
   } else{
      cout<<a<<" is an even number";
   }
   printf("\n");
   return 0;
}

出力

154 is an even number

9。 /演算子を使用せずに数値を4で割るプログラム。

除算演算子を使用せずに数値を4で除算するには、最後のビットをシフトする右シフト演算子>>を使用できます。

#include<iostream>
using namespace std;
int main(){
   int n = 128;
   cout<<n<<"divided by 4 = ";
   n = n >> 2;
   cout<< n;
   return 0;
}

出力

128 divided by 4 = 32

10.C ++プログラムは、数値が1桁の数値になるまで、数値の桁の合計を再帰的に計算します。

数値のすべての桁を加算して再帰的な合計を計算し、それが1桁かどうかを確認してから停止します。それ以外の場合は、合計が1桁になるまで合計を再計算します。

#include <iostream>
using namespace std;
int main() {
   int a = 534;
   int sum;
   if(a)
      sum = a % 9 == 0 ? 9 : a % 9 ;
   else
      sum = 0;
   cout<<"The final sum is "<<sum;
   return 0;
}

出力

The final sum is 3

  1. C ++で多数を処理しますか?

    C ++では、Boostライブラリを使用して多数を使用できます。このC++Boostライブラリは、広く使用されているライブラリです。これは、さまざまなセクションで使用されます。それはアプリケーションの大きなドメインを持っています。たとえば、ブーストを使用すると、2 64のような多数を使用できます。 C++で。 ここでは、Boostライブラリの例をいくつか示します。大きな整数のデータ型を使用できます。 int128_t、int256_t、int1024_tなどのさまざまなデータ型を使用できます。これを使用すると、最大1024の精度を簡単に取得できます。 最初は、ブーストライブラリを使用して

  2. 配列を使用して数値の平均を計算するC++プログラム

    数値の平均は、すべての数値を加算し、その合計を使用可能な数値の数で割ることによって計算されます。 この例は次のとおりです。 The numbers whose average is to be calculated are: 10, 5, 32, 4, 9 Sum of numbers = 60 Average of numbers = 60/5 = 12 配列を使用して数値の平均を計算するプログラムは次のとおりです。 例 #include <iostream> using namespace std; int main() {    int n, i; &