Olimpiada masalalari



Yüklə 0,83 Mb.
səhifə23/34
tarix30.03.2023
ölçüsü0,83 Mb.
#91326
1   ...   19   20   21   22   23   24   25   26   ...   34
Olimpiada masalalari

E’tibor bering! Chegaralangan M = {a1, a2, ..., an} to‘plam berilgan bo‘lsin. M to‘plamning n elementlaridan tashkil topgan har qanday tartiblangan to‘plam bu to‘plamning o‘rin almashinuvchisi deb ataladi.

Qoidaga asosan, n elementlarni turli xil usulda o‘rin almashtirish quyidagiga teng:



0! = 1 ekanligini unutmang.
#include
#include
using namespace std;
long float Fakt(int n)
{
long float S = 1;
for (int i = 1; i <= n; i++)
S *= i;
return S;
}
int main()
{

long float S = 1, n;


cout << "n="; cin >> n;
S = Fakt(n);
cout << S << endl;
return 0;
}
157-misol. Quyidagi 2, 3, 4, 5, 9 raqamlardan nechta besh xonali juft son tuzish mumkin?

Yechimning matematik algoritmi

Juft raqam bilan tugagan sonlar juft bo‘ladi. Biznng misolimizda juft raqam 2 ta.


Juft sonlarning bittasi barcha hollarda oxirgi o‘rinda joylashgan deb faraz qilaylik, u holda barcha olinayotgan sonlar juft bo‘ladi. Bunday sonlar nechta? Ular qolgan 4 ta raqamdan nechta o‘rin almashtirishlar qilish mumkin bo‘lsa, shuncha bo‘ladi, ya‘ni 4! ta. Lekin berilgan raqamlar ichida yana bitta jufti bor-ku. Endilikda bu ikkinchi raqam oxirgi o‘rinda turibdi deb faraz qilaylik, u holda yana juft sonlar hosil bo‘laveradi va ular ham 4! ta bo‘ladi.
Besh xonali juft sonlarning jami miqdori ga teng.
#include
#include
using namespace std;
int Fakt(int n)
{
int S=1;
for (int i = 1; i <= n; i++)
S *= i;
return S;
}
int main()
{


int S = 0, k, n;
cout << "Sonlar miqdorini kiriting n="; cin >> n;
cout << "Bu sonlar tarkibida nechta juft son bor?: k="; cin >> k;
for (int i = 1; i <= k; i++)
S += Fakt(n-1);
cout << S << endl;
return 0;
}



Yüklə 0,83 Mb.

Dostları ilə paylaş:
1   ...   19   20   21   22   23   24   25   26   ...   34




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin