Giả sử, chúng ta được cung cấp một mảng 'arr' có kích thước n chứa các số nguyên dương. Chúng tôi phải tìm các số chẵn và giảm chúng đi 1. Chúng tôi in ra mảng sau quá trình này.
Vì vậy, nếu đầu vào là n =7, arr ={10, 9, 7, 6, 4, 8, 3}, thì đầu ra sẽ là 9 9 7 5 3 7 3.
Các bước
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
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
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
#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; }
Đầu vào
7, {10, 9, 7, 6, 4, 8, 3}
Đầu ra
9 9 7 5 3 7 3