94. O’lchami 15 ga teng butun sonli massiv berilgan.musbat elementlar ko’paytmasi va manfiy elementlar ko’paytmasining moduli orasidagi farqni toping.
Quyidagi C++ kodida berilgan o'lchamga ega butun sonli massiv yaratiladi va musbat elementlar ko’paytmasi va manfiy elementlar ko’paytmasining moduli orasidagi farq hisoblanadi:
cpp
#include
#include
using namespace std;
int main() {
int n = 15; // Massiv o'lchami
int massiv[n] = {3, 5, -2, 8, 0, -7, 6, -4, 1, 2, 9, -5, 7, 4, -1};
int musbat_ko'paytma = 1;
int manfiy_ko'paytma = 1;
for (int i = 0; i < n; i++) {
if (massiv[i] > 0) {
musbat_ko'paytma *= massiv[i];
} else {
manfiy_ko'paytma *= massiv[i];
}
}
int farq = abs(musbat_ko'paytma) - abs(manfiy_ko'paytma);
cout << "Musbat elementlar ko'paytmasi: " << musbat_ko'paytma << endl;
cout << "Manfiy elementlar ko'paytmasi: " << manfiy_ko'paytma << endl;
cout << "Farq: " << farq << endl;
return 0;
}
Bu kodda, n o'lchamli butun sonli massiv yaratiladi va musbat_ko'paytma o'zgaruvchisi musbat elementlar ko’paytmasini, manfiy_ko'paytma o'zgaruvchisi manfiy elementlar ko’paytmasini saqlash uchun foydalaniladi. farq o'zgaruvchisi musbat elementlar ko’paytmasi va manfiy elementlar ko’paytmasining moduli orasidagi farqni saqlash uchun foydalaniladi.
for tsikli orqali massiv elementlari tekshiriladi. Agar element musbat bo'lsa, musbat_ko'paytma o'zgaruvchisi bilan ko'paytiriladi. Aks holda, element manfiy bo'lsa, manfiy_ko'paytma o'zgaruvchisi bilan ko'paytiriladi.
Natijada, musbat elementlar ko’paytmasi, manfiy elementlar ko’paytmasi va moduli orasidagi farq konsolga chiqariladi.
Misol uchun, yuqoridagi koddagi massiv natijasi quyidagicha:
Musbat elementlar ko'paytmasi: 6531840
Manfiy elementlar ko'paytmasi: -20160
Farq: 6511680
Bu yerga kirgan massivda musbat elementlar 3, 5, 8, 6, 1, 2, 9, 7 va 4 ga teng bo'lib, ularning ko'paytmasi 6531840 ga teng. Manfiy elementlar esa -2, -7, -4, -5 va -1 ga teng bo'lib, ularning ko'paytmasi -20160 ga teng. Musbat elementlar ko’paytmasi va manfiy elementlar ko’paytmasi moduli orasidagi farq esa 6511680 ga teng.
Do'stlaringiz bilan baham: |