1-10-az
X, Y (Y ≠ X) iki həqiqi ədəd verilmişdir. Ədədlərin kiçiyini həmin ədədlərin cəminin yarısı ilə, böyüyünü isə bu ədədlərin iki misli ilə əvəz edin.
İlk baxışdan məsələ çox sadə görünür. Amma burda bir nyuans var .Misal üzərində baxaq:
Tutaq ki x=5 , y=6. Onda şərtə görə x-in qiyməti (4+6)/2 = 5 və y –n qiyməti 2*4*6 = 48 olmalıdır. Əgər programda x=5 yazsaq , onda y = 2*x*y = 2*5*6=60 alarıq , amma şərtə görə 48 olmalıdır! Məsələ ondadır ki y hesablayan zaman x-in dəyişilmiş qiymətindən istifadə edilmişdir.
Ona görə də ədədlərin cəminin yarısını və hasilinin iki mislini hesablayıb, uyğun olaraq a və b dəyişənlərinə mənimsədirik. Sonra isə x və y bu qiymtələr mənimsədilir.
|
Program A1_10; var a,b,x,y:real; begin readln(x,y); a:=(x+y)/2; b:=2*x*y; if x<y then begin x:=a; y:=b; end else begin x:=b; y:=a; end; writeln(x:0:6,' ',y:0:6); readln; end. |
//Program A1.10 #include <iostream> using namespace std; int main() { double x,y,a,b; cin>>x>>y; a=(x+y)/2; b=2*x*y; if(x<y) {x=a; y=b;} else {x=b; y=a;} cout<<x<<" "<<y<<endl; return 0; } |