Apa Nomor Armstrong di Jawa? Ini Prasyarat dan Algoritma

Diterbitkan: 2021-04-08

Daftar isi

Apa itu Nomor Armstrong?

Suatu bilangan x disebut bilangan Armstrong orde n jika sama dengan jumlah digit-digitnya dipangkatkan n, yaitu:

abc= pow(a,n) + pow(b,n) + pow(c,n)

Bilangan bulat positif yang terdiri dari n angka adalah bilangan Armstrong (orde 3) jika sama dengan jumlah pangkat tiga dari angka-angkanya. Sebagai contoh:

Masukan: 153

Keluaran: Ya

1*1*1 + 5*5*5 + 3*3*3 = 153

Jadi, 153 adalah bilangan Armstrong

Masukan: 121

Keluaran: Tidak

1*1*1 + 2*2*2 + 1*1*1 = 10

Jadi, 120 bukan bilangan Armstrong.

Prasyarat dan Algoritma

Pada artikel ini, kita akan belajar untuk memeriksa apakah suatu nomor input adalah nomor Armstrong atau bukan. Untuk ini, kita akan menggunakan perulangan while dan perulangan for di Java. Untuk memahami program ini, kita memerlukan pengetahuan tentang topik-topik berikut di Java:

  • Pernyataan if-else Java
  • Java untuk Loop
  • Perulangan while dan do-while Java

Algoritma:

  1. Ambil variabel bilangan bulat x
  2. Nilai diberikan ke variabel x
  3. Digit nilai dibagi
  4. Nilai pangkat tiga dari setiap digit ditemukan
  5. Tambahkan nilai semua kubus
  6. Outputnya disimpan ke variabel penjumlahan
  7. Jika jumlah = X, cetak nomor Armstrong

Jika jumlah != X, cetak bukan bilangan Armstrong

Program Cek Nomor Armstrong di Java

1. Nomor Armstrong di Jawa orde 3

Kode:

kelas publik Armstrong{

public static void main(String[] args) {

int x=0,a,temp;

int n=153;//Ini adalah nomor untuk memeriksa Armstrong

suhu = n;

sementara (n>0)

{

a=n%10;

n=n/10;

x=x+(a*a*a);

}

jika(temp==x)

System.out.println(“Nomor Armstrong”);

lain

System.out.println(“Bukan bilangan Armstrong”);

}

}

Keluaran:

Penjelasan

Pertama, nilai bilangan N yang diberikan disimpan dalam variabel integer lain, x. Ini dilakukan karena kita perlu membandingkan nilai bilangan asli dan bilangan akhir di akhir. Perulangan while digunakan untuk melewati bilangan N sampai sama dengan 0. Pada setiap iterasi, digit terakhir dari N disimpan dalam a.

Kemudian hasilnya dihitung dengan pangkat tiga atau menggunakan Math. pow() dan menambahkannya ke x. Ketika digit terakhir dihilangkan dari N, itu dibagi dengan 10. Akhirnya =, temp dan X dibandingkan. Jika mereka sama, itu adalah nomor Armstrong. Jika tidak, tidak.

2. Bilangan Armstrong di Jawa orde n

Kode:

kelas publik Armstrong

{

/* Fungsi untuk menghitung kenaikan ke

daya b */

int daya (int a, panjang b)

{

jika ( b == 0)

kembali 1;

jika (b%2 == 0)

mengembalikan daya(a, b/2)*daya(a, b/2);

mengembalikan a*daya(a, b/2)*daya(a, b/2);

}

/* Berfungsi untuk menghitung urutan bilangan */

int urutan (int a)

{

int n = 0;

sementara (a != 0)

{

n++;

a = a/10;

}

kembali n;

}

// Berfungsi untuk memeriksa apakah angka yang diberikan adalah angka Armstrong atau bukan

boolean Armstrong (int a)

{

// Memanggil fungsi pesanan

int n = urutan(a);

int suhu=a, jumlah=0;

sementara (suhu!=0)

{

int r = suhu%10;

jumlah = jumlah + daya(r,n);

suhu = suhu/10;

}

// Jika memenuhi syarat Armstrong

kembali (jumlah == a);

}

// Program Pengemudi

public static void main(String[] args)

{

Armstrong obj = Armstrong baru();

int a = 153;

System.out.println(obj.isArmstrong(a));

a = 1276;

System.out.println(obj.isArmstrong(a));

}

}

keluaran :

Penjelasan

Dalam program ini, alih-alih loop sementara, kami telah menggunakan rekursi. Fungsi pertama digunakan untuk menghitung bilangan a yang dipangkatkan b. Math.pow(a,b) juga dapat digunakan untuk hal yang sama. Fungsi kedua memeriksa urutan nomor, seperti, 153 adalah urutan 3. Akhirnya, fungsi Boolean Armstrong digunakan untuk mengembalikan apakah nomor tersebut Armstrong atau tidak. Kemudian objek dari kelas Armstrong digunakan untuk memanggil fungsi.

Program Java untuk Mencetak Angka Armstrong dalam Rentang yang Diberikan

Kode:

kelas publik Armstrong

{

public static void main(String[] arg)

{

int i=0,x;

System.out.println("Angka Armstrong antara 0 sampai 999");

sementara (i<1000)

{

x=armstrongAtauTidak(i);

jika(x==i)

System.out.println(i);

saya++;

}

}

statis int armstrongOrNot(int n)

{

int c,a=0;

sementara(n!=0)

{

c=n%10;

a=a+(c*c*c);

t/=10 ;

}

kembalikan;

}

}

Keluaran:

Penjelasan: Dalam program ini, setiap angka antara interval rendah dan tinggi yang diberikan, diperiksa. Posting setiap cek, jumlah dan jumlah digit dikembalikan ke 0.

Kesimpulan

Pada artikel ini, kami membahas nomor Armstrong di java secara rinci. Kami melihat cara memeriksa apakah suatu nomor adalah nomor Armstrong orde n dan orde 3. Kami juga melihat bagaimana Anda bisa mendapatkan semua nomor Armstrong antara batas bawah dan atas.

Jika Anda ingin meningkatkan keterampilan Java Anda, Anda perlu mendapatkan proyek Java ini. Jika Anda tertarik untuk mempelajari lebih lanjut tentang Java, pengembangan full-stack, lihat Program PG Eksekutif upGrad & IIIT-B dalam Pengembangan Perangkat Lunak Full-stack yang dirancang untuk profesional yang bekerja dan menawarkan 500+ jam pelatihan ketat, 9+ proyek , dan penugasan, status Alumni IIIT-B, proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.

Jika Anda ingin mempelajari lebih lanjut tentang Java dan meningkatkan karir teknis Anda, maka jelajahi kursus online Java gratis oleh perusahaan pendidikan tinggi online terbesar di India, upGrad. Hubungi kami untuk lebih jelasnya.

Menjadi Pengembang Tumpukan Penuh

UPGRAD DAN DIPLOMA PG IIIT-BANGALORE DALAM PENGEMBANGAN PERANGKAT LUNAK
DAFTAR SEKARANG @ UPGRAD