কম্পিউটার টিউটোরিয়াল

এডিটটেক্সটের মান জোড় না বিজোড় (Even/Odd) কীভাবে চেক করবেন?

অ্যান্ড্রয়েডে EditText-এ ইনপুট নেয়া এবং প্রথম অঙ্ক জোড়/বিজোড় চেক করা

এই উদাহরণটি দেখাবে কিভাবে ব্যবহারকারী EditText-এ সংখ্যা ইনপুট দিয়ে বাটনে ক্লিক করলে প্রোগ্রামটি ইনপুটের প্রথম অঙ্কটি জোড় (Even) নাকি বিজোড় (Odd) তা চেক করে টোস্ট মেসেজ দেখাবে।

ধাপ ১: নতুন প্রজেক্ট তৈরি করুন

Android Studio-তে File → New Project দিয়ে প্রজেক্ট তৈরি করুন।

ধাপ ২: লেয়াউট ফাইল (res/layout/activity_main.xml)

এখানে একটি EditText (ইনপুট টাইপ নাম্বার) এবং একটি Button ব্যবহার করা হয়েছে।

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:gravity="center"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:orientation="vertical">
    <EditText
        android:id="@+id/edit_query"
        android:layout_width="match_parent"
        android:hint="Enter something"
        android:inputType="number"
        android:layout_height="wrap_content" />
    <Button
        android:id="@+id/buttonPanel"
        android:text="Click"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>

ধাপ ৩: জাভা কোড (java/MainActivity.java)

বাটনে ক্লিক লিস্টেনার সেট করে ইনপুটের প্রথম ক্যারেক্টার নেওয়া হয়েছে এবং এর ASCII ভ্যালু দিয়ে মডুলো অপারেশন (% 2) করে জোড়/বিজোড় চেক করা হয়েছে।

package com.example.myapplication;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final EditText edit_query = findViewById(R.id.edit_query);
        findViewById(R.id.buttonPanel).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String data = edit_query.getText().toString();
                if (!data.isEmpty()) {
                    char c = data.charAt(0); // প্রথম ক্যারেক্টার
                    // ASCII ভ্যালু দিয়ে চেক: '0'=48, '1'=49, '2'=50...
                    if (c % 2 == 0)
                        Toast.makeText(MainActivity.this, c + " is even", Toast.LENGTH_LONG).show();
                    else
                        Toast.makeText(MainActivity.this, c + " is odd.", Toast.LENGTH_LONG).show();
                }
            }
        });
    }
}

অ্যাপ্লিকেশনটি রান করুন

ডিভাইস সংযুক্ত করে Run করুন। সংখ্যা লিখে বাটন চাপলে টোস্টে রেজাল্ট দেখাবে।

এডিটটেক্সটের মান জোড় না বিজোড় (Even/Odd) কীভাবে চেক করবেন?

লজিক ব্যাখ্যা

  • charAt(0) দিয়ে স্ট্রিংয়ের প্রথম ক্যারেক্টার নেওয়া হয়েছে।
  • ক্যারেক্টার '0' থেকে '9' পর্যন্ত ASCII ভ্যালু ৪৮ থেকে ৫৭। যেহেতু ASCII-এ জোড় সংখ্যার ক্যারেক্টারগুলোর মান জোড় এবং বিজোড়ের মান বিজোড়, তাই c % 2 == 0 চেক করলেই হয়।
  • উৎপাদন মানের অ্যাপে Character.getNumericValue(c) ব্যবহার করা ভালো, যা স্ট্রিংকে সরাসরি ইন্টিজারে কনভার্ট করে।

উন্নত সংস্করণ

int number = Character.getNumericValue(c);
if (number % 2 == 0) { /* Even */ } else { /* Odd */ }
  1. অ্যান্ড্রয়েডে কন্টেন্ট প্রোভাইডার থেকে ফোন নম্বর পাওয়ার পদ্ধতি

  2. Android-এ নোটিফিকেশন থেকে সার্ভিস শুরু করার পদ্ধতি

  3. অ্যান্ড্রয়েড ডিভাইসের সিরিয়াল নম্বর বের করার পদ্ধতি

  4. Android থেকে AirTags খুঁজে বের করার পদ্ধতি?