একটি পূর্ণসংখ্যার অ্যারে দেওয়া থাকলে, রিকারসিভ পদ্ধতিতে সর্বোচ্চ ও সর্বনিম্ন মান বের করতে হবে।
বিভিন্ন ইনপুট-আউটপুট
ইনপুট − Arr = {12,67,99,76,32}
আউটপুট − অ্যারেতে সর্বোচ্চ: 99
ইনপুট − Arr = {1,0,-99,9,3}
আউটপুট − অ্যারেতে সর্বনিম্ন: -99
প্রোগ্রামে ব্যবহৃত পদ্ধতি
সর্বনিম্ন খুঁজতে
ইনপুট অ্যারে
Arr[]।recforMin(int arr[], int len)ফাংশন রিকারসিভভাবে সর্বনিম্ন ফেরত দেয়।যদি
len == 1হয়,arr[0]ফেরত দিন।অন্যথায়
min(arr[len], recforMin(arr, len-1))ফেরত দিন।
সর্বোচ্চ খুঁজতে
recforMax(int arr[], int len)ফাংশন রিকারসিভভাবে সর্বোচ্চ ফেরত দেয়।যদি
len == 1হয়,arr[0]ফেরত দিন।অন্যথায়
max(arr[len], recforMax(arr, len-1))ফেরত দিন।
উদাহরণ কোড (সর্বনিম্ন)
#include <iostream>
using namespace std;
int recforMin(int arr[], int len){
int minimum;
if (len == 1){
minimum = arr[0];
return minimum;
}
else{
return minimum = arr[len] < recforMin(arr, len-1) ? arr[len] : recforMin(arr, len-1);
}
}
int main(){
int Arr[] = {-89,98,76,32,21,35,100};
int length = sizeof(Arr)/sizeof(Arr[0]);
cout << "Minimum in the array :" << recforMin(Arr, length);
return 0;
}
আউটপুট (সর্বনিম্ন)
Minimum in the array :-89
উদাহরণ কোড (সর্বোচ্চ)
#include <iostream>
using namespace std;
int recforMax(int arr[], int len){
int maximum;
if (len == 1){
maximum = arr[0];
return maximum;
}
else{
return maximum = arr[len] > recforMax(arr, len-1) ? arr[len] : recforMax(arr, len-1);
}
}
int main(){
int Arr[] = {-89,98,76,32,21,35,100};
int length = sizeof(Arr)/sizeof(Arr[0]);
cout << "Maximum in the array :" << recforMax(Arr, length);
return 0;
}
আউটপুট (সর্বোচ্চ)
Maximum in the array : 100