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; }