Un número primo es un número natural mayor que 1, que solo es divisible por 1 y por sí mismo. Los primeros números primos son: 2 3 5 7 11 13 17 19 23 …… En este artículo, construiremos una aplicación para Android Prime Number Checker en Android Studio usando Kotlin y XML. La aplicación verificará si el número ingresado es un número primo o no, si la palabra ingresada es un número primo , se mostrará un Toast con el mensaje «El número ingresado es un número primo». De lo contrario, el mensaje de Toast será «La palabra ingresada no es un número primo». un número primo”.
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 build.gradle(Module)
Debe aplicar el complemento kotlin-android-extensions en el módulo build.gradle de la aplicación como este
plugins { id 'com.android.application' id 'kotlin-android' id 'kotlin-android-extensions' }
Paso 3: trabajar con el archivo activity_main.xml
Vaya a la aplicación > res > diseño > actividad_principal.xm l y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xm l.
XML
<?xml version="1.0" encoding="utf-8"?> <androidx.appcompat.widget.LinearLayoutCompat 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" android:orientation="vertical" tools:context=".MainActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="40dp" android:text="Prime Number Checker" android:textSize="35sp" android:textStyle="bold" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="120dp" android:text="Enter a Number" android:textSize="30sp" android:textStyle="bold" /> <EditText android:id="@+id/number_et" android:layout_width="190dp" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="50dp" /> <Button android:id="@+id/check_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="40dp" android:backgroundTint="#E67212" android:text="Check" android:textColor="@color/white" /> </androidx.appcompat.widget.LinearLayoutCompat>
Después de escribir tanto código, nuestra interfaz de usuario se ve así:
Paso 4: 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.
Kotlin
import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.Toast import androidx.core.text.isDigitsOnly import kotlinx.android.synthetic.main.activity_main.* import android.R.bool import java.lang.Math.sqrt class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // when user clicks on check button. check_btn.setOnClickListener { // check if number_et.text is empty or not if (number_et.text.isNotEmpty()) { // check if et.text is an integer or not. if (number_et.text.isDigitsOnly()) { val num = number_et.text.toString().toInt() // check if num is a prime number or not. if (CheckPrime(num)) { Toast.makeText(this, "Entered number is a Prime Number.", Toast.LENGTH_SHORT).show() } else { Toast.makeText(this, "Entered number is a not a Prime Number.", Toast.LENGTH_SHORT).show() } } // when number_et.text is not an integer value. else { Toast.makeText(this, "please enter a valid number.", Toast.LENGTH_SHORT).show() } } // when number_et.text is empty. else { Toast.makeText(this, "please enter a number", Toast.LENGTH_SHORT).show() } } } // function to check is a number is prime or not. private fun CheckPrime(num: Int): Boolean { // Corner case if (num <= 1) return false // Check from 2 to square root of n for (i in 2..sqrt(num.toDouble()).toInt()) if (num % i == 0) return false return true } }
Producción:
Publicación traducida automáticamente
Artículo escrito por nirajgusain5 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA