https://www.devskill.com/CodingProblems/ViewProblem/34
তোমায় একটা সংখ্যা দেয়া থাকবে , তোমায় বলতে হবে -- সেই সংখ্যায় কয়টি ডিজিট আছে ???
ধরো , দেয়া থাকলো -- ৪৫৫ , এখন তোমায় বলা হলো যে , এতে কয়টা ডিজিট আছে ??? তুমি কি করবে ?? একটা উপায় আছে আমরা যদি ৪৫৫ কে ১০ দিয়ে ভাগ দিতে থাকি যতক্ষন না , উত্তর ১ এর চেয়ে কম না হয় , তাহলেই কিন্তু - হয়ে যাবে । । ।
৪৫৫/১০ = ৪৫
৪৫/১০ = ৪
৪/১০ = ০
যেহেতু , আমরা একটা ইন্টিজার সংখ্যা চিন্তা করছি ও ভাগফল ইন্টিজার টাইপ ভ্যারিয়েবল এ স্টোর করছি , তাই -- ভাগফল গুলো উপরের মতোই আসবে । দশমিক মান গুলো আসবে না । তাহলে , যতক্ষন ভাগফল ০ না আসে , ততক্ষন যদি ভাগ করেই যাই - তাহলে মোট কতোবার ভাগ করলাম ??
মোট , ৩ বার তাই না ?? হুম , ৪৫৫ সংখ্যাতে আছেও মোট ৩ টা ডিজিট । ।
যাই হোক , চলো - এই পদ্ধতি অ্যাপ্লাই করি --------------------
IN C++....................................
#include<iostream>
#include <cstdio>
#include<cmath>
#include<set>
#include<algorithm>
#include<cstring>
using namespace std;
////Nayeem Mollick Joy,Applied Physics &Electronic Engineering,University of Rajshahi.
int main()
{
cin.tie(0);
ios::sync_with_stdio(0);
int n,t;
cin>>t;
while(t--)
{
cin>>n;
int count=0;
if(n==0)
{
cout<<"1"<<endl;
}
else{
while(n!=0)
{
n=n/10;
count++;
}
cout<<count<<endl;
}
}
return 0;
}
IN C#..............................
using System;
public class Test
{
public static int joy(int n)
{
int count=0;
if(n==0)
{
count=1;
}
else{
while(n!=0)
{
n=n/10;
count++;
}
}
return count;
}
public static void Main()
{
int T = Convert.ToInt32(Console.ReadLine());
for(int i=0;i<T;i++)
{
int X = Convert.ToInt32(Console.ReadLine());
int L = joy(X);
Console.WriteLine(L);
}
}
}
তোমায় একটা সংখ্যা দেয়া থাকবে , তোমায় বলতে হবে -- সেই সংখ্যায় কয়টি ডিজিট আছে ???
ধরো , দেয়া থাকলো -- ৪৫৫ , এখন তোমায় বলা হলো যে , এতে কয়টা ডিজিট আছে ??? তুমি কি করবে ?? একটা উপায় আছে আমরা যদি ৪৫৫ কে ১০ দিয়ে ভাগ দিতে থাকি যতক্ষন না , উত্তর ১ এর চেয়ে কম না হয় , তাহলেই কিন্তু - হয়ে যাবে । । ।
৪৫৫/১০ = ৪৫
৪৫/১০ = ৪
৪/১০ = ০
যেহেতু , আমরা একটা ইন্টিজার সংখ্যা চিন্তা করছি ও ভাগফল ইন্টিজার টাইপ ভ্যারিয়েবল এ স্টোর করছি , তাই -- ভাগফল গুলো উপরের মতোই আসবে । দশমিক মান গুলো আসবে না । তাহলে , যতক্ষন ভাগফল ০ না আসে , ততক্ষন যদি ভাগ করেই যাই - তাহলে মোট কতোবার ভাগ করলাম ??
মোট , ৩ বার তাই না ?? হুম , ৪৫৫ সংখ্যাতে আছেও মোট ৩ টা ডিজিট । ।
যাই হোক , চলো - এই পদ্ধতি অ্যাপ্লাই করি --------------------
IN C++....................................
#include<iostream>
#include <cstdio>
#include<cmath>
#include<set>
#include<algorithm>
#include<cstring>
using namespace std;
////Nayeem Mollick Joy,Applied Physics &Electronic Engineering,University of Rajshahi.
int main()
{
cin.tie(0);
ios::sync_with_stdio(0);
int n,t;
cin>>t;
while(t--)
{
cin>>n;
int count=0;
if(n==0)
{
cout<<"1"<<endl;
}
else{
while(n!=0)
{
n=n/10;
count++;
}
cout<<count<<endl;
}
}
return 0;
}
IN C#..............................
using System;
public class Test
{
public static int joy(int n)
{
int count=0;
if(n==0)
{
count=1;
}
else{
while(n!=0)
{
n=n/10;
count++;
}
}
return count;
}
public static void Main()
{
int T = Convert.ToInt32(Console.ReadLine());
for(int i=0;i<T;i++)
{
int X = Convert.ToInt32(Console.ReadLine());
int L = joy(X);
Console.WriteLine(L);
}
}
}
No comments:
Post a Comment