- •Мәтінді форматтау
- •Ақпараттың қолданбалы теориясы
- •3. Алгоритмдік.
- •Idf0,dfd инструменталдық құрылғы
- •Алгоритмдерді жазу жолдары
- •С тіліндегі арифметикалық операциялар, қатынас операциялары, инкремент және декремент операцияларын пайдалану.
- •С программалау тіліндегі мәліметтердің тіркестік (жолдық) типтері және солармен жұмыс істейтін функциялар.
С программалау тіліндегі мәліметтердің тіркестік (жолдық) типтері және солармен жұмыс істейтін функциялар.
PASCAL тілінде сөз тіркестерін өңдеу кезінде қолданылатын арнайы тип – string бар. Ал Си тілінде мұндай арнайы тип жоқ. Сөз тіркестері char типті бір өлшемді жиым ретінде қарастырылады, яғни сөз тіркесі – нөлдік байтпен аяқталатын char типті бір өлшемді жиым.
Нөлдік байт – барлық биттері де нөлге тең байт, ол ´ \0 ´ символдық константасымен анықталады (тіркес соңы белгісі немесе нөл-терминатор). Сондықтан егер тіркесте k символ болса, онда жиымды сипаттауда k+1 элемент көрсетілуі тиіс.
Символдарды біртіндеп енгізу-шығару үшін printf(), scanf() функцияларының %c форматы қолданылады.
getchar() – параметрсіз функция. Пернеден сим-волдарды бір-бірлеп енгізеді. Сөз тіркесі Enter пернесі басылғанша енгізіле береді, оған дейін оны өзгертуге болады.
putchar(с) – с символын экранға шығарады.
Символдар тіркесін пернелерден енгізу үшін екі стандартты функция – scanf()немесе gets() қолданылады, ал олардың прототиптері stdio.h тақырыптық файлында болад scanf( ) функциясы тіркестік айнымалылар мәнін %s форматымен енгізеді, бірақ ол тіркесті тек бірінші босорын таңбасына дейін ғана енгізе алады.
Ал gets() функциясы арасында босорыны бар тіркестерді енгізеді, енгізу ENTER пернесімен аяқ-талады. Екі функция да тіркес соңына нөлдік байт қо-сып жазады. Оның үстіне тіркес – символдық жиым, ал жиым аты – оның компьютер жадындағы алғашқы адресіне сілтеме болғандықтан, тіркестік айнымалы атының алдына «&» символы жазылмайды.
Сөз тіркестерін шығару функциялары:
printf(), сprintf(), puts(), cputs()
printf() – экранға формат арқылы сөз тір-кесін шығарады;
сprintf() – экранға printf() сияқты формат арқылы сөз тіркесін шығарады, тек олар-дың түстерін textcolor() және textback-ground() функциялары арқылы өзгертуге мүмкіндік береді;
puts(str) – экранға сөз тіркесін шыға-рып, курсорды бірден келесі жолдың басына алып барады, мұндағы str – тіркес-тік константа немесе тіркестік айныма-лы. Бұлар stdio.h тақырып файлы бойынша жұмыс істейді.
cputs(str) – экранға сөз тіркестерін шығарып, олардың түстерін textcolor() және textbackground() функциялары арқылы өзгертуге мүмкіндік береді, conio.h тақырып файлы бойынша жұмыс істейді.
Жалпы сөз тіркестерін қолдану үшін stdlib.h немесе string.h тақырыптық файлдары қолданылады.
Сөз тіркестерімен жұмыс істейтін басқа функциялар
1) strlen(str) функциясы str сөз тір-кесіндегі символдар санын (соңғы нөлді есепке алмайды), яғни жолдың ұзындығын анықтайды, оның типі int, тақырыптық файлы <string.h>
2)strcat(stroka1,stroka2) функциясы тір-кестерді біріктіру үшін қолданылады. Ол stroka1 және stroka2 тіркестерін бірік-тіріп, нәтижені stroka1 айнымалысына меншіктейді.
3) strcmp(stroka1,stroka2) функциясы екі сөз тіркесін салыстыру үшін қолданылады. Егер олар бірдей болса, функцияның мәні 0-ге тең болады, әйтпесе ол екі тіркестің айырмасын береді. Егер stroka1<stroka2 болса, нәтиже <0 болады, ал stroka1> stro-ka2 болса, нәтиже>0 болады. Көбінесе екі тіркестің бірдей еместігін анықтау үшін қолданылады.
4)strcpy(str1, str2) функциясы сөздердің көшірмесін алу үшін қажет, мұндағы str2 айнымалысындағы сөз тіркесі str1 айнымалысына көшіріледі.
5) strstr(str1,str2) функциясы 2-ші көрсетілген жолды 1-ші жолдың ішінен іздейді.
6) strset(str,ch) функциясы берілген тіркестегі барлық символдарды көрсе-тілген тіркеске (ch) ауыстырады.
7) strtod(str1,str2) функциясы беріл-ген тіркесті double типті санға ауыс-тырады.
8) strchr(str,c) функциясы берілген тіркестегі коды көрсетілген символдың позициясын анықтайды.
9) strrev(str) функциясы берілген тір-кестің барлық символдарын керісінше бейнелейді.
10) strpbrk(str1,str2) функциясы 2-ші тіркестің кез келген символын 1-ші сөзден іздейді.
Mысалы: Латын алфаыитвн ASCII-кодтарымен бірге шығару
#include<stdio.h>
#include<conio.h>
#include<string.h>
main()
{ char s[80];
int i;
clrscr();
puts (Soz tirkesin engizip ENTER basynyz);
gets(st);
i=0;
while (st[i+1])
printf(«Енгізілген тіркес ұзындығы: %i\n», i-1);
puts (Soz tirkesin engizip ENTER basynyz);
gets(st);
printf(«Енгізілген тіркес ұзындығы: %i\n», strlen(st));
getch(); }
Программаларда файлдармен жұмыс істеу. Файлды ашу/жабу операторлары, оған мәлімет жазу/оқу тәсілдерін программалау.
Сыртқы мәліметтер ағынымен (поток данных) жұмыс істеу үшін оны ашу керек. Сонда сыртқы мәліметтер программадағы алдын ала анықталған FILE типімен байланыстырылады. Бұл типтің анық-талуы stdio.h тақырыптық файлы арқылы атқары-лады. FILE типі арқылы мәліметтер ішіндегі позицияларға нұсқауыш, буферге нұсқауыш көрсетіле алады.
Сыртқы мәліметтер ағынына нұсқауыш, мысалы, fp программада былай сипатталады:
#include <stdio.h>
FILE *fp;
Сонымен файлды ашатын fopen() функциясының жалпы жазылуы:
fp = fopen(name,mode); , fp = fopen(“ex1.txt”, “w”);
Мұндағы: fp – файлға сілтейтін нұсқауыш; name – сыртқы мәліметтер жазылған немесе жазылатын файл аты, иденти-фикатор; mode – файлдың қандай режимде ашылатынын төмендегідей түрде көрсетеді:
«r» – бұрыннан бар файлды оқу үшін ашу;
«w» – бос файлды мәлімет жазу үшін ашу;
«a» – файл соңына мәлімет қосып жазу үшін оны ашу;
«r+»– файлды одан мәлімет оқу және жазу үшін ашу;
«w+»– бос файлдан мәлімет оқу және оған мәлімет жазу үшін файл ашу (бұрын файл болса, ол өшіріледі);
«a+»– файлдан мәлімет оқу және оның соңына мәлімет қосып жазу үшін ашу).
2)fclose(fp) функциясы ашық файлды жабады.
3)feof(fp) функциясы файл соңын анықтайды.
4)fgets(fp) функциясы файлдан бір символ оқиды.
5)fputc(fp) функциясы файлға бір символ жазады.
6)ferror(fp) функциясы файлға жазу/оқу кезінде қате шыққанын тексереді.
Бұлардағы fp – файлға сілтейтін нұсқауыш;
7-8) Файлға мәлімет жазу/оқу үшін fprintf және fscanf функциялары пайдаланылады.
fprintf — файлға мәлімет жазу үшін, ал fscanf – файлдан мәлімет оқу үшін қолданылады. Олардың жалпы жазылу түрі:
fprintf(fp,“спецификация шаблоны”, p); (мыс: fprintf(fp,“%d”, p) )
p — өрнек;
fscanf(fp, “спецификация шаблоны”, адрес); (мыс: fscanf(fp,“%d”, &p) )
Mысалы:
#include<stdio.h>
#include<conio.h>
main()
{int k, i, n=5;
char fname[]=”a:\\num.txt\0”;
clrscr();
FILE *fp;
fp=fopen(fname,”w”);
clrscr();
printf(«Енгізілген файлдар %s файлына жазылады\n», fname);
puts(“Әр сан енгізген соң Enter басыңыз/n”);
for(i=0; i<n; i++)
{ scanf(“%i”, &k);
Fprintf(fp, “%d”, k); }
fclose(fp);
printf(«Енгізілген файлдар %s файлына жазылды\n», fname);
getch(); }
Нәтижесі:
Енгізілген файлдар a:\num.txt файлына жазылады
Әр сан енгізген соң Enter басыңыз
1
2
3
4
5
Енгізілген файлдар a:\num.txt файлына жазылды
С программалау тіліндегі мәліметтердің динамикалық құрылымдары. Мәліметтердің абстрактылық типтері.
Мұнда мәліметтердің бірнеше негізгі типтері қолданылады. Олар:
char – символдық, яғни таңбалық тип,
short – қысқа бүтін сан,
int – бүтін сан типі,
long – екі еселенген бүтін сан,
float – нақты (жылжымалы нүктелі) сан типі,
double – екі еселенген нақты сан типі.
unsigned – таңбасыз бүтін сан,
Алғашқы төрт тип бүтін сандарды сипаттау үшін қолданылады. Төмендегі кестеде әр түрлі типтердің IBM PC-ге арналған ұзындықтары көрсетілген.
Мәлімет типі |
Ұзындығы (байт) |
Сандар диапазоны |
Char |
8 бит-1байт |
-128…..+127 |
Unsigned shar |
8бит-1байт |
0…255 |
Short int |
16бит-2байт |
-32768…32767 |
Unsigned short |
16бит-2байт |
0…65535 |
Int |
16бит-4байт |
-32768…32767 |
Unsigned [int] |
32бит-4байт |
0..4294967295 |
Long |
32бит-4байт |
-2147483648…2147483647 |
Unsigned long |
32бит-4байт |
0…4294967295 |
Float |
32бит-4байт |
3.4*10-38 … 3.4*1038 |
Double |
64бит-8байт |
1.7*10-308 … 1.7*10308 |
Long double |
80бит-10байт |
3.4*10-4932 … 3.4*104932 |
Көрсетілген типтердің ең үлкен ұзындықтары әр түрлі компиляторларда бірдей болуы қажет емес. Олар ком-пьютерлердің аппараттық мүмкіндіктеріне қарай таға-йындалады. Бірақ оларға мынадай талаптар қойылады:
int > =short >= 16 бит;
Int типін стандарт бекітпеген, ол компьютерге немесе компиляторға байланысты өзгеріп отырады. 16-разряд-ты процессорде ол 2 байт (32768), ал 32-разрядтысында – 4 байт (2 147 483 647 ). ТурбоСи-де int = short (32768)
long > = int; long типінің ұзындығы >= 32 бит;
(ТурбоСи-дегі long 2 147 483 647 )
Signed және unsigned модификаторлары да сандар шамасына әсер етеді, олар:
unsigned short int – 2 байт, оның диапазоны 0 ..65536;
unsigned long int – 4 байт, диапазоны 0..+4 294 967 295.
Unsigned типі int, long, short түйінді сөздерімен сипатталатын типтердің модификаторы ретінде қолданылады.
Char типін 0–255 аралығындағы таңбасыз бүтін сан-дарды сипаттауға қолдануға болады, ДК жадында бұларға бір байт орын бөлінген. Мысалы:
char c1;
Технологиялық процесті жүргізу үшін басқару нысанына әсер ететін тиімді ықпалды басқару дейді. Егер бұл басқару адамның қатысуынсыз жүзеге асса , оны автоматты, ал адамның қатысуымен болса қолмен басқару деп атайды.
1.2 Технологиялық процесті берілген қызмет алгоритмі бойынша өткізу мақсатында нысанға сырттан берілетін арнайы нұсқаулар (ережелер) жиынтығын басқару алгоритмі дейді.
1.3 Басқару нысанына басқару алгоритміне сәйкес әсерететін кез келген техникалық құрылғы автоматты басқару құрылғысы делінеді.
1.4 Бір-бірімен байланысты және басқару алгоритміне сәйкес өзара әрекеттесе жұмыс жасайтын автоматты құрылғысы мен басқару нысанының жиынтығы автоматты басқару жүйесі (АБЖ) деп аталады.
1.5 Автоматты жүйенің бір бөлігінен келесі бөлігіне технологиялық процестің бірқалыпты өтуін қамтамасыз ететін әрекеттің тізбекті желісін құрайтын әсерді ішкі әсер деп атайды.
1.6
Статикалық
сипаттама
деп, тұрақталған режим кезіндегі
шамасының
шамасына
тәуелділігін айтады:
1.7 Динамикалық сипаттама элементтердің динамикалық режимде, яғни кірістік шаманың шпашаң өзгерген сәттеріндегі жұмысын бағалау үшін пайдаланылады.
1.8 Сезімталдық деңгей шығыстық шаманың айтарлықтай өзгерісі байқалатын кірістік шаманың ең кіші мәні
1.9 Кіріс деп, сырттан жүйеге не құрылғыға, оның жеке бөліктеріне тікелей әсер берілетін автоматты басқару жүйесінің әсер тізбегінің бөлігін айтады.
1.10 Шығыс деп, автоматты жүйеде не оның элементерінде қызмет алгоритміне сәйкес қалыптасқан әсерді сырт жаққа беретін автоматты басқару жүйесінің әсер тізбегінің бөлігін айтады.
1.11 Жүйе тербелмелілігі ретелетін шаманың реттеу мерзімі кезіндегі тербеліс санымен сипатталады.
1.12 Жанама бағалар деп өтпелі процестің жеке ерекшеліктерін сипаттайтын кейбір шамаларды айтады.
1.13
Жорамал ось пен оған ең жақын жатқан
түбір арасындағы
қашықтық
жүенің орнықтылық қорын сипаттайды
және осьі жүйенің
орнықтылық дәрежесі
деп аталады.
1.14 автоматты реттеуіштер мен реттелу нысаны қосылып АРЖ-ны құрайды. Автоматты реттеуіштер деп – реттелетін шаманы берілген деңгейде белгілі бір дәлдікпен ұстап отыратын құрылғылар жиынтығын айтады.
Автоматтандырудың мақсаты технологиялық процестерді жүзеге асыру (ТП) болып табылады. ТП деп технологиялық операциялардың жиынтығын айтады. Тенологиялық нысаныды басқару – аппарат, агрегат немесе өнеркәсіпке автоматтандырылған жүйені қосу деп аталады. Автоматты реттеу жүйесінің динамикасын талдаумен байланысты кез-келген есепті шешу үшін ең алдымен зерттелетін жүйенің математикалық бейнесін беру қажет. Оны төмендегі ретпен жүргізеді:
Автоматты реттеу жүйесін (АРЖ) элементар буындарға бөледі)
Элементар буындардың қозғалыс теңдеуін құрады;
Қозғалыс теңдеулерді сызықтайды;
Өлшемсіз координаттар енгізеді.
Қозғалыс теңдеуі деп берілген кірістік координаттың уақыт бойынша өзгеруіне сәйкес шығыс координаттық да уақыт бойынша өзгеруін анықтайтын дифференциалдық теңдеуін айтады.Ішкі әсер ТНБ жұмысын бұзады, сондықтан нормальды функционалданған жағдайды ұстап тұру үшін БТН бақылап (басқарып) отыру қажет. Басқару процесі мынаны қарастырады:
БН ағымдағы жағдайы жөнінде ақпараттар жиыны.
Нысанның оптималды режимде функционалдау анықтамасы
Басқарушы әсерді есептеу
Оптималды басқаруды ұсыну
Автоматты басқару теориясындағы пайдаланылатын барлық мәселелерді екі үлкен класқа біріктіруге болады-автоматты жүйелерді талдау және синтездеу мәселелері.
Жүйені талдау деп – толық белгілі бір құрылымдық схемасы және берілген параметрлері арқылы оның статикалық немесе динамикалық қасиеттерін атайды.
Жүйенің синтезі деп- автоматты реттеудің белгілі сапа көрсеткіштері бойынша оның құрылымдық схемасын, элементтері арасындағы байланыстарды анықтауды айтады.
Жалпы автоматты реттеу жүйесі бір-бірімен өзара байланысты реттелуші нысанДмен реттеуші органнан тұрады. Бұл жүйені құрар алдында сериялық жабдықтар каталогын реттеуші органды, орындаушы құрылғыны, датчикті таңдап алады. Бұл элементтер реттелуші нысанменл бірге жүйенің өзгермейтін(берілген) бөлігін құрайды. Соңынан, жүйенің статикалық және динамикалық сипаттамаларына қойылатын талаптар негізінде оның фукнционалдық және корректирлеуші құрылғылардан тұратын өзгемелі бөлігінанықтайды. Корректирлеуші құрылғылар жүйенің контурына тізбектеле, параллель немесе кері байланыс түрінде қосылып, оның динамикалық қасиеттерін жоғарлатуға мүмкіндік туғызады.
Сонымен автоматты реттеу жүйесінің синтезі келесі кезеңдерден тұрады:
Реттеу нысаннының қасиеттерін талдау, статикалық және динамикалық сипаттамаларын анықтау;
Реттеу жүйесін қанағатандыратын реттеу сапасының шарттарын, оптималдау критерийлерін негіздеу және тұжырымдау;
Техникалық құралдарды таңдап алып, жүйенің құрылымдық схемасын іске асыру;
Оптимал динамикалық сипаттамаларды синтездеу;
Оптимал режимді аппроксимациялау (жуықтау), яғни реттеу спасымен жүйенің жұмысын іске асырудың техникалық тұрғыдағы күрделі еместігі және оның сенімділігі арасындағы ымыраға келе отыра, жүйенің қалаулы динамикалық сипаттамасын алу;
Бүкіл жүйенің қалаулы динамикалық сипаттамасын толығымен қамтамасыз ететін корректирлеуші құрылғының динамикалық сипаттамасын анықтау;
Корректирлеуші құрылғының схемасын, техникалық пайдалану жолын және параметрлерін таңдап алу;
Қойылған талаптарға сай келетін алынған автоматты реттеу жүйесінің схемасына талдау жүргізу.
