শেয়ারFacebookWhatsApp

নিচের উদ্দীপকের পড়ঃ #include #include void main( ) int n, i, s; scanf("%d", & n); s = 0; for (i=1;i<=n;i++); s=s+i; printf("%d", s); getch ( ); প্রোগ্রামটি রান করালে এবং কী বোর্ডে 10 টাইপ করলে কত ফলাফল পাওয়া যাবে?

. 25

. 30

. 55

. 165

উত্তর: 55

ব্যাখ্যা: প্রোগ্রামটিতে `for` লুপের শেষে একটি সেমিকোলন (`;`) থাকায় লুপটি আসলে কোনো কাজ করে না। তাই `i` এর মান `n+1` হয়ে যায় (এখানে `i` এর মান 11 হয়)। এরপর `s = s + i` লাইনে `s` এর প্রাথমিক মান 0 এর সাথে `i` এর শেষ মান 11 যোগ হয়, ফলে `s` এর মান 11 প্রিন্ট হয়। তবে, যদি `for (i=1; i<=n; i++);` এর সেমিকোলনটি না থাকত, অর্থাৎ `for (i=1; i<=n; i++) s=s+i; ` এমন থাকত, তবে এটি 1 থেকে `n` পর্যন্ত সংখ্যাগুলোর যোগফল বের করত। এক্ষেত্রে `n=10` হলে যোগফল হতো [গণিত] । প্রশ্ন এবং অপশন দেখে মনে হচ্ছে প্রশ্নকর্তা এই দ্বিতীয় পরিস্থিতিটিই বোঝাতে চেয়েছেন, যেখানে যোগফল 55 হবে। সাধারণত এই ধরণের লুপে সেমিকোলন ব্যবহার করলে তা একটি সাধারণ ভুল হিসেবে ধরা হয় এবং এর ফলে আউটপুট ভিন্ন হয়। তবে, অনেক সময় শিক্ষাক্ষেত্রে এই ধরণের প্রশ্ন থেকে লুপের সঠিক ব্যবহার যাচাই করার জন্য একটি ভুল লুপসহ প্রশ্ন করা হয়। এখানে `for` লুপের শেষে `;` থাকার কারণে লুপ বডির ভিতরের `s=s+i` এই স্টেটমেন্টটি এক্সিকিউট হয় না। যখন `i` এর মান 11 হয়, তখন লুপ টার্মিনেট করে। এরপর `s=s+i` এক্সিকিউট হয়, যেখানে `s` এর মান 0 এবং `i` এর মান 11, তাই `s` এর মান 11 হয়। কিন্তু অপশনে 11 নেই। প্রশ্নটির অপশন দেখে এবং প্রোগ্রামিংয়ের সাধারণ কনভেনশন অনুসারে, ধরে নেওয়া যায় যে `for` লুপের শেষে সেমিকোলনটি একটি টাইপিং ভুল এবং এর উদ্দেশ্য ছিল 1 থেকে 10 পর্যন্ত সংখ্যাগুলির যোগফল বের করা। সেই হিসাবে, `n=10` হলে যোগফল হবে 55।

HSC ICT Chapter 5 : প্রোগ্রামিং ভাষা MCQ — Prosthuti প্রশ্নব্যাংক

HSC · ICT · Chapter 5 : প্রোগ্রামিং ভাষা · MCQ

নিচের উদ্দীপকের পড়ঃ #include #include void main( ) { int n, i, s; {scanf("%d", & n); s = 0; for (i=1;i<=n;i++); s=s+i; printf("%d", s); getch ( ); } প্রোগ্রামটি রান করালে এবং কী বোর্ডে 10 টাইপ করলে কত ফলাফল পাওয়া যাবে?

HSCICTChapter 5 : প্রোগ্রামিং ভাষাDinajpur 2016
12টি সম্পর্কিত প্রশ্ন — ব্যাখ্যা লকড

1.for (i = 1; i কোনটি উপরের স্টেটমেন্টের ফলাফল?

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

2.1. #include main ( ) { int i ; for (i = 1 ; i printf ("%d", i); } } প্রোগ্রামটির আউটপুট কোনটি?

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

3.for (i = 1; i {if (i = = 3) continue; printf ("HSC Exam"); } উদ্দীপকের প্রোগ্রামটিতে "HSC Exam" কতবার প্রদর্শিত হবে?

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

4.for (i = 2; i এর printf("%d", i) ধারা কোনটি?

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

5.নিচের উদ্দীপকের পড়ঃ #include #include void main( ) { int n, i, s; {scanf("%d", & n); s = 0; for (i=1;i<=n;i++); s=s+i; printf("%d", s); getch ( ); } 10 সংখ্যাটি ঠিক রেখে ফলাফল 385 পেতে লুপ স্টেটমেন্টে কী ধরনের পরিবর্তন করতে হবে?

Dinajpur · 2016

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

6.for(i=1; i< 8; i+ = 2) printf("%d", i); কোনটি উপরের স্টেটমেন্টের ফলাফল?

Dinajpur · 2016

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

7.নিচের উদ্দীপকটি পড়ঃ #include main () { int a, s = 0; for (a = 1; a < = 5; a ++) s=s+a; printf("%d", s); } প্রোগ্রামটির আউটপুট কত ?

Barisal · 2017

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

8.নিচের উদ্দীপকটি পড়ঃ for ( i = 1; i<= 10; i = i + 2) { printf("ICT"); if (i == 7) break; } if শর্তটি বাদ দিলে "ICT" লেখাটি কতবার প্রদর্শিত হবে?

Sylhet · 2017

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

9.নিচের উদ্দীপকটি পড়ঃ for ( i = 1; i<= 10; i = 1 + 2) { printf("ICT"); if (i == 7) break; } উদ্দীপকের আলোকে "ICT " লেখাটি কতবার প্রদর্শিত হবে?

Sylhet · 2017

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

10.নিচের উদ্দীপকটি পড়ঃ for (c= 2: c<= 10; c=c + 2) { printf("ICT”); if ( c = = 6) break; } if শর্তটি বাদ দিলে ICT লেখাটি কতবার প্রদর্শিত হবে?

Chittagong · 2017

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

11.নিচের উদ্দীপকটি পড়ঃ for (c= 2: c<= 10; c=c + 2) { printf("ICT”); if ( c = = 6) break; } ICT লেখাটি কতবার প্রদর্শিত হবে ?

Chittagong · 2017

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

12."Hello World" লেখাটি ৫ বার প্রদর্শনের ক্ষেত্রে C স্টেটমেন্ট হলো- i. for(n = 1; n < 6; n + +) printf("Hello World") ii. n = 3; do {printf ("Hello World!"); n++; } while (n <=8); iii. n=5; while (n< 10) {printf("Hello World!"); n ++; } নিচের কোনটি সঠিক?

Rajshahi · 2017

ব্যাখ্যা দেখতে ফ্রি রেজিস্ট্রেশন করো

ফ্রি শুরু করো

আরো প্রশ্ন দেখো

আরো হাজারো প্রশ্ন + মডেল টেস্ট

ফ্রি রেজিস্ট্রেশন করো — ফেভারিট, AI টিউটর, লিডারবোর্ড ও অ্যানালিটিক্স আনলক করো।