3-misol. 3 honali ixtiyoriy butun son berilgan. Shu sonning raqamlari yig’indisi 3 ga qoldiqsiz bo’linadimi? (xatosini tuzatamiz) # include void main ( ) { int a, a1, a2, a3; cin >> a; a1= a % 10; // birlik raqamini ajratildi a2=(a/10)% 10; // o’nlik raqamini ajratildi a3=(a/10) %10; // yuzlik raqamini ajratildi s = a1+a2+a3; if (s % 3=0) cout << “ qoldiqsiz bo’linadi\n” else cout << “ qoldiqli bo’linadi\n”; getch {}; } # include # include void main ( ) { int a, a1, a2, a3, s; cin >> a; a1= a % 10; // birlik raqami ajratildi a2=(a/10)% 10; // o’nlik raqami ajratildi a3=(a/10) /10; // yuzlik raqami ajratildi s = a1+a2+a3; if (s %3==0) cout << “ qoldiqsiz bo’linadi\n”; else cout << “ qoldiqli bo’linadi\n”; getch ( ); } Agar tarmoqlar ko’p bo’lsa va o’zgaruvchining qiymatiga qarab bittasi tanlanadigan holatda tanlash operatori ishlatiladi. Uning ko’rinishi quyidagicha: switch ( ifoda yoki o’zgaruvchi) { case 1-qiymat : operator(lar); break; case 2-qiymat : operator(lar); break; ………………………………………………….. case n-qiymat : operator(lar); break; default : operator(lar); } default so’zi aks holda ishlaydigan operatorlarni ifodalaydi. Qoida: 1. switch operatoridagi ifoda yoki o’zgaruvchi int yoki char tipiga mos bo’lishi kerak! 2. Agar break so’zi tushib qolsa, keyingi case bloklari ichidagi operatorlar ham ishlayveradi Masalan: sin x, agar x=1 y = cos x , agar x=2 tg x, agar x=3 qolgan barcha hollarda (xatosini tuzatamiz) # include # include void main ( ) { float x, y; cin >> x; switch (x) { case 1 : y=sin(x); case 2 : y=cos(x); break; case 3 : tan(x); default : y=pow(x, 1/3); } cout << “y=”< # include # include # include void main ( ) { int x; float y; cin >> x; switch (x) { case 1 : y=sin(x); break; case 2 : y=cos(x); break; case 3 : y=tan(x); break; default : y = pow(x, 1/3.); } cout << “y=”<
Do'stlaringiz bilan baham: |