Məsələlər. 1. Sabitlər tipini müəyyən edin:
a) 315; b) -32.4; c) 102408; d) 0315; e) 0x24; g) 2.6L; k) 70700U; m) `5`; n) `\121`.
2. Proqramda int n=10; dəyişəni təsvir edilmişdir. Aşağıdaki ifadələrin qiymətlərini hesablayın:
a) n++; b) ++n; c) n%2; d) n/3.; e) ++n+5; k) 5+n+1; g) (float)n/4; m) size of(n); n) size of(1.*n).
3.Müstəvi üzərində nöqtənin X və Y koordinatları verilmişdir. Aşağıdaki şərtləri məntiqi ifadə şəklində yazın:
a) nöqtə koordinat müstəvisinin 1-ci rübündə yerləşir;
b) nöqtə X-oxunun üzərində yerləşir;
c) nöqtə koordinat oxlarından birinin üzərində yerləşir;
d) nöqtə vahid dairəsi daxilində 1-ci və 2-ci rübdə yerləşir;
e) nöqtə daxili radiusu 1, xarici radiusu 2 olan halqanın daxilində 2-ci və 4-cü rübdə yerləşir;
4. Proqramda float x=2; dəyişəni təsvir edilmişdir. Aşağıdaki ifadələrin hesablanmasında X-dəyişəni hansı qiymətlər olar?
a) x += 2; b) x/=10; c) x*=(x+1); d) x += x+=x+=1;
5. Aşağıdaki ifadələrin qiymətlərini X-dəyişənin üç variantda təsviri üçün hesablayın:
1) float x=1.; 2) float x=10.; int x=1; a) x >1? 2*x:x; b) x/5 = = 2? 5:x/10; c) x>0 && x<=1? 1:0;
6.9. Budaqlanan proqramlar. Şərti keçid operatoru Budaqlanan alqoritmlərin proqramlarını yazmaq üçün C++ dilində bir neçə vasitə vardır. Bunlar aşağıdakilardır.
? : - şərt əməli;
if -şərti keçid operator;
switch - seçmə operatoru.
Şərti keçid operatorunun formatı:
if (ifadə) operator 1; else operator 2; Bu şərti keçid operatorunun tam formasıdır. Burada (ifadə) müqayisə və məntiq əməlləri iştirak edən hər hansı bir şərtdir. İfadənin qiyməti tam ədədə çevrilir və aşağıdaki kimi interpretasiya olunur: sıfra bərabərdirsə - yalan, sıfırdan fərqlidirsə - doğru. İfadənin qiyməti doğrudursa operator 1, yalandırsa operator 2 yerinə yetirilir.
Şərti keçid operatorunun sintaksisində aşağıdaki xüsusiyyətlərə fikir vermək lazımdır:
ifadə dairəvi mötərizə içərisində yazılır;
operator 1 – dən sonra nöqtə-vergül işarəsi qoyulur.
Şərti keçid operatorunun tam olmayan formasından da istifadə etmək olar:
if (ifadə) operator; Məsələ, iki a və b dəyişənlərindən ən böyüyün tapmaq üçün if – operatorunu aşağıdaki kimi yazmaq olar:
if (a>b) max=a; else max=b; Bu məsələni tam olmayan if – operatorundan istifadə etməklə həll etmək olar:
max=a; if (b>a) max=b;
“Şərt” əməlindən istifadə etməklə aşağıdaki kimi yazmaq olar:
max=(a<=b)? b:a; Misal 1. x-dəyişənin işarəsini təyin edən sign(x) – funksiyasının hesablanmasına baxaq:
if-operatorunun tam formasından istifadə etməklə məsələnin alqoritmini aşağıdaki kimi yazmaq olar:
Alqoritmə uyğun olan proqram fraqmentini aşağıdaki kimi yazmaq olar:
if(x<=0) if(x=0)y=0; else y=-1; else y=1; Natamam şərti keçid operatorundan istifadə etməkdə bu məsələnin alqoritmini və proqram hissəsini aşağıdaki kimi yazmaq olar:
y=1; if(x 0) if(x= =0)y=0; else y=-1; Misal 2. a və b – dəyişənlərini onların qiymətlərinin artma sırasına görə nizamlamalı