|
Kiberxavfsizlik” fakulteti 713-21- guruh cry
|
bet | 2/5 | Sana | 15.02.2024 | Hajmi | 3,64 Mb. | | #156960 |
25 xonali son uchun Natija:
100 xonali son uchun Natija:
2-amaliy ish
Mavzu: Eyler funksiyasi, berilgan modul bo‘yicha birlamchi ildizni hisoblovchi dasturiy ta‘minoti ishlab chiqish.
10 - Variant
Eyler funksiyasining multiplikativligi – Eyler funksiyasining asosiy xossalaridan biri bu uning multiplikativligidadir. Ikki o‘zaro tub sonlar uchun Eyler funksiyasining qiymati
ga teng bo‘ladi.
Natural son uchun Eyler funksiyasi qiymati quyidagicha hisoblanadi:
bu yerda tub son bo‘lib, ning barcha tub bo‘luvchilarini o‘z ichiga oladi.
Endi o‘zimni variantimni qo‘yib hisoblayman.
Agar n tub son bo‘lsa = n-1 ga teng bo‘ladi.
n = 52;
24
Demak n = 52 Eyler funksiyasi qiymati = 24
Endi o‘zimga berilgan variantdagi sonni Eyler funksiyasi qiymatini tekshirish uchun dasturiy kodi tuzaman.
Dastur kodi:
import java.util.Scanner;
public class EulerFunction {
// Eyler funksiyasini hisoblash
public static long eulerFunction(long n) {
long result = n; // Natijaga n ni tenglashi mumkin, lekin undan avval nisbatan ko'p sonlarga ularni olib tashlamak uchun
for (long i = 2; i * i <= n; i++) {
if (n % i == 0) {
result -= result / i;
while (n % i == 0) {
n /= i;
}
}
}
if (n > 1) {
result -= result / n;
}
return result;
}
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// Eyler funksiyasini hisoblash uchun test soni
long testNumber = 12; // O'zgartirilayotgan son
System.out.print("Sonni kiriting: ");
testNumber = input.nextLong();
long result = eulerFunction(testNumber);
System.out.println("Eyler funksiyasi (" + testNumber + ") = " + result);
}
}
|
| |