русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Шартты операция


Дата додавання: 2013-12-23; переглядів: 2308.


Getch();

Else

Clrscr();

Char baga;

Int ball;

Main ()

Return(0);

Else

Clrscr();

Float x,y;

Main ()

Getch();

Clrscr();

Float x1,x2,d;

Float a,b,c;

Main ()

Getch();

Else

If (r)

Clrscr();

Main ()

Getch();

Float x,y;

Clrscr();

Main ()

Getch();

Int max,x,y,z;

Clrscr();

Main ()

Оператор;

Else

Оператор;

Else if (2-шарт)

Оператор;

If (1-шарт)

Оператор;

If (шарт)

Оператор;

Else

Оператор;

If (шарт)

Мұнда жақшадағы шарт түріндегі өр­нек ақиқат болса, 1-оператор орын­дала­ды, әйтпесе 2-оператор атқарыла­ды. Операторлар қарапайым немесе құрама болып жазыла береді. Оператордың қыс­қа­ша жазылу түрі:

Кейде қабаттасқан шартты операторлар

кездеседі, мысалы:

Мұнда егер 1-шарт ақиқат болса, 1-опе­ратор орындалады, егер 1-шарт жалған болып, 2-шарт ақиқат болса, 2-опе­ратор ­ орындалады, ал 1-шарт және 2-шарт жал­ған болса, 3-оператор атқары­лады.

Ондағы кез келген else түйінді cөзі

(keyword) оның алдында ең жақын тұрған

if операторына қатысты болып саналады.

Мысалы, берілген х, у – екі санның

үлкенін анықтау үшін жазылған

шартты операторды былай жазуға болады:

if (x>y) max=x;

else max=y;

Ал х, y, z сияқты үш санның үлкенін табу үшін, қабаттасқан шартты операторлар жазылады.

if (x>y)

{if (x>z) max=x;

else max=z;}

else if (y>z) max=y;

else max=z;

 

Логикалық ЖӘНЕ опера­циясын пайдалана отырып, бұл есепті мынадай түрде де жаза аламыз.

if ((x>y)&&(x>z)) max=x;

else if ((y>z)&&(y>x))

max=y;

else max=z;

1-мысал. Осы алгоритмді толығы­нан қысқаша шартты оператор арқылы орын­даудың блок-схемасы (3.5-сурет) мен програм­масын келесі түрде жазып шығайық.

#include <stdio.h>

#include <conio.h>

{

printf(“3 бүтін сан енгізіңіз:”);

scanf(“%d%d%d”,&x,&y,&z);

max=x;

if (y>max) max=x;

if (z>max) max=z;

printf(“max=%d”,max);

}

2-мысал. Формула арқылы берілген төмендегі

у функциясын есептеу программасын құрастыру керек.

#include <stdio.h>

#include <conio.h>

{

printf(“x нақты санын енгізіңіз:”);

scanf(“%f”,&x);

if (x<0) y=x+2;

else y=2*x*x*x;

printf(“\ny=%f”,y);

}

3- мысал. Программаға бір жыл нөмірін енгізіп, сол жылдың кәбисә (366 күн) немесе қарапайым жыл (365 күн) екендігін анықтау керек. Ол үшін жылды төртке бөлеміз, егер қалдық 0-ге тең болса, ол кәбисә жыл, әйтпесе қарапайым жыл болады.

#include <stdio.h>

#include <conio.h>

{ int gil;

int r; /* gil-ды 4-ке бөлгендегі қалдық */

printf("Жылды, мысалы, 2007 енгізіп, Enterбасыңыз: ");

scanf("%i",&gil);

r=gil % 4;

printf("%i жыл - қарапайым \n", gil);

printf("%i жыл – кәбисә \n", gil);

printf("\nАяқтау үшін Enter басыңыз");

}

4- мысал. Квадрат теңдеуді шешу программасын құру керек.

/* Квадрат теңдеуді шешу */

#include <stdio.h>

#include <conio.h>

#include <math.h>

{

printf("\n * Квадрат теңдеуді шешу * \n");

printf(" a,b,c мәндерін енгізіп, Enter басыңыз: ");

scanf("%f%f%f",&a,&b,&c);

d=b*b-4*a*c;

if (d < 0)

printf("Теңдеудің шешуі жоқ \n");

else {

x1=(-b+sqrt(d))/(2*a);

x2=(-b-sqrt(d))/(2*a);

printf("Теңдеу түбірлері: x1=%3.2f

x2=%3.2f\n", x1,x2);

}

printf("\nАяқтау үшін Enter басыңыз");

}

5- мысал. Төмендегі функция мәнін кез келген х үшін есептеу керек.

#include <stdio.h>

#include <math.h>

#define pi 3.14159

{

printf("Нақты сан түріндегі x мәнін енгізіңіз: ");

scanf("%f",&x);

if (x <= 0)

y = 0;

else if (x <= 1)

y = x*x - x;

y = sin(pi * x*x);

printf("x = %f болғанда, y = %10.6f \n",x,y);

}

6- мысал. Төменде алынған баллға сәйкес бағаны анықтау программасы келтірілген.

балл баға
90...100 A
75...89 B
60...74 C
50...59 D
0...49 F

A, егер 90 £ ball £ 100

B, егер 75 £ ball < 90

baga = C, егер 60 £ ball < 75

D, егер 50 £ ball < 60

F, егер 0 £ ball < 50

#include <stdio.h>

#include <conio.h>

{

printf("Балл мөлшері: ");

scanf("%i",&ball);

if (ball >= 90)

baga = 'A';

else if (ball >= 75)

baga = 'B';

else if (ball >= 60)

baga = 'C';

else if (ball >= 50)

baga = 'D';

baga = 'F';

printf("Бағасы - %c, балл мөлшері - %i \n",baga,ball);

printf("\nАяқтау үшін Enter басыңыз");

}

Шартты операция (? :) шартты өрнек жазуға мүмкіндік береді, яғни берілген шартқа байланысты әр түрлі мән қабылдайтын шартты өрнектер құрады. Бұл операция үшорынды болып табылады. Егер оның шарты (бірінші операнд) ақиқат болса, өрнек мәні екінші операндқа тең; егер жалған болса, онда – үшіншіге тең. Мысалы:

max_ab = a > b? a : b;

 

3.5. Switch көп нұсқалы таңдау операторы

Программада кездесетін бірнеше нұсқаның бірін таңдап алу керек бол­ған жағдайда, switch ауыстырғыш операторы қолданылады. Оператордың орындалу схемасы төмендегі суретте келтірілген. Оның жалпы жазылуы:

switch <бүтін типті өрнек>;

{

case белгі1: операторлар;

case белгі2: операторлар;


<== попередня лекція | наступна лекція ==>
Шартты оператор | ЦИКЛ ОПЕРАТОРЛАРЫ


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн