মডিউল ১০-৮: কাউন্ট

প্রবলেম লিংকঃ E. Count

প্রবলেম স্টেটমেন্টঃ ইনপুটে একটি স্ট্রিং দেওয়া থাকবে। স্ট্রিং এর নাম্বার গুলোর যোগফল প্রিন্ট করতে হবে। সল্যুশনঃ প্রথমে স্ট্রিংটি ইনপুট নিব। যেহেতু স্পেস থাকবে না স্ট্রিং এর মধ্যে তাই আমরা নরমালি scanf দিয়েই ইনপুট নিতে পারব। তারপর লুপ চালিয়ে স্ট্রিং এর শুরু থেকে শেষ পর্যন্ত প্রতিটি ডিজিট যোগ করতে থাকব। এখানে যোগ করার সময় প্রতিটি ডিজিট থেকে ৪৮ অর্থাৎ '০' এর আসকি ভেলু বিয়োগ করতে হবে, কারন নাম্বার গুলো আমরা ইন্টিজার হিসেবে ইনপুট নিচ্ছি না, ক্যারেক্টার হিসেবে ইনপুট নিয়েছি। তারপর লুপ শেষে যোগফল প্রিন্ট করে দিলেই হয়ে যাবে।

#include<stdio.h>
#include<string.h>
int main()
{
    char a[1000001];
    scanf("%s",a);
    int sum=0;      // যোগফল রাখার জন্য ভেরিয়েবল নিয়ে তাতে শুরুতে ০ রাখা হচ্ছে।
    for(int i=0;i<strlen(a);i++)    // লুপ চালানো হচ্ছে স্ট্রিং এর শুরু থেকে শেষ পর্যন্ত
    {
        sum=sum+(a[i]-'0');      // প্রতিটি ডিজিটে যেয়ে সেই ডিজিট থেকে ০ এর আসকি ভেলু বিয়োগ করা হচ্ছে। কারন নাম্বার গুলো আমরা ক্যারেক্টার হিসেবে ইনপুট নিয়েছি।
    }
    printf("%d",sum);  // যোগফল প্রিন্ট করছি।
    return 0; 
}

Last updated