অ্যারের উপাদানগুলি লিখুন এবং তারপর, সোয়াপিং কৌশল ব্যবহার করে সংখ্যাগুলিকে অবরোহ ক্রমে সাজান। পরে, একটি সূচক অবস্থানের সাহায্যে, একটি অ্যারের মধ্যে দ্বিতীয় বৃহত্তম এবং দ্বিতীয় ক্ষুদ্রতম উপাদানটি প্রিন্ট করার চেষ্টা করুন৷
একটি অ্যারে একটি নামের অধীনে সাধারণ উপাদানগুলির গ্রুপ ধরে রাখতে ব্যবহৃত হয়।
সি প্রোগ্রামিং ল্যাঙ্গুয়েজে অ্যারে অপারেশনগুলি নিম্নরূপ -
- ঢোকান
- মুছুন
- অনুসন্ধান করুন
অ্যালগরিদম
নীচে একটি অ্যারেতে দ্বিতীয় বৃহত্তম এবং দ্বিতীয় ক্ষুদ্রতম সংখ্যাগুলি খুঁজে বের করার জন্য একটি অ্যালগরিদম দেওয়া হল −
ধাপ 1 − উপাদানের সংখ্যা ঘোষণা করুন এবং পড়ুন।
ধাপ 2 - রানটাইমে অ্যারের আকার ঘোষণা করুন এবং পড়ুন।
ধাপ 3 - অ্যারের উপাদানগুলি ইনপুট করুন৷
৷পদক্ষেপ 4৷ − সংখ্যাগুলোকে নিচের ক্রমে সাজান।
ধাপ 5 − তারপর, একটি সূচক ব্যবহার করে দ্বিতীয় বৃহত্তম এবং দ্বিতীয় ক্ষুদ্রতম সংখ্যাগুলি খুঁজুন৷
৷ধাপ 6 − দ্বিতীয় বৃহত্তম এবং দ্বিতীয় ক্ষুদ্রতম সংখ্যাগুলি প্রিন্ট করুন৷
৷প্রোগ্রাম
একটি অ্যারের মধ্যে দ্বিতীয় বৃহত্তম এবং দ্বিতীয় ক্ষুদ্রতম সংখ্যাগুলি খুঁজে বের করার জন্য C প্রোগ্রামটি নীচে দেওয়া হল −
#include<stdio.h> void main(){ int i,j,a,n,counter,ave,number[30]; printf ("Enter the value of N\n"); scanf ("%d", &n); printf ("Enter the numbers \n"); for (i=0; i<n; ++i) scanf ("%d",&number[i]); for (i=0; i<n; ++i){ for (j=i+1; j<n; ++j){ if (number[i] < number[j]){ a = number[i]; number[i] = number[j]; number[j] = a; } } } printf ("The numbers arranged in descending order are given below\n"); for (i=0; i<n; ++i) printf ("%10d\n",number[i]); printf ("The 2nd largest number is = %d\n", number[1]); printf ("The 2nd smallest number is = %d\n", number[n-2]); ave = (number[1] +number[n-2])/2; counter = 0; for (i=0; i<n; ++i){ if (ave==number[i]) ++counter; } if (counter==0) printf("The average of 2nd largest & 2nd smallest is not in the array\n"); else printf("The average of 2nd largest & 2nd smallest in array is %d in numbers\n", counter); }
আউটপুট
যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -
Enter the value of N 5 Enter the numbers 10 12 17 45 80 The numbers arranged in descending order are given below 80 45 17 12 10 The 2nd largest number is = 45 The 2nd smallest number is = 12 The average of 2nd largest & 2nd smallest is not in the array