配列内の偶数を減らすC++コード
正の整数を含むサイズnの配列'arr'が与えられたとします。偶数を見つけて1ずつ減らす必要があります。このプロセスの後に配列を出力します。
したがって、入力がn =7、arr ={10、9、7、6、4、8、3}のような場合、出力は9 9 7 5 373になります。
ステップ
これを解決するには、次の手順に従います-
for initialize i := 0, when i < n, update (increase i by 1), do: if arr[i] mod 2 is same as 0, then: (decrease arr[i] by 1) print(arr[i]) print a new line
例
理解を深めるために、次の実装を見てみましょう-
#include <bits/stdc++.h> using namespace std; #define N 100 void solve(int n, int arr[]) { for (int i = 0; i < n; i++){ if (arr[i] % 2 == 0) arr[i]--; cout<< arr[i] << " "; } cout<< endl; } int main() { int n = 7, arr[] = {10, 9, 7, 6, 4, 8, 3}; solve(n, arr); return 0; }
入力
7, {10, 9, 7, 6, 4, 8, 3}
出力
9 9 7 5 3 7 3
-
C++の配列内のすべての素数の積
いくつかの要素を持つ整数配列arr[]が与えられた場合、タスクはその数のすべての素数の積を見つけることです。 素数は、1で割った数、またはその数自体です。または、素数は、1とその数自体を除いて他の数で割り切れない数です。 1、2、3、5、7、11など 与えられた配列の解を見つける必要があります- 入力 −arr [] ={11、20、31、4、5、6、70} 出力 − 1705 説明 −配列の素数は− 11、31、5であり、それらの積は1705 入力 − arr [] ={1、2、3、4、5、6、7} 出力 − 210 説明 −配列の素数は− 1、2、3、5、7
-
C++の両側に同じ数の偶数または奇数の配列インデックス
ここでは、1つの配列が与えられたと仮定して、1つの問題が発生します。 n個の要素があります。左側の偶数の頻度と右側の偶数の頻度が同じであるか、左側の奇数の頻度が右側の奇数の頻度と同じである1つのインデックスを見つける必要があります。そのような結果がない場合は、-1を返します。 配列が{4、3、2、1、2、4}のようであると仮定します。出力は2です。インデックス2の要素は2で、左側に奇数が1つだけあり、右側に奇数が1つだけあります。 この問題を解決するために、左右の情報を格納するためのペアの2つのベクトルを作成します。左側のベクトルは左側の奇数と偶数の頻度を格納し、右側のベクトルは右側でも同