কম্পিউটার প্রোগ্রামিং বই এর ৪.১০ নম্বর কোড টা কপি করলে ঠিক ই চলে কিন্তু আমি একটা প্রোগ্রাম লিখলাম এইটা কাজ করছে না, ১ এর ঘরের নামতা লেখার পর আর কিছুই হয়না, আমি ভূল করছি কোথায়?

#include<stdio.h>
int main(){
    int a = 1, b = 1;

    for(b; b < 21; b++){
        for(a; a < 11; a++){
            printf("%d x %d = %d\n", b, a, b*a);
        }
    }
}

হয়তো উত্তরটা অনেক সহজ কিন্তু আমি ধরতে পারছি না, জানালে খুশি হব, ধন্নবাদ।

asked 17 Apr '15, 19:41

sudip's gravatar image

sudip
21114

edited 18 Apr '15, 05:45

__salman__'s gravatar image

__salman__ ♦♦
1.1k211


তোমার বেসিক আরো স্ট্রং করা দরকার.... for() লুপ এর ৩ টা অংশের প্রথম টা তোমার প্রোগ্রামে অসম্পূর্ণ। তুমি ইনিশিয়ালাইজেশন করেছো লুপ এর বাইরে প্রোগ্রামের শুরুতে.... যেখানে a=1,b=1 প্রথম বার লুপ যখন শুরু হয় তখন b=1 আর a এর মান 1 থেকে 10 পর্যন্ত পরিবর্তীত হতে থাকে b এর প্রথম ভ্যালু 1 এর জন্য। কিন্তু আবার যখন b++ হয়ে b এর ভ্যালু 2 হয় তখন পূনরায় a=1 ইনিশিয়াল হচ্ছেনা। কারণ শেষবার পর্যন্ত a=11 এ গিয়ে থেমেছিলো আর a<11 কন্ডিশন ভুল হওয়ায় সে আর inner loop এ ঢুকতে পারেনা। আর তাই শুধু 1 এর নামতা প্রিন্ট হচ্ছে.....

permanent link

answered 17 Apr '15, 22:34

saifbgc's gravatar image

saifbgc
1166

আমার codeblocks এ লুপের ভিতর int a = 1 লিখলে প্রোগ্রাম error দেখায় তাই বাইরে মান দিয়ে দিতে হয়, তবে ভূল টা বুঝতে পারলাম, ধন্যবাদ।

(18 Apr '15, 07:24) sudip

write like this:

int a,b;
for(b=1;b<21;b++){
   for(a=1;a<11;a++){
       printf("%d x %d = %d\n", b, a, b*a);
   }
}

permanent link

answered 19 Apr '15, 06:50

nhimran's gravatar image

nhimran
116110

হ্যাঁ, শেষ পর্যন্ত এইভাবেই কাজ হয়েছে, ধন্যবাদ

(19 Apr '15, 07:19) sudip

লুপের ভেতর initialization করলে সেটা বারবার পুনরাবৃত্তি করতে থাকে.... Single লুপের ক্ষেত্রে এমন হয় না। তখন শুধুমাত্র প্রথম বারেই initial হয়। কিন্তু নেস্টেড লুপ এর ক্ষেত্রে inner লুপ প্রতিবার নতুন করে শুরু হয় যেখানে একই প্রোগামের রানটাইমে রিডিকলারেশান হয় বারবার.... তাই কোডব্লক error দেখায়....

(20 Apr '15, 01:19) saifbgc
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×402

question asked: 17 Apr '15, 19:41

question was seen: 10,485 times

last updated: 23 Apr '15, 03:20