#xml file-
<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"> </androidx.constraintlayout.widget.ConstraintLayout>
#java file -
package com.example.fact;
import androidx.appcompat.app.AppCompatActivity; import android.annotation.SuppressLint; import android.os.Bundle; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class MainActivity extends AppCompatActivity { @SuppressLint({"MissingInflatedId", "LocalSuppress", "SetTextI18n"}) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView result = findViewById(R.id.txtShow); Button submit = findViewById(R.id.btnSubmit); EditText input = findViewById(R.id.etInput);
submit.setOnClickListener(view -> {
String number = input.getText().toString();
int n = factorial(Integer.parseInt(number));
result.setText("The factorial of " + number + " is " + n);
});
}
private int factorial(int n) {
if (n == 0) {
return 1;
} else {
return n * factorial(n - 1);
}
}
}