Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Билет №19. 1.Кез келген табиғи тілдегі мәтінде 4 негізгі элементті бөліп қарастыруға болады,олар: символдар сөздер тіркестері
1. Кез келген табиғ и тілдегі мә тінде 4 негізгі элементті бө ліп қ арастыруғ а болады, олар: символдар сө здер тіркестері жә не сө йлемдер. С+ тілінің алфавиті Си тілінде қ олданылатын символдар жиындары: 1. латын алфавитінің бас ә ріптері (A, B, C, ……., Y, Z) мен кіші ә ріптері (a, b, c, ………, y, z); 2. 0- ден 9- ғ а дейінгі араб цифрлары; 3. арнаулы символдар: + (плюс), - (минус), * (жұ лдызша), / (бө лу сызығ ы), = (тең), > (ү лкен), < (кіші),; (нү ктелі ү тір), & (амперсанд), [ ] (тік жақ шалар), { } (жү йелі жақ шалар), () (дө ң гелек жақ шалар), _ (астын сызу), (бос орын),. (нү кте),, (ү тір),: (қ ос нү кте), # (нө мір), % (процент), ~ (разрядтап терістеу),? (сұ рақ белгісі),! (леп белгісі), \ (кері слэш). 4.бос орын символдары: бос орын табуляция символы, жаң а жолғ а кө шу символы. 5.Алфавит символдарынан тіл лексемалары қ ұ ралады.Олар: Идентификаторлар; Тү йынды сө здер; Операциялар белгілері; Тұ рақ тылар; Ажыратқ ыштар; Лексемалардың шекаралық символдары ретінде ажыратқ ыштар немесе операциялар белгілері сияқ ты басқ а лексемалар қ олданылады. Ақ параттық жү йелерде іздеу алгоритмдері жә не ә ртү рлі табиғ аттағ ы мә ліметтерді сұ рыптау, жеке жағ дайда кез-келген ұ зындық тағ ы мә тіндік жолдар кең інен қ олданылады. Іздеу алгоритмдері мен сұ рыптаудың тиімділігі кө п жағ дайда мә ліметтердің кө рінісін таң даумен байланысты. Осындай ың ғ айлы жә не тиімді кө ріністің бірі кез-келген ұ зындық тағ ы мә тіндік жолдың басындағ ы кө рсеткіштер массиві болып табылады. Жадыда жолдар бір-бірімен тығ ыз орналасқ андық тан, ә р жеке жолғ а кө рсеткіш арқ ылы оның бірініші литеріне қ атынас жасау жү зеге асады. Кө рсеткіштердің ө зін массив тү рінде ұ йымдастыруғ а болады. Мү мкіндіктердің бірі: екі жолдарды салыстыру арқ ылы – олардың strcmp функцияларына кө рсеткіштерді беру. Жолдардың орындарын ауыстыру ү шін, массивте олардың кө рсеткіштерінің орнын ауыстыру жеткілікті (жолдардың ө зін емес). Бұ дан екі мә селе бірдей шешіледі: біреуі – жадыны басқ ару кү рделілігімен, ал екіншішісі – жолдардың ө зін ауыстыруда жинақ талғ ан ү лкен шығ ындармен байланысты. Сұ рыптау процессі ү ш кезең ге бө лінеді: енгізу кезінде барлық жолдард оқ у; енгізілген жолдарды сұ рыптау; оларды рет-ретімен басып шығ ару. Енгізу программасы барлық жолдардағ ы литерлерді оқ у жә не есте сақ тау керек, сол сиқ ты жолдрадың кө рсеткіштер массивін тұ рғ ызу керек. Бұ л функция сол сияқ ты, енгізілген жолдардың санын есептеу керек – бұ л ақ парат сұ рыптау жә не баспағ а шығ ару ү шін қ ажет болады. Шығ ару программасы жолдарды басып шығ арумен ғ ана айналысады жә не ол кө рсеткіштер массивінде олрағ а сілтеме жасайтындай ретпен орындалуы керек. 2. Файлдан оқ у немесе файлғ а жазу ү шін ол ә рі қ арай файлғ а қ атынас жасау ү шін қ олданылғ ан кө рсеткішті қ айтаратын, библиотекалық fopen функциясының кө мегімен алдын-ала ашылуы керек. Файлдың кө рсеткіші деп аталатын бұ л кө рсеткіш, файл туралы ақ параттан (буфер адресі, буфердегі ағ ымдық литердің жағ дайы, файл оқ уғ а немесе жазуғ а ашық па, файлмен жұ мыс істеуде қ ате бар ма жә не файлдың соң ы кездестіме) тұ ратын қ ұ рылымғ а жіберіледі. < stdio.h> -тан алынғ ан анық тамалар FILE деп аталатын қ ұ рылымның сипаттамасын қ осатын болғ андық тан, қ олданушығ а толығ ымен білу керек емес. Тек қ ана файл кө рсеткішін анық тау ү шін талап етілетін – бұ л келесі тү рдегі декларацияны беру: FILE * fp; FILE * fopen(char*name, char* mode); Файлдан оқ у мен файлғ а жазудың бірнеше тә сілдері бар. Ең қ арапайымы getc жә не putc функцияларын қ олдану. int getc (FILE*fp) функциясы с литерін *fp файылына жазады жә не қ ате болғ ан жағ дайда, жазылғ ан литерді немесе EOF-ті қ айтарады. Файлдардың форматты енгізу-шығ аруын scanf жә не printf функцияларында тұ рғ ызуғ а болады. Олар scanf жә не printf-тің, олардың бірінші аргументі файлғ а кө рсеткіш болып табылатын айырмашылығ ымен ұ қ сас int fscanf(FILE*fp, char * format, …) int fprintf(FILE*fp, char * format, …) 3. S=1*2*3*4*5........
#include< stdio.h> #include< stdlib.h> #include< math.h> main() { int a[14]; int n; printf(" \nРазмерность массива: "); scanf(" %d", & n); for(inti=0; i< n; i++) { a[i] = rand() % 20; printf(" %i ", a[i]); } int s=1; for(i=0; i< n; i+=2) s*=a[i]; //элементы с индексами 0, 2, 4... printf(" \nсумма четных элементов массива: %i", sum); }
|