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

সি ভাষায় ইটেরেটিভ ফাংশন দিয়ে সংখ্যা উল্টো প্রিন্ট করা

সমস্যা

সি প্রোগ্রামিং ভাষায় while লুপ (ইটেরেটিভ ফাংশন) ব্যবহার করে দেওয়া সংখ্যাটিকে উল্টো ক্রমে প্রিন্ট করা।

সমাধান

আমরা ইতিমধ্যে স্ট্রিং ফাংশন দিয়ে এবং স্ট্রিং ফাংশন ছাড়া স্ট্রিং উল্টো করার পদ্ধতি দেখেছি। এখন কোনো প্রিডিফাইন্ড ফাংশন ছাড়া সংখ্যা উল্টো করার পদ্ধতি দেখব।

এলগরিদম

ইনপুট - রানটাইমে একটি সংখ্যা নিন

ধাপ ১: number, reverse ভেরিয়েবল ঘোষণা করুন
ধাপ ২: reverse = 0 আরম্ভ করুন
ধাপ ৩: while number > 0
    (ক) reverse = reverse * 10 + number % 10;
    (খ) number = number / 10;
ধাপ ৪: reverse রিটার্ন করুন

উদাহরণ

#include <stdio.h>
int reverse(int number) {
    int reverse = 0;
    while (number > 0) {
        reverse = reverse * 10 + number % 10;
        number = number / 10;
    }
    return reverse;
}
int main() {
    int number;
    printf("একটি সংখ্যা দিন: ");
    scanf("%d", &number);
    printf("সंख্যার উল্টো: %d", reverse(number));
    getchar();
    return 0;
}

আউটপুট

একটি সংখ্যা দিন: 356789
সंख্যার উল্টো: 987653
  1. C প্রোগ্রামিং-এ দেয়া সংখ্যার গুনন সারণি (Multiplication Table) প্রিন্ট করা

  2. সি প্রোগ্রামিং-এ লিংকড লিস্টের শেষ থেকে k নোড রিভার্স অর্ডারে প্রিন্ট করা (ইটারেটিভ)

  3. সি প্রোগ্রামিং-এ লিংকড লিস্টের শেষ থেকে k নোড রিভার্স অর্ডারে প্রিন্ট করা (রিকার্সিভ)

  4. সি প্রোগ্রামিং-এ লিংকড লিস্টের বিকল্প নোড প্রিন্ট করা (ইটারেটিভ মেথড)