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

Cポインタを使用して配列内の完全な正方形要素の合計を見つけるプログラム。


問題

ポインタを使用して、配列内の完全な正方形要素の合計を見つけるプログラムを作成します。

入力として配列内の要素の数が与えられ、配列内に存在するそれらの要素のすべての完全な二乗の合計が出力されます。

解決策

たとえば、

Input= 1, 2, 3, 4, 5, 9,10,11,16
The perfect squares are 1, 4, 9,16.
Sum = 1 + 4 + 9 +16 = 30
Output: 30

アルゴリズム

ポインタを使用して配列内の完全な正方形要素の合計を見つけるには、以下のアルゴリズムを参照してください。

ステップ1 −実行時に配列内の要素の数を読み取ります。

ステップ2 −要素を入力します。

ステップ3 − sum=0を宣言して初期化します

ステップ4 −ポインタ変数を宣言します。

ステップ5 −ポインタ変数を使用して、配列要素が完全な正方形であるかどうかを確認します

ステップ6 −完全な正方形の場合は、sum =sum + number

を計算します。

ステップ7 −合計を返します。

以下は、ポインターを使用して配列内の完全な正方形要素の合計を見つけるCプログラムです-

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int sumPositive(int n,int *a){
   int i,sum=0,m;
   for(i=0;i<n;i++){
      m=sqrt(*(a+i));
      if(pow(m,2)==*(a+i)){
         sum+=*(a+i);
      }
   }
   return sum;
}
int main(){
   int i,*a,n;
   printf("Enter the size of array:\n");
   scanf("%d",&n);
   a=(int*)malloc(n*sizeof(int));
   printf("Enter the elements of array:\n");
   for(i=0;i<n;i++){
      scanf("%d",a+i);
   }
   printf("Sum of positive square elements is %d",sumPositive(n,a));
   return 0;
}

出力

上記のプログラムを実行すると、次の出力が生成されます-

Enter the size of array:
10
Enter the elements of array:
1
2
3
4
5
6
7
8
9
10
Sum of positive square elements is 14

  1. Pythonプログラムで配列の合計を見つける

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −配列の合計を計算するために必要な配列が与えられます。 合計を取得するために各インデックスで配列と要素全体をトラバースするブルートフォースアプローチについては、以下で説明します。合計を取得するための各インデックスについては、以下で説明します。 例 # sum function def sum_(arr,n):    # using built-in function    return(sum(arr)) # main arr = [11,22,33,44,55,66

  2. 配列の合計を見つけるPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 入力として配列が与えられた場合、与えられた配列の合計を計算する必要があります。 ここでは、ブルートフォースアプローチに従うことができます。つまり、リストをトラバースし、各要素を空の合計変数に追加します。最後に、合計の値を表示します。 以下で説明するように、組み込みの合計関数を使用して別のアプローチを実行することもできます。 例 # main arr = [1,2,3,4,5] ans = sum(arr,n) print ('Sum of the array is '