Magic Number in Java

bij het programmeren is een magic number Een numerieke waarde die direct in de code wordt gebruikt. Het wordt gebruikt voor identificatiedoeleinden. In deze sectie zullen we bespreken wat een magisch getal is en hoe we een magisch getal kunnen vinden via een Java-programma.

magisch getal in programmeren

een magisch getal is een hardgecodeerde numerieke waarde (tekstwaarde in sommige gevallen) in de code die in een later stadium kan veranderen. Het lijkt willekeurig en heeft geen context of Betekenis. Het is moeilijk te updaten. Bijvoorbeeld:

het gebruik van een dergelijke constante kan ons helpen de bestanden te onderscheiden tussen de vele andere bestandsformaten. Bijvoorbeeld::

  • PDF-bestanden beginnen met de magische tekst % PDF – > Hex (25 50 44 46)
  • PNG-bestanden beginnen met de magische tekst %PNG – > Hex (25 50 4E 47)

waarom magic numbers moeten vermijden?

we zouden de magische getallen niet moeten gebruiken in het programmeren omdat het leidt tot een anti-patroon dat de code moeilijk te begrijpen en te onderhouden maakt. Het verbergt ook de bedoeling, zodat het gebruik van magische getallen moet worden vermeden. De veranderingen in de code zijn ook bitter moeilijker.

het wordt aanbevolen om constant te gebruiken om waarden weer te geven in plaats van magische getallen. Het verbetert de leesbaarheid van de code en biedt eenvoudige wijziging in de code.

magisch getal in de wiskunde

in de wiskunde, indien de som van de cijfers recursief wordt berekend tot een enkel cijfer. Als het enkele cijfer 1 is dan wordt het getal een magisch getal genoemd. Het is vrij vergelijkbaar met de happy number.

bijvoorbeeld, 325 is een magisch getal omdat de som van de cijfers (3+2+5) is 10, en Som opnieuw de resultante (1+0) op, we krijgen een enkel cijfer (1) als resultaat. Het getal 325 is dus een magisch getal.

enkele andere magische getallen zijn 1234, 226, 10, 1, 37, 46, 55, 73, enz.

merk op dat als een getal een magisch getal is, alle mogelijke combinaties van het getal ook de magische getallen zijn.

bijvoorbeeld, 532, 253, 325, 235, 352, 523 de som van cijfers van alle getallen geeft 10 en Som opnieuw de resulterende (1+0), krijgen we een enkel cijfer dat wil zeggen 1. Daarom kunnen we zeggen dat het magische getal en zijn combinaties ook magisch zijn.

laten we de bovenstaande logica in een Java-programma implementeren en controleren of het gegeven getal magisch is of niet.

Java Magic Number Program

MagicNumberExample1.java

Uitvoer 1:

Enter a number you want to check: 325The given number is a magic number.

uitvoer 2:

Enter a number you want to check: 891The given number is a magic number.

laten we een andere logica bekijken om het magische getal te controleren.

MagicNumberExample2.java

Uitvoer 1:

Enter any number to check: 7373 is a magic number.

Output 2:

Enter any number to check: 671671 is not a magic number.

Magic Number vs Happy Number

het enige verschil tussen magic Number en happy number is dat we in een magic number recursief alle cijfers van het getal optellen totdat we een signaalcijfer krijgen, d.w.z. 1. Terwijl in happy number, berekenen we recursief de som van het kwadraat van de cijfers totdat we een enkel cijfer 1 krijgen. Als dit proces resulteert in een eindeloze cyclus van getallen die 4 bevatten, dan wordt het getal een ongelukkig getal genoemd. Bijvoorbeeld, we moeten controleren 19 is magie en gelukkig nummer of niet.

Magic Number Example Happy Number Example
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

in beide gevallen krijgen we 1. Het getal 19 is dus een magisch getal en ook een gelukkig getal.

Leave a Reply