Soru 1-) Aşağıdaki programda çağrılan carp fonksiyonunu şablon olarak yazınız
#include
using namespace std;
template <class T>
T carp(T deger1, T deger2, T deger3){
return deger1*deger2*deger3;
}
int main(){
int x = 2, y = 3, z = 4;
float a = 2.1, b = 3.5, c = 4.3;
int s1 = carp(x, y, z );
float s2 = carp(a, b, c);
cout << s1 << " " << s2; // sağlama
system("pause");
return 0;
}Soru 2-)Aşağıdaki programın çalışması için gerek sınıfı ve fonksiyonu tanımlayın .ikiyeKatla fonksiyonu en ve boy değerlerinin iki katı değerlerini yeni örneğe atayacaktır . Programın çıktısı 60 olacaktır .
#include <iostream>
using namespace std;
class Dikdortgen{
public:
Dikdortgen(){};
Dikdortgen(double, double);
Dikdortgen(Dikdortgen &);
double alan();
double a, b;
};
Dikdortgen::Dikdortgen(double aa, double bb){
a = aa;
b = bb;
}
Dikdortgen::Dikdortgen(Dikdortgen &d){
a = d.a;
b = d.b;
}
Dikdortgen ikiyeKatla(Dikdortgen &dkatla){
dkatla.a *= 2;
dkatla.b *= 2;
return dkatla;
}
double Dikdortgen::alan(){
return a*b;
}
int main()
{
Dikdortgen d1;
Dikdortgen d2(3,5);
d1 = ikiyeKatla(d2);
cout << d1.alan() << "\n";
system("pause");
return 0;
}Soru -3) Programın çalışması için gereken > operatörü
#include <iostream>
using namespace std;
class Kutu{
public :
Kutu(int u, int g, int y){
uzunluk = u;
genislik = g;
yukseklik = y;
}
friend bool operator >( Kutu&, Kutu&);
// friend bool operator<(const Kutu&, const Kutu&);
double hacim();
private:
int uzunluk, genislik, yukseklik;
};
double Kutu::hacim(){
return uzunluk*genislik*yukseklik;
}
bool operator >(Kutu& k1, Kutu& k2){
return k1.hacim() > k2.hacim();
}
int main(){
Kutu k1(15, 8, 4), k2(3, 7, 8);
if (k1>k2) cout << "Kutu -1 buyuktur" << endl;
else
cout << "Kutu -2 buyuktur"<<endl;
system("pause");
return 0;
}

