 Hello friends, I am Sanjay Gupta. Welcome back on Sanjay Gupta Tech School. अब देख रहा है, see language video series. And in this video, the topic we are going to discuss is the area of structure and nested structure. So, this is lecture number 21. In lecture number 20, I told you the basic of the structure. Some examples were told that how to implement the structure in programming. So, I told you the example of student book structure and added the height of two persons. And I showed the difference between type-dev keyword and union. So, if you haven't seen this video, then the link of this video or the playlist link of this video series will be in the description of this video. So, first, watch this video. After that, you will understand the current video properly. And if you are already familiar with the structure, then you can directly go through it. And if you have any doubt after watching the video or if you want to discuss any problem or discussion in the previous videos, then you can discuss it without hesitation. Because you are a beginner. So, when we read the beginners for the first time, then we get a lot of doubts in our mind. So, if someone wants to discuss it, then I am available. So, you can discuss it with me. So, let's start the area of structure. First, I will create a structure. And after that, I will tell you through the diagram that the structure's variable and the difference in converting that variable to the area. So, what is the difference? So, we will create the area of structure now. It will be dependent on the book. So, for the first time, we will discuss the problem that we are going to discuss. So, the first point is written in the first point. Read information of 5 books and print the name of the book whose price is greater than equals to 1000. So, it means that we have to read two information of the book. The first book's name and the second book's price. Apart from this, if you want to read any additional information, then you can do that too. So, after reading the information, you have to print the names of the books whose price is greater than 1000. So, if you have bulk data available and you have to filter the data from it, then in that case, we will create an area of structure. And why have we created a structure area? Because we want to store different types of information. So, let's include the header file first. Now, after that, we will create the structure. So, the structure name will be the book. So, keep in mind that if you want to read one book's information, then the declaration of the structure will be the same. And if you want to read more than one book's information, then the structure will be the same. So, for example, let me take one variable book number here. Then, if you want to read the name, then you have to create a character area. And you can also call it string. I have written its size as 10 and float price. Okay, and then I have put it as semicolon. Now, in the main function, I will tell you both the things. If we create one variable, then what will happen? And if we create an area of structure, then what will happen? Okay, so we have written struct book B. So, we have made this one variable. So, now I will take you to the diagram. See here. So, now we have written the statement struct book B. So, struct book B means that we have created a variable of structure type. So, who is the data type? The struct book. So, you can see that struct book, we have created a data type. It has three members, book name, book number, name and price. So, if you see in the diagram, then this book number, this name and this price. The three members have separate memory blocks allocated. Okay, if you are using a 16-bit compiler, then the integer will get 2 byte. If you are using a 32-bit compiler, then it will get 4 byte. So, according to that, you can calculate the size of the memory. So, now I have written 2 byte as per 16-bit compiler. So, 2 byte for integer, 10 byte for name and 4 byte for price. Because price is float, so float always gets 4 byte. Character gets 1 byte. But what have we declared? Character array. Okay, what have we declared? Character array and its size is 10. So, this means that if a character gets 1 byte, then 10 characters get 10 bytes. So, in this way, the B variable declared here, total memory gets 16 bytes. For 16-bit compiler, if this is a 32-bit compiler, then total memory will get 18 bytes. Okay, for one structure variable. And what is that dependent on? On these members. If you increase the member, then the size will increase. Because if you increase one member, then another memory block will get created. Okay, now let's talk about why we have to make an array of structure. So, that is why we have to make it. Let's suppose you have to use 5-book information. So, how many variables will you have to make? 5. Like this. Then you have to manage 5 different variables. So, those who have seen my array video, I have told you that why we make an array. So that we don't have to declare variables again and again. And we can store more than one value through one variable. So, look here, B1, B2, B3, B4, B5. What is everyone's data type? Structbook. So, if you don't make 5 variables, what can you do? Make one variable whose size is 5. Okay, so, for example, I am taking 3. Because the diagram I have created is according to 3. Because there was so much space available. So, it doesn't matter if it is 3-5. Because if you understood the structure of 3-size array, then you can understand 5-50. Now, look, what is the structbook? Data type. The name of the variable is B. But, what will you call this variable? Array of structure. So, this is the array of structure whose size is 3. So, we will make total 3 blocks. So, there was one block here. There were 3 members of one block. But, look here, this is the first block, which has 3 members. And what will be the index number of this block? 0. Then, this is the second block. This is the index number 1. This is the third block. And this is the index number 2. So, as you are already familiar with the array, then you know that the array's index starts from 0. Then 1, 2, 3 and so on. So, it was size 3, so, 0, 1, 2. So, now, you have to store the first book information. So, you have to process this part. So, what will you do to process this part? What is the name of the whole memory? B. So, you will write B first. Then, what will you write in the square bracket? 0. We have reached the 0 index. Now, there are 3 parts on the 0 index. So, what will you do? You will write the book number or the name or the price. Because, the members of the structure will accept it through the dot. So, how do we implement this? I will tell you from an example. You must have understood the memory allocation. What is the benefit of making the structure of the array? That we have stored the information of multiple books in the same variable. So, now, let's do this. We will process the information of 5 books. We will use a variable i. Then, I wrote printf, backslash n, enter, book number, name and price of 5 books. So, the user will come to know that the name, number and price of 5 books have to be entered. Now, you will run for loop. This is one more benefit of using the array. Because, by using the array, you do not have to write the printf scanf again and again. You can simply use the for loop to automatically repeat your scanf statement. So, I told you this in the array. So, now, my request is that those who do not know the basics of the array and structure, first, watch that video so that you can understand the array of structure once. If you will watch this video directly and you do not know the basics of the array and structure, then you will have to face a lot of problems. Now, we write scanf, of course, as I told you, first, the name of the array is b. Then, we have to tell the index number and then, the name of the member. So, the i value will initially be zero. So, what will this be? b of zero dot book number. So, what does this mean? We have accessed the b array. After that, we have gone to the zero index. And then, we have processed this book number. Then, if you want to read the name, you will write, get is b of i dot name and price for percent f, m percent b of i dot price. So, in this way, we have read the information of five books. Now, we have to print the name of those books, whose price is 1,000 or more than that. So, we will print the number of the book and also print the name. And if you want, you can print all three things, book number, name and price. So, let's write a print f first. Details of books whose price is greater than or equal to 1,000. This message will be printed first. Then, let's run the for loop. The for loop will repeat five times. And in this for loop, you have to put if condition. So, what will you check in the if? b of i dot price. Means, we will check the price of every index, whether it is greater than or equal to 1,000 or not. So, first of all, the i value will be zero. So, the information of the book on the zero index will be checked. If it is more than 1,000 or more, then you have to print the book number, name and price of the index. Then, if the i will be plus, then when the i will be plus, then the i value will be 1. After that, the price of the index will be checked. So, you will be able to check the price of every index. Now, let's print them. Book number, percent d, b of i dot book number. Okay. If we have to print the name, then book name equals to percent s, b of i dot name and price print. You will write book price equals to percent f. Now, we have to do percent point two f because after the point, we have to print two digits c. Now, we have written b of i dot i. So, this is our program now complete. So, I hope that now you have understood that we have used two types of things here, we have used structure and array as well. Why we used structure? Because we were doing different type of elements and we have made the structure of different type of elements further than that for array. Because after estructuring different type of elements, तो उज़ chatter.. स्वल बढ़ पाश़ को वो बबशाश श्आप खब ज़ग़। तो औग ल्ती अग़ा पी प्रशाट प्रष्वा, स्व्व्त लगया दिन, प्रशाट बबशाश़ प्रशाट यहा लगया आज़ापूच़्े क्यों इंटीजर के बाद ये करेक्टरस को प्रोपरली रीट नहीं कर रहा है तो इसका सोलिशन मैं आप को बताया था, पिछले वीडियो जिनों आप पिछले वीडियो देखा होगा उनको मैंने बताया था कि जब हम नमबर ज़से मैं बुक नमबर ठाइप किया अप नमबर ताइप कहने के ज़स बाद मैं आंटर की फिरस कर तो सो बेसिकली गेटेस कै खरा हैं तो अच्ईंटर की को लीट कर रहा है लें द्फीजे डाएई उसो में निईलग थाईप्रहें अण्फरी थे अगड़या देःता आप गड़ा अगट़़ नक सब प्रिक उस्छान है जो जीखार अन दो वो प्री जीखाब यै थीिटना आब वी लेगे अप देखा प्रोग सकते था प्रीद तरोग. ताकि जब आप नेम ताईप करोगे तो गेटस के तो उप्रपर लीजी तो जैंगे तो आब उप बट तराए गर तेंखो फिर शे एजिक्छुड़ के बुक नमबर 101, बुक नेम सी, प्राइस वन खाँजन, वन जो तु, CPP, प्राइस वह अंदर, जावा, प्राइस 2,104, पाइत हन, प्राइस 300, वन जो प्राइस सेप दीसी, सेलस्वोस डोट्कोम, अंदिस की प्राइस 5,000, तो ये में आप पाच पूट्स की अंप्रमेशन डाल दी, तीके अप दिखो, C की प्राइस है वो वन खाँजन है, जावागी, 2000, SFDC की खछ्टो, चो, तो ये 3 detail print हो लिए चीई, तो दिखो C की detail print हो गे जावागी detail print हो गो रों सेप डीसी. तो उनी books की detail print हो लिए है, जंके, प्राइस, जिन books की प्राइस 1,000 या उस से जागा है, बाखी अपने आप श्ख अब होगे।, उस्तरी के से आईहोग कि आपको समज में आगया होगा कि हम देखरन ताइप अप आलीमट्स को स्तॉके तो कैसे गुरुप करते हैं आन फरदर स्तॉकषर का आईरे बना को उसको कैसे लुजतर सकते हैं और मैंनापको मैंगर ने कान बार्च्झर करीएट होगा, हमेशा जब भी अप इस्तॉकषर का एक सिंगल रेएबल बनाईगे तो क्या होगा, और जब आगया अप श्टॉकषर बनागते हैं ताप क्या होगा अव अगे बरते हैं, लग इद प्रुगेन और उसके जितने बी बैशिखषट्चीज कि था में आप आप फ्रोगेट clarification and basic things which I told you properly. अगला प्रोग Aust्गर अप लिद एनप्रुझ्वी आप लेद कि अझा वी बागलेद, अव आप ऴिर्ख of the same program which is Read Information of 5 students & find whose marks is maximum. अप आप दिसकस करते हैं ये वीडियो सीरीज मैंने उनी स्टूडंँज के ले बनाएग जो की बिलकुल बेगनर हैं और जिनको प्रोगानेंग से द्र लगता है तो तो तो दर को रिमूप करने के ले हैं याम ये चीजे दिसकस करते हैं तो अब आप अपन बनाते हैं स्टूडंँज स्टूडंँज करते हैं यहा ले ले लिया रोल नमबर, नेम, और यहां पे लिया मागस जीगे अप दिखो कितनी येजी लिए अगर अपने एक प्रोगाम बनाया तो अप दूसरा प्रोगाम उसी को मोड़िसाए करते हैं येजी लिए बनाज स्टूडंँज आपको बार बा ताइप करने की भी जरबत नहीं हैं जीखे, अंटर, रोल नमबर, नेम, मागस अप पाज़बर चलेगा ये हम ने चेंजिस की है, तो अंटर, रोल नमबर, नेम, मागस अप पाज़बर चलेगा, फ्र शुटूडंँग कर रोल नमबर, नेम, मागस को लिए किया ये जो तमप्रीरी चटेटमें ता वो आज़ीट जराएगा, ता चिया ना रीद प्रोपरली कर पा़गेंगे, अब यह अप चैक करेंगे, if S of i. marks greater than max, अगर i index पर जो student के marks, max ने अगर, तो ये मैंगजेम निकाला, अब हमें detail of students whose marks are maximum. ये प्रेंट कराना है, तो आब यहां लिखेंगे, s of i dot marks double equals to max. तो जिनके लिए प्रेंट कराना है, तो यहां लिख तो लिग दो, तो यहां लिग तो लिग तो लोलंबर ही लिए थे, लोलंबर, नेम, ये वो गया परसंदी, s of i dot roll number, then name, and then mark. तो ये अपना प्रोग्राम प्रोग्रेंट हूँँ, योगी उन students के detail प्रेंट करेगा, जिनके marks maximum है, तो उसको सेव करते हैं, और अग्जिक्योट कराते है, तो अगे आमें 5 students के detail अंटर करानी पड़ेगी, और maximum निकल के आएगा, तो मैं सेव को टोबबा रहेंगर हूँँँ, है इक बार मैं है, हर student के marks को उने क्ली अंटर करोगा, ज़से एक kid detail printer, जो गी maximum है, फिर मैं 2 students के marks seen रहोगा, तो यस तरी के से आपने देखाए कि प्रोगराम दोनो केसेस में प्रोपर लिए वोग कर रहा है तो आई हूप कि आब आपको और चीजे क्लेर हूँँँँँ कि कैसे आम लोगिक्स दबलप कर सकता है और मेखदिमम बिनीमम अगर आईदिंटीपट्पाई करना मैं आई एरे वाले वीडीो में भी पताए था तो जिन उनो डेखाओगा उनको ये लोगिक और अज़्े समझ में आग्गया होगा तो उनके धिपार्ट्मेंस चैक करना है, जिनका धिपार्ट्मेंस सेल है, सेलस है, उनकी अगर अगर करना है तो आब यहां पर हमें श्क्रिंग खमपैरिवन का कुछ लोगिक दबलप करना बनेगा उसको ख़दावर से नहींप्रट्में करते है, तो, आब तो एरे का से नहींप रेए गी करे ग़ा, थो, आब अगर से पाखर अगर थे ब्लिए मुझक दबल ग़ा, आब नहींप तो, आब पाखर रेए लिक सेंगा। अप दिपार्ट्में, अप दिपार्ट्में करेक्टर आरे वोगा, ता अप खमा लागा कर नहीं लिख सकते हो. अप अगर स्ट्रक्चर की अंजर जो मैंबर्स है, उनका डेटा टाइप सेम होता है, तो अप एक सब भी बिकलेर कर सकते हैं. तो यह आपना एरे बना वोगा, मैख्स की जरवबत नहीं लुप छ़़ाना पड़ेगा. तो यह आपना लिख जीा एंटर, आएदी, नमें धिपार्ट्मेंट आप फाइप आप उनगोगा. अब उन्छी अपनिशन को रीड करा लिट है, ये होगे आईटी, नेम, ये अप आई, अप देपार्ट्मेट, इस लुप की जरवत नहीं है, अब हमें यहाँ पर लिखना है, दीटेल्स, अंप्लोइस, देपार्ट्मेट ये सेल्स, अप आप अप को दियाना है, कि जब भी ह नेसी बच्टा, यह ठी राई लिए है, एक खॉप बा़ तब स्रिएँ थी ड़ेम, भी गगे नहीं, दीटी नेम, अप स्रिएँ रीक, पहुप बोवार में, लें फलोगा, तेंग में, छक्द श सिकथा है. गगे, गी, पहुप स्रिएँ, ये बा़िट नहीं, औब आप न अपच्टोड आप चाँजास्वो को खमेंट कर सब यो। अम स्रफ अएडियो नेम प्रिंट करा़े थे, जिंका धिपाटमेंट सेल्स है. जिके आप ने ये प्रिद्टिपाईं फुंट्च्टन लिए तो, अपार के से लोगर के सोफ़ो फ़ो तो बज़ था आब वो सी ज़े अगर अगर जी आश़ा अगर अगर भरत हैँ पर इस बी प्रईंट करेगा. आप आप उसकी रही आप शहाँ वह तोप सेश्वाँ उनी अनावाग करीद लहते हों. यहाँ पे पुरा स्माल में लिक्राँ सेल्लिस. तब देखो जिसकी ID1 है वो प्रिंट हो नाची है, 3 प्रिंट हो नाची हो, 5 प्रिंट हो नाची है. देखो, 1, 3, 5. उनी आंप्लोयस की ID & name प्रिंट हो नाची है, जिनके department, sales देखो. अपको आपके केस है, लोगर केस है, वह से वह लिक्राँ था ग़ ग़ वो जाँगे नाची है. अपको आपको अपके केस, लोगर केस, भी ष्ट्रिक्त्ली में प्रिंट हो रान है. आप एक स्विद्र को दुष्रे स्विद्र के अंपर कैसे लिए कर सकते हैं तो बहुत यीसे टोटेत हैं तो विसको भी समज लेते है, नस्चलेद स्वक्छर, हैटर्फाई भी जर्वत नहीं है अब नहीं हैंपर में लिटाओं स्विड़न्ध का अईज़्ामपल देद़़् रोलन्पर ज्शिके देन स्विड़न्ध नें थ्ब अब हमें स्विड़न्ध की कुच डेट श़्ीट कराणीं ये जेसे देटाब बर्त देटाब जोईनिग अप कोलिज देटाब लीविँग इस में देटोब बरत आजाइगा अम बड़देट देटोप जाणिख लिट करनायोंगा है् रद पीट से लिख होंगा दी तु म्तु पाी तु अप lsmearrbawak hneabal. रह सेभ बारबार लगाा बार लगा बार लिए गरले करना होना वह लगा. यसस को स्थूरेंट श्मझरच्चिल में तरी, लगा बार लिए बार लिए गरले करना. आप आप यहान लिखोगे Struck Date, DOB, DOT, DOE DOB-Date of birth, DOJ-Date of joining, DOE-Date of Exit औब देखो के ने खम लिएा हम ने ने स्स्ट्टोग लिएा लिएा लिएा लिएा लिए आप ने खम देदा लिएा लिएा लिए अपने प्रागा थी अब हमें क्या करना है, एक student के अपरी काम करना है, तो मैं सारी जीजो को तो एडियस कर दिता हैं, अब मैं आलिक रहा हैं, struct student s. अब देखता है कि, s को memory कितनी अलोकेट होगी, तो memory अगर हम कालकूलेट कर हैं, तो 2 by 4 roll number, अगर 16-bit compiler है, plus name को 10 byte, plus, अब DOB को memory अलोकेट होगी, तो DOB किस type का है, date type का, तो date type का एक variable बना होगे, तो उसको भी 3 members अलोकेट होगी, 2 plus 2 plus 2, 6. तो 6 मिला DOB को, 6 मिला DOJ को, 6 मिला DOP. तो total कितना होगा, 10 plus 2, 12, 6, 18 plus 6, 24 plus 6, 30. अगर 32-bit compiler है, तो रहींट में 2-2 और आद गर तो उसके पार्टिं आप का मैंडी आचाए. और यह मैंडी रहींट मेंडी रहींट को अलोकेट होगा, जो ती इस student structure के पार्टी. अब अब अगर हमें इन्फरमेशन को प्रोसस करना है, तो वो कैसे करेंगे, अब अब ढ़ेट अब जोँन अप देटा सीडा एनिशलाइस कर के पतालता हैं, पर आप उसको रीट प्रेट अपने अप करीएट, आफ गर यह से रोलम्बर हैं आई साँईन करना इत यह लिखगेट कै अब अब आपको नेम साँईन करना है, तो अब नेम में दरेक्ली असाइनमें नीगर पाईगा पर लुज करना परेगा स्टिर सीपिवाई आस्टोर नेम असंदेर. अब देटो बर्च देटोप जोएनिंग और देटोप अन्रोल्मेंत आपको स्वोग करना आत आप यह लिखोगे आस्टोर दीोबी डोट दी. उभी डोट वाई येख खुल्स तो उजो तुजर. तो इस तरीके से आप येगे जो डीटेल को वो आन्तर करेंगे आपको डेटोप जोएनिंग आन्तर करानी आप एनी कोपी कर डोग. और फिर से तरी डएट साप मेंँचन कर दो. अव यान लिग या देटोप जोएनिंग देटोप एकसिट. तीगे दीोजे अन दीोजाएगा दीोए. तीगे तो नेस्टेट स्थक्छा का बनेफिट कब होगा, जब आपको कोमन वेलूस को येख से ज़ादबार योजाएगा. तीगे नेस्टेट संजै देटोप बत 10-3-2020 देटोप जोएनिंग और देटोप एकसिट. तो इस तरीगे से जिस फोरमेट में आपको देट प्रेंट कराडी हैं, उस फोरमेट में प्रेंट कराडी हैं. और आभी हमें इंपुट नीकर नापड़ हैं, बत आपको बतादिया के रीट कैसे होगा. तो यह आप खुट से तराए करो, उईभी डाओट होता हैं, तो आप मुसे दिसकर सकते हो. तो इस तरीगे से इस वीटियो में आपको ए़रे अप श्टक्चर के बारें बताया, अंगो तीन प्रुग्रन् लिंप्रिमिमें की है, नास्टिट श्ट्ट्ट्चर कोभी में ने प्रैक्टिकलि निप्रिमें कर के बताया, उआई फोट की आपपको अज़्च्टर अच्टर समझ वे आपकोगा होगा, So l hope the video was helpful l hope l explained everything in this video l hope you understood it. Thank you for watching this video.