Cプログラミング

 Computer >> コンピューター >  >> プログラミング >> Cプログラミング
  1. コインが三角形に配置されている場合の最大高さのC/C ++プログラム?

    このセクションでは、1つの興味深い問題があります。 N枚のコインがあります。コインをピラミッドとして配置した場合に作成できる最大の高さを見つける必要があります。このように、最初の行は1枚のコインを保持し、2番目の行は2枚のコインを保持します。 与えられた図では、高さ3のピラミッドを作成するために、最低6枚のコインが必要であることがわかります。コインが10枚になるまで高さ4を作ることはできません。次に、最大の高さを確認する方法を見てみましょう。 この式を使用して高さを取得できます。 例 #include<iostream> #include<cmath>

  2. 三角マッチ棒番号のC/C ++プログラム?

    ここでは、ピラミッドを作るために必要なマッチ棒の数を数える方法を以下に示します。ピラミッドのベースが与えられます。したがって、ベースが1の場合、ピラミッドを作成するには3本のマッチ棒が必要です。ベース2の場合は9本のマッチ棒が必要であり、ベースサイズ3の場合は18本のマッチ棒が必要です。 この問題を解決するには、次の式を使用する必要があります- 例 #include <iostream> using namespace std; int main(){    int x;    cout << "Enter

  3. マージソートを使用して配列内の反転をカウントするC/C ++プログラム?

    配列の反転は次のことを示します。配列をソートされた形式に変換するために必要な変更の数。配列がすでにソートされている場合は、0回の反転が必要です。それ以外の場合は、配列が反転されている場合、反転の数は最大になります。 この問題を解決するために、マージソートのアプローチに従って時間の複雑さを軽減し、分割統治アルゴリズムで作成します。 入力 A sequence of numbers. (1, 5, 6, 4, 20). 出力 番号を昇順で並べ替えるのに必要な反転の数。 Here the number of inversions are 2. First inversion: (1, 5, 4,

  4. 整数のセットビットをカウントするC/C ++プログラム?

    ここでは、整数のセットビット数を確認する方法を説明します。数値の2進表現では、設定されたビットは1です。たとえば、数値13には3つのセットビット1101があります。したがって、カウントは3になります。 この問題を解決するために、番号を右にシフトし、LSbが1の場合は、カウントを増やします。番号が0になるまで実行されます。 アルゴリズム countSetBit() begin    count := 0    while count is not 0, do       if LSb of n is set, then &

  5. 奇数回発生回数を見つけるためのC/C ++プログラム?

    このプログラムでは、配列内で奇数回発生している数値を取得する方法を確認します。多くの異なるアプローチがあります。最も簡単なアプローチの1つは、ZOR操作を実行することです。数値がそれ自体とXORされる場合、それは0になります。したがって、数値が偶数回XORされる場合、それは0になり、そうでない場合、数値自体になります。 このソリューションには1つの問題があります。複数の要素の出現回数が奇数の場合、そのうちの1つが返されます。 アルゴリズム getNumOccurredOdd(arr、n) begin    res := 0    for each e

  6. システムをシャットダウンするC/C ++プログラム?

    ここでは、単純なCまたはC++コードを記述してシステムをシャットダウンする方法を説明します。シャットダウンプロセスはOSによって異なります。 Linuxユーザーの場合は、このターミナルコマンドを使用してシャットダウンできます。 shutdown –P now Windowsシステムを使用している場合は、このコマンドを使用できます- c:\\windows\\system32\\shutdown /i LinuxとWindowsのコードが表示されます 例(Linux) #include<iostream> using namespace std; int main()

  7. 最大の合計連続サブアレイ用のC/C ++プログラム?

    整数の配列が与えられます。隣接するすべての要素の合計を見つける必要があります。合計が最大の場合、出力として送信されます。 動的計画法を使用して、現在の項までの最大合計を保存します。配列内の連続する要素の合計を見つけるのに役立ちます。 Input: An array of integers. {-2, -3, 4, -1, -2, 1, 5, -3} Output: Maximum Sum of the Subarray is : 7 アルゴリズム maxSum(array、n) 入力-メイン配列、配列のサイズ。 出力-最大合計。 Begin    tempMax :

  8. 基本的なユークリッドアルゴリズムのCプログラム?

    ここでは、2つの数値のGCDを見つけるためのユークリッドアルゴリズムを確認します。 GCD(最大公約数)は、ユークリッドの互除法を使用して簡単に見つけることができます。 2つの異なるアプローチがあります。 1つは反復的で、もう1つは再帰的です。ここでは、再帰的なユークリッドアルゴリズムを使用します。 アルゴリズム EuclidanAlgorithm(a、b) begin    if a is 0, then       return b    end if    return gcd(b mod a,

  9. 卵落としパズルのCプログラム-DP-11?

    これは有名なパズルの問題です。 n階建ての建物があるとすると、m個の卵がある場合、卵を壊さずに安全に落とせる床を見つけるために必要な最小の滴数をどのように見つけることができますか。 覚えておくべき重要なポイントがいくつかあります- 卵が特定の階から壊れない場合、それは下の階でも壊れません。 特定の階から卵が割れる場合、上層階すべてで卵が割れる。 卵が壊れたときは廃棄する必要があります。そうしないと、再び使用できます。 入力 -卵の数と最大フロア。卵の数が4で、最大フロアが10だとします。 出力 -最小試行回数4。 アルゴリズム eggTrialCount(eggs、floors)

  10. Cの一般的なキーワード?

    マクロはCまたはC++で使用されることがわかっていますが、型チェックの機能はありません。マクロは、その中で任意のタイプの引数を取ることができます。次の例は、このケースを明確に示しています。 例 #include<stdio.h> #define INCREMENT(X) ++X main() {    int x = 5; float y = 2.56; char z = 'A';    printf("Integer Increment: %d\n", INCREMENT(x));   &nbs

  11. Cの関数指定子とは何ですか?

    CおよびC++には、いくつかの関数指定子があります。関数指定子は、関数プロパティを指定するために使用されます。 C++にはインラインがあります 関数指定子。 Cには、_Noreturn関数指定子があります。これは、1つの関数が何も返さないことを示すために使用されます。 例 #include<stdio.h> int myAdd(int a, int b){    return a + b; } main() {    int x = 10, y = 20;    printf("The value is: %d\

  12. nビットのグレイコードを生成するためのバックトラッキングアプローチ?

    このセクションでは、バックトラッキングアプローチを使用してnビットのグレイコードを生成する方法を説明します。 nビットのグレイコードは基本的に0から2^n – 1のビットパターンであり、連続するパターンは1ビット異なります。したがって、n =2の場合、グレイコードは(00、01、11、10)であり、10進数に相当するものは(0、1、3、2)です。プログラムは、グレイコード値に相当する10進数を生成します。 アルゴリズム generateGray(arr、n、num) begin    if n = 0, then       insert n

  13. 各要素がその前後の要素の数を示す順列?

    このセクションでは、1つの問題が発生します。ここでは、n個の要素が配列で指定されています。各要素がその前後に存在する要素の数を示すように、その配列の順列が存在するかどうかを確認する必要があります。 配列要素が{2、1、3、3}であると仮定します。適切な順列は{3、1、2、3}のようなものです。ここで、最初の3は、その隣に3つの要素があることを示し、1は、この前に1つの要素しかないことを示します。 2は、その前に2つの要素があることを示し、最後の3つは、その前に3つの要素があることを示します。 アルゴリズム checkPermutation(arr、n) begin    

  14. 多くの二分探索の実装における問題?

    二分探索アルゴリズムは線形探索アルゴリズムよりも優れていることがわかっています。このアルゴリズムの実行には、O(log n)の時間がかかります。ほとんどの場合、実装されたコードにはいくつかの問題があります。以下のような1つの二分探索アルゴリズム関数を考えてみましょう- 例 int binarySearch(int array[], int start, int end, int key){    if(start <= end){       int mid = (start + end) /2); //mid location of t

  15. 文字列が互いに回転しているかどうかをチェックするプログラム?

    ここでは、2つの文字列が互いに回転しているかどうかを判断できる1つのプログラムを示します。文字列の回転は-のようなものです 2つのストリングがS1=‘HELLO’、およびS2 =‘LOHEL’であるとすると、それらは互いに回転します。 HELLOを左に3回転させると、LOHELになります。 この問題を解決するために、最初の文字列をそれ自体と連結してから、2番目の文字列が連結された文字列に存在するかどうかを確認します。したがって、HELLOの場合は、HEL LOHELになります。 LO。次に、この連結された文字列にはLOHELが含まれます。 [HELLOHELLO]。 アルゴリズム

  16. 選択ソートをわずかに改善するソートアルゴリズム?

    ここでは、選択ソートのいくつかの改善が見られます。選択ソートは、配列から最小要素または最大要素のいずれかを取得し、その要素を正しい位置に配置することで機能することがわかっています。このアプローチでは、両方の方法で配列を並べ替えます。ここでは、最大値と最小値を同時に取得してから、配列を両端から並べ替えます。より良いアイデアを得るためのアルゴリズムを見てみましょう。 アルゴリズム twoWaySelectionSort(arr、n) begin    for i := 0, and j := n-1, increase i by 1, and decrease j by 1,

  17. 四次方程式の根の和と積の絶対差は?

    このセクションでは、根の合計と四次方程式の根の積の絶対差を取得する方法を説明しますか? 四次方程式は𝑎𝑥4のようなものです +𝑏𝑥3 +𝑐𝑥2 +𝑑𝑥+𝑒 方程式を解いてから、通常のプロセスで根の積と和を取得しようとしますが、これには時間がかかり、そのアプローチはそれほど効率的ではありません。この種の方程式には、2つの式があります。根の合計は常に-𝑏∕𝑎であり、根の積は常に𝑒∕𝑎です。したがって、∣−𝑏∕𝑎−𝑒∕𝑎∣ ∣の値のみを見つける必要があります。 アルゴリズム rootSumProdDiff(a、b、c、d、e) begin   &nb

  18. Nの最初のX桁と最後のX桁の絶対差は?

    ここでは、数値Nの最初と最後のX桁の違いを取得する方法を説明します。数値とXが示されています。この問題を解決するには、数値の長さを見つけてから、モジュラス演算子を使用して最後のx桁を切り取る必要があります。その後、最初のx桁を除くすべての桁を数字から切り取ります。次に、差を取得し、結果を返します。数値をN=568424とします。Xは2なので、最初の2桁は56で、最後の2桁は24です。差は(56-24)=32です。 アルゴリズム diffFirstLastDigits(N、X) begin    p := 10^X    last := N mod p

  19. 配列の非素数と素数の積の絶対差は?

    ここでは、配列のすべての素数とすべての非素数の積の絶対差を見つける方法を説明します。この問題を解決するには、数が素数であるかどうかを確認する必要があります。素数性テストの1つの可能な方法は、数値が2からその数値の平方根までの任意の数値で割り切れないことを確認することです。したがって、このプロセスには𝑂(√𝑛)の時間がかかります。次に、製品を入手して、絶対的な違いを見つけてください。 アルゴリズム diffPrimeNonPrimeProd(arr) begin    prod_p := product of all prime numbers in arr  

  20. 配列の非素数と素数の合計の絶対差は?

    ここでは、配列のすべての素数とすべての非素数の合計の絶対差を見つける方法を説明します。この問題を解決するには、数が素数であるかどうかを確認する必要があります。素数性テストの1つの可能な方法は、数値が2からその数値の平方根までの任意の数値で割り切れないことを確認することです。したがって、このプロセスには𝑂(√𝑛)の時間がかかります。次に、合計を取得して、絶対差を見つけてください。 アルゴリズム diffPrimeNonPrimeSum(arr) begin    sum_p := sum of all prime numbers in arr    

Total 1436 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:20/72  20-コンピューター/Page Goto:1 14 15 16 17 18 19 20 21 22 23 24 25 26