Rumah > pembangunan bahagian belakang > C++ > Dalam pengaturcaraan C, tambahkan nombor terkecil pada tatasusunan supaya jumlah tatasusunan menjadi nombor genap

Dalam pengaturcaraan C, tambahkan nombor terkecil pada tatasusunan supaya jumlah tatasusunan menjadi nombor genap

王林
Lepaskan: 2023-08-25 17:41:06
ke hadapan
1139 orang telah melayarinya

Dalam pengaturcaraan C, tambahkan nombor terkecil pada tatasusunan supaya jumlah tatasusunan menjadi nombor genap

Diberi tatasusunan, tambahkan nombor terkecil (sepatutnya lebih besar daripada 0) pada tatasusunan supaya jumlah tatasusunan menjadi nombor genap.

Input- 1 2 3 4,

Output- 2

Penjelasan - Jumlah tatasusunan ialah 10, jadi kita

2 untuk menambah nombor minimum

Kaedah 1: Kira jumlah semua elemen tatasusunan, kemudian semak sama ada jumlah itu adalah nombor genap, kemudian tambah nombor minimum sebagai 2, jika tidak tambah nombor minimum sebagai 1.

Input- 1 2 3 4,

Output- 2

Penjelasan-Jumlah tatasusunan ialah 10, jadi kita Tambahkan nombor 2 terkecil untuk menjadikan jumlahnya genap.

Contoh

#include<iostream>
using namespace std;
int main() {
   int arr[] = { 1, 2, 3, 4};
   int n=4;
   int sum=0;
   for (int i = 0; i <n; i++) {
      sum+=arr[i];
   }
   if (sum % 2==0) {
      cout <<"2";
   } else {
      cout <<"1";
   }
   return 0;
}
Salin selepas log masuk

Kaedah 2 - Kira kiraan unsur ganjil dalam tatasusunan. Jika bilangan kejadian ganjil ialah nombor genap, kembalikan 2, jika tidak kembalikan 1.

Input - 1 2 3 4 5

Output < /strong>- 1

Penjelasan- No. dalam tatasusunan ialah 3

Tambah nombor minimum 1 untuk menjadikan jumlahnya genap.

Contoh

#include<iostream>
using namespace std;
int main() {
   int arr[] = { 1, 2, 3, 4,5};
   int n=5;
   int odd = 0;
   for (int i = 0; i < n; i++) {
      if (arr[i] % 2!=0) {
         odd += 1;
      }
   }
   if (odd % 2==0) {
      cout <<"2";
   } else {
      cout <<"1";
   }
   return 0;
}
Salin selepas log masuk

Kaedah 3 - Mengambil pembolehubah bendera (dimulakan kepada 0). Setiap kali kami menjumpai elemen ganjil dalam tatasusunan, kami melakukan operasi NOT(!) pada pembolehubah Boolean. Operator logik ini menyongsangkan nilai pembolehubah bendera (bermaksud jika 0, tukar pembolehubah kepada 1 dan sebaliknya).

Input- 1 2 3 4 5

Output- 1

Penjelasan- Pembolehubah dimulakan kepada 0.

Melintasi tatasusunan

1 ialah nombor ganjil dan pembolehubah berubah sebanyak 1.

2 ialah nombor genap dan

3 ialah nombor ganjil, pembolehubah berubah kepada 0.

4 ialah nombor genap

4 p>

5 ialah nombor ganjil, pembolehubah menjadi 1

Jika nilai pembolehubah ialah 1, bermakna terdapat nombor ganjil unsur ganjil, dan bilangan minimum elemen yang menjadikan jumlah unsur genap ialah tambah 1.

Jika tidak kuantiti minimum ialah 2.

Contoh

#include<iostream>
using namespace std;
int main() {
   int arr[] = { 1, 2, 3, 4,5};
   int n=5;
   bool odd = 0;
   for (int i = 0; i < n; i++) {
      if (arr[i] % 2!=0) {
         odd = !odd;
      }
   }
   if (odd) {
      cout <<"1";
   } else {
      cout <<"2";
   }
   return 0;
}
Salin selepas log masuk

Atas ialah kandungan terperinci Dalam pengaturcaraan C, tambahkan nombor terkecil pada tatasusunan supaya jumlah tatasusunan menjadi nombor genap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan