সমস্যাটি পাঠিয়েছেন তানভীরুল ইসলাম (পিএইচডি অধ্যয়নরত, ন্যাশনাল ইউনিভার্সিটি অব সিঙ্গাপুর)।
একটি অঋণাত্মক পূর্ণ সংখ্যা দেওয়া থাকবে। বলতে হবে সংখ্যাটি প্রকাশ করতে সর্বনিম্ন কতগুলো দশমিক অঙ্ক লাগবে।
একটি অঋণাত্মক পূর্ণ সংখ্যা দেওয়া থাকবে। বলতে হবে সংখ্যাটি প্রকাশ করতে সর্বনিম্ন কতগুলো দশমিক অঙ্ক লাগবে।
এই মন্তব্যটি লেখক দ্বারা সরানো হয়েছে।
উত্তরমুছুনদ্বিতীয় কোডে অ্যারে সাইজ ১১ দিলেও কাজ করে। তার মানে বুঝতে পারলাম যে ইনপুটে ১০ অঙ্কের সংখ্যা আছে, মানে প্রতিটা সংখ্যা 1000000001-এর চেয়ে ছোট।
মুছুনআর আমার কমেন্ট দেখার পরে তোমার কমেন্ট মুছে দাও। এখন থেকে কোনো কোড দেখানোর দরকার হলে book @ subeen . com -এ ইমেইল করবা।
@Shuvo সংখ্যাগুলো 10000001 এর কম হওয়া সত্তেও অনেকগুলো লিডিং0 থাকলে প্রথম কোডটি কাজ করবে না। যেমন, 00000000001 এর জন্য। এ কারণেই এক্সেপ্ট হয়নি।
মুছুনভাইয়া আমি এই সমস্যাটির সমাধান কোড লিখেছি কিন্তু সমস্যা হয় উদাহরনের ২য় এবং ৪র্থ ইনপুট ও আউটপুট নিয়ে।আমার কোডে 007 এর জন্য আউটপুট 1 আসে কিন্তু 000 এর জন্য 0 আসে। ২য় উদাহরন বিবেচনা করলে আমার কোড ঠিকই আছে (মানে 0 কে অঙ্ক হিসেবে বিবেচনা করা হয় না) আসল সমস্যাটা কোথায় ???? আমার কোড-এ নাকি উদাহরনে।।
উত্তরমুছুনআমি এই সমস্যাটির সমাধান করেছি কোন অ্যারে ব্যভার ছাড়া
উত্তরমুছুনWhy my code show run time error ??
উত্তরমুছুনI try my best for find the error,,but i can't.
can any one help me ??
my code http://ideone.com/6Bo63X
#include
উত্তরমুছুন#include
int digit_length(char num[])
{
int i, len, real_len,count = 0;
len = strlen(num);
if(num[0] == '0') {
for(i = 0; i < len; i++) {
if(num[i] == '0') {
count++;
}
else
break;
}
real_len = len - count;
if(real_len == 0) {
return 1;
}
else {
return real_len;
}
}
else {
return strlen(num);
}
}
int main()
{
int i,T,len;
char num[100];
scanf("%d", &T);
for(i = 1;i <= T; i++) {
scanf("%s", num);
len = digit_length(num);
printf("%d\n", len);
}
}
ভাই রানটাইম ইরোর দেখাচ্ছে বের করতেই পারতাসিনা কারণটা