Magic Number In Java
i programmering er et magisk tall en numerisk verdi som brukes direkte i koden. Den brukes til identifikasjonsformål. I denne delen vil vi diskutere hva som er et magisk nummer og hvordan kan vi finne et magisk nummer gjennom Et Java-program.
Magisk Tall I Programmering
et magisk tall er en hardkodet numerisk verdi (tekstverdi i noen tilfeller) i koden som kan endres på et senere tidspunkt. Det virker som vilkårlig og har ingen kontekst eller mening. Det er vanskelig å oppdatere. Eksempelvis:
Ved hjelp av en slik konstant kan hjelpe oss å skille filene blant de mange andre filformater. For eksempel:
- PDF-Filer begynner med den magiske teksten %PDF – > Hex (25 50 44 46)
- PNG-Filer begynner med den magiske teksten % PNG – > Hex (25 50 4E 47)
hvorfor magiske tall bør unngå?
vi bør ikke bruke de magiske tallene i programmering fordi Det fører til et anti-mønster som gjør koden vanskelig å forstå og vedlikeholde. Det skjuler også intensjonen, slik at bruk av magiske tall bør unngås. Endringene i koden er også bitter vanskeligere.
det anbefales at du bruker konstant til å representere verdier i stedet for å bruke magiske tall. Det forbedrer lesbarheten av koden og gir enkel endring i koden.
Magisk Tall I Matematikk
i matematikk, hvis summen av sifrene rekursivt beregnes til et enkelt siffer. Hvis ensifret er 1, kalles tallet et magisk nummer. Det er ganske lik det lykkelige nummeret.
for eksempel er 325 et magisk tall fordi summen av sifrene (3+2+5) er 10, og igjen oppsummere den resulterende (1 + 0), får vi et enkelt siffer (1) som resultat. Derfor er tallet 325 et magisk tall.
noen andre magiske tall er 1234, 226, 10, 1, 37, 46, 55, 73, etc.
Merk at hvis et tall er et magisk tall, vil alle mulige kombinasjoner av tallet også være de magiske tallene.
for eksempel, 532, 253, 325, 235, 352, 523 summen av sifrene i alle tallene gir 10 og igjen oppsummere den resulterende (1 + 0), får vi et ensifret dvs. 1. Derfor kan vi si at det magiske tallet og dets kombinasjoner også er magiske.
la oss implementere logikken ovenfor i Et Java-program og sjekke om det oppgitte nummeret er magisk eller ikke.
Java Magisk Nummer Program
MagicNumberExample1.java
Utgang 1:
Enter a number you want to check: 325The given number is a magic number.
Utgang 2:
Enter a number you want to check: 891The given number is a magic number.
La oss se en annen logikk for å sjekke det magiske nummeret.
MagicNumberExample2.java
Utgang 1:
Enter any number to check: 7373 is a magic number.
Utgang 2:
Enter any number to check: 671671 is not a magic number.
Magic Number vs Happy Number
den eneste forskjellen mellom magiske tall og glade tall er at i et magisk tall oppsummerer vi alle sifrene i tallet rekursivt til vi får et signalsiffer, dvs. 1. Mens vi er i lykkelig nummer, beregner vi rekursivt summen av kvadratet av siffer til vi får et enkelt siffer 1. Hvis denne prosessen resulterer i en endeløs syklus med tall som inneholder 4, kalles tallet et ulykkelig tall. For eksempel må vi sjekke 19 er magisk og lykkelig nummer eller ikke.
Eksempel På Magisk Tall | Eksempel På Lykkelig Tall |
---|---|
We have to check n = 191 + 9 = 101 + 0 = 1 |
We have to check n=1912+ 92 = 1 + 81 = 8282+ 22 = 64 + 4 = 6862+ 82 = 36 + 64 = 10012+ 02+02 = 1 + 0 + 0 = 1 |
i begge tilfeller får vi 1. Derfor er tallet 19 et magisk tall og også et lykkelig nummer.
Leave a Reply