29
ә) y = [3-(x-5)
2
]/[(x-5)
2
+8].
3. Тӛмендегі алгоритм бойынша y-тің мәндерін ӛрнектеуге арналған формула
қҧрыңдар.
а)
1) x-ті x-ке кӛбейт, нәтижені А1 деп ӛрнекте;
2) А1-ді 5-ке кӛбейт, нәтижені А2 деп ӛрнекте;
3) А2-ден 6-ны ал, нәтижені А3 деп ӛрнекте;
4) А1-ге 4-ті қос, нәтижені А4 деп ӛрнекте;
5) А2-ні А4-ке бӛл, нәтижені y деп ӛрнекте.
ә)
7) x-ке 1-ді қос, нәтижені В1 деп ӛрнекте;
8) 1-ді В1-ге бӛл, нәтижені В2 деп ӛрнекте;
9) В2-ден 1-ді ал, нәтижені В3 деп ӛрнекте;
10) В2-ге 1-ді қос, нәтижені В4 деп ӛрнекте;
11) В3-ті В4-ке бӛл, нәтижені В5 деп ӛрнекте;
12) В5-тен 1-ді ал, нәтижені y деп ӛрнекте.
4. Циркуль және сызғыш кӛмегімен:
1) кесіндінің ортасы арқылы перпендикуляр тҧрғызу;
2) берілген кесінді диаметр болатындай етіп шеңбер сызу;
3) бҧрыштың биссектрисасын табу;
4) ҥшбҧрыштың медианаларының қиылысу нҥктесін табу алгоритмдерін қҧрыңдар.
5. А=100, В=18 бҥтін сандарының ЕҤОБ табыңдар және Евклид алгоритмінің ҥш
қадамы (А=В, А>В, А<В) неше рет орындалатынын анықтаңдар.
6. Кӛрсетілген формулалар бойынша функция мәндерін есептейтін алгоритм
схемасын қҧрастырыңдар.
tg3x+1/x , егер x
-2
cos4x+1/(x +1), егер x >-2
1+ sinx, егер
x
-1.3
ә) y = 2x
2
+ 3, егер
-1.3 < x < 6
x
2
– 3, егер x
6
7. Дӛңес тӛртбҧрыштың тӛрт қабырғасы мен бір диагоналының ҧзындығы бойынша
оның ауданын табатын алгоритм қҧру керек.
Нұсқау. Дӛңес тӛртбҧрыштың диагоналы оны екі ҥшбҧрышқа бӛледі. Әр ҥшбҧрыш-
тың ауданын табу ҥшін белгілі Герон формуласын пайдалануға болады.
8. F(х) =
ln
sin
e
x
x
x
1
функциясы мәндерін х 3-тен 5-ке дейін қадамы 0,2 болып
ӛзгерген кезде табатын алгоритм қҧру керек.
9.
осы у функциясының мәндерін х 3-тен 5-ке дейін
қадамы 0,25 болып ӛзгерген кезде есептеп шыға-
ратын алгоритм қҧру керек.
а)
y =
4;
,
/
)
2
(
4,
,
82
4,
>
,
21
4
/
x
егер
x
x
x
егер
x
егер
x
y
30
2 С ТІЛІНДЕ ПРОГРАММАЛАУ НЕГІЗДЕРІ
С тілі ӛткен ғасырдағы 70-жылдардың басында АҚШ-та Bell Telephon
Laboratories компаниясының қызметкері Дэннис Ритчидің бастауымен дҥниеге
келді. Бҧл тілдің негізі Алголдан басталып, Паскаль және ПЛ/1 тілдерімен
қатар пайда болды.
С тілінің шығуы UNIX операциялық жҥйесінде программалаумен тығыз
байланысты, ӛйткені бҧл жҥйе ассемблерде және осы С тілінде жазылып
шыққан болатын. UNIX жҧмыс істеу ортасы С тілін жҥйелік программалау тілі
ретінде елге таныстырды, ол компиляторлар мен операциялық жҥйелер жазу
ҥшін қолайлы деп саналды, кейіннен С тілі кез келген салада программалар
жазуға да ӛте қолайлы тіл болып табылатыны анықталды.
Алғаш рет UNIX 1969 жылы Нью-Джерси штатындағы Bell фирмасының
лабораториясында PDP-7 мини-компьютерінде жасалып шықты. UNIX PDP-7
компьютерінің ассемблер тілінде жазылды. Бҧдан соң сол лабораторияның
жетекшісі Кен Томпсон 1970 жылы В деп аталған жаңа тілге арнап компилятор
жасап шықты. Осы тілді С (ағылшынша С) тілінің негізі деп атауға болады.
Жалпы С тілінің тез дамуына 1983 ж. оның стандартын жасау мақсатында
Америка ҧлттық стандарттар институтында (ANSI) Техникалық комиссияның
қҧрылуы себепші болды. Комиссия жҧмысына сол кездегі алдыңғы қатарлы
мамандардың кӛпшілігі араласып, олар тек программалау мәселелерін ғана
қарастырмай, кең таралып келе жатқан IBM PC компьютерлеріне арналған
компиляторлар жасауды да осы стандартқа енгізді.
С тілінің негізінде 1983-жылы С++ тілі жасалып шықты, сол кезден бері
тілдің бірнеше нҧсқалары пайда болып, ол қазіргі ең кӛп тараған тілдердің
біріне айналды. Біздің елде С тілінің алғашқы нҧсқасы орыс тілінде Б. Керниган
мен Д. Ритчидің ―С программалау тілі‖ деген кітабы арқылы бірнеше рет жарық
кӛрді (1985-1991жж.).
Бірсыпыра фирмалар осы тілге арнап компиляторлар жазды, мысалы, Bor-
land International фирмасы 1989 жылы біріктірілген программалау ортасы
TurboC++ жҥйесін дҥниеге келтірді. Ол DOS ортасында жақсы жҧмыс істеді.
Ал 1992 ж. жасалған Borland C++ жҥйесі Windows ортасында да жҧмыс істейтін
жақсы компилятор болып табылады.
Сонымен, С/С++ программалары Паскаль тілінің біріктірілген (интег-
ралданған) ортасы сияқты DOS ортасында да және Windows жҥйесінде де жҧ-
мыс істей береді.
Біз қарастырғалы отырған С тілінің негізгі ҧғымдары мен операторлары кез
келген мектептің немесе жоғары оқу орнының компьютерлерінде жҥре беретін
біріктірілген ортаның редакторы арқылы теріліп жҧмыс істей береді.
31
2.1 С тілінде жазылған программаның құрылымы
С тіліндегі программа қҧрылымы тӛмендегідей болады:
#препроцессор директивалары
. . . . . . . . .
#препроцессор директивалары
функция а()
{операторлар}
функция b()
{операторлар}
void main() // программаның орындалуын бастайтын функция
{операторлар:
сипаттау операторлары
меншіктеу операторлары
функция
бос оператор
құрама операторлар
таңдау операторлары
цикл операторлары
көшу операторлары
}
Препроцессор директивалары – программаны компиляциядан ӛткізгенге
дейінгі тҥрлендіру ісін басқарады. С тілінде мәтіндік файл тҥрінде даярланған
бастапқы программа тҥрлендірудің 3 кезеңінен ӛтеді:
1) мәтінді препроцессорлық тҥрлендіру;
2) программаны компиляциядан ӛткізу;
3) біріктіру (байланыстарды тҥзету және жинақтау).
2.1-сурет. С программасы мәтінін тҥрлендіру кезеңдері
Осындай ҥш кезеңнен ӛткен соң (2.1-сурет), программаның орындалатын
екілік коды қалыптасады. Препроцессордың міндеті – программа мәтінін
компиляцияға дейін тҥрлендіру. Препроцессорлық ӛңдеу ережелерін програм-
малаушы препроцессор директивалары кӛмегімен анықтайды. Директива #
таңбасынан басталады. Мысалы:
1) #define – программа мәтініндегі алмастыру ережелерін кӛрсетеді.
Бастапқы
мәтін (cpp)
Қосымша
файлдар (h)
препроцессор
программаның
толық мәтіні
компилятор
Объектілік
код (obj)
Стандартты кітап-
хана (lib)
функциялары
Біріктіргіш
(
компоновщик
)
Орындалатын
код (exe)
Достарыңызбен бөлісу: |