¿Qué es un número automórfico? Se dice que un número es automórfico si su cuadrado termina en los mismos dígitos que el propio número.
Ejemplos:
Input : N = 76 Output : Automorphic Explanation: As 76*76 = 5776 Input : N = 25 Output : Automorphic As 25*25 = 625 Input : N = 7 Output : Not Automorphic As 7*7 = 49
Implementación paso a paso
Paso 1: Crear un nuevo proyecto
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Tenga en cuenta que seleccione Kotlin como lenguaje de programación.
Paso 2: trabajar con el archivo activity_main.xml
Vaya a la aplicación > res > diseño > actividad_principal.xml y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xml .
XML
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" android:background="@color/teal_200"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Automorphic Number or Not" android:textColor="@color/black" android:textSize="26sp" app:layout_constraintBottom_toTopOf="@+id/textView" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.491" /> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Enter a number to check Automorphic Number" android:textColor="@color/black" android:textSize="18sp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintHorizontal_bias="0.494" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.4" /> <EditText android:id="@+id/etNum" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="10dp" android:hint="ENTER THE NUMBER" android:inputType="number" app:layout_constraintEnd_toEndOf="@+id/textView" app:layout_constraintStart_toStartOf="@+id/textView" app:layout_constraintTop_toBottomOf="@+id/textView" /> <Button android:id="@+id/btnCheck" android:layout_width="149dp" android:layout_height="50dp" android:layout_margin="10dp" android:layout_marginTop="16dp" android:backgroundTint="@color/black" android:text="Check" android:textColor="@color/teal_700" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="@+id/etNum" app:layout_constraintHorizontal_bias="0.496" app:layout_constraintStart_toStartOf="@+id/etNum" app:layout_constraintTop_toBottomOf="@+id/etNum" app:layout_constraintVertical_bias="0.113" /> </androidx.constraintlayout.widget.ConstraintLayout>
Paso 3: trabajar con el archivo MainActivity.kt
Vaya al archivo MainActivity.kt y consulte el siguiente código. A continuación se muestra el código del archivo MainActivity.kt . Se agregan comentarios dentro del código para comprender el código con más detalle. Aquí vincularemos las vistas y escribiremos la lógica de la aplicación.
Kotlin
import android.R.bool import android.os.Bundle import android.widget.Button import android.widget.EditText import android.widget.Toast import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { lateinit var btnCheck : Button lateinit var etNum : EditText override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) supportActionBar?.hide() // Binding the views btnCheck = findViewById(R.id.btnCheck) etNum = findViewById(R.id.etNum) btnCheck.setOnClickListener { val n = etNum.text.toString().length val num = etNum.text.toString().toInt() var temp = num var result = 0 if (isAutomorphic(num)) Toast.makeText(this, "Automorphic Number", Toast.LENGTH_SHORT).show() else Toast.makeText(this, "Not an Automorphic Number", Toast.LENGTH_SHORT).show() } } fun isAutomorphic(N: Int): Boolean { // Store the square var N = N var sq = N * N // Start Comparing digits while (N > 0) { // Return false, if any digit of N doesn't // match with its square's digits from last if (N % 10 != sq % 10) return false // Reduce N and square N /= 10 sq /= 10 } return true } }
Producción:
Publicación traducida automáticamente
Artículo escrito por ayushpandey3july y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA