Автор работы: Пользователь скрыл имя, 05 Марта 2013 в 20:47, курсовая работа
Менің курстық жұмысым С++ тілінде диаграмма тұрғызу мысалын келтіру. Жалпы диаграмма – деректерді графикалық бейнелеудің ыңғайлы сайманы. Диаграммалар өзінің көрнекілігімен деректерді дұрыс бағалауға мүмкіндік береді.
Қазіргі кезде мәліметтердің көптігінен оны жинақтап, сұрыптап және оны графиктік түрде бейнелеу зама ағымының талабының бірі болып отыр. Ол үшін өте оңай шешім – диаграммалар бар. Диаграмманың бірнеше түрлері бар. Атап айтар болсақ гистограмма, сызықтық, дөңгелек, нүктелік, аймақтық, сақиналық, жапырақшалық, кеңістіктегі, көпіршік, қаржылық, цилиндрлік, конустық және пирамидалық түрлері бар.
Тrace Into(F7) командасы программаны операторлап орындайды. Және функция шақырылса, оны толығымен бірден орындаудың орынына оның да операторларын біртіндеп орындайды.
Run\Program Reset(Ctrl-F2) командасы
программаның ағымды өңдеу
Run\Step Over командасы ағымды функциядағы келесі операторды орындайды, Step Over командасын функцияны операторлап орындату барысында басқа қолданылатын функцияларға кірмей орындату керек болған жағдайда пайдаланыңыз.
Структура – бір атпен біріктірілген бір немесе бірнеше әр түрлі типті айнымалылар тобы. Структура struct қызметші сөзімен құрылады. Структураның жалпы құрылымы төмендегідей:
struct тег {тип1 иден1; тип2 иден2; … … типN иденN;};
мұндағы тег мәліметтердің жаңа типі болып саналады және оны айнымалыны сипаттауда қолдануға болады.
Сипатталған структура негізінде айнымалы құру үшін
struct <тег> <айнымалы>
С++ тілінде struct қызметші сөзін көрсетпесе де болады:
<тег> <айнымалы>
Айнымалыны структураны құру кезінде де анықтауға болады:
struct тег {тип1 иден1;тип2 иден2;,… …типN иденN;} <айнымалы>;
Егер структура типті басқа айнымалылар құрылмайтын болса, структура тегін көрсетпеуге болады. Мұндай структура атаусыз (безымянный) деп аталады:
struct {тип1 иден1; тип2 иден2; … …типN иденN;} <айнымалылар тізімі>;
Структуралар іштестірілген де болуы мүмкін:
struct тег1
{тип1 иден1;тип2 иден2;тип3 иден3;};
struct тег2 { тип1 иден1;тип2 иден2struct тег1 иден3;};
Структура элементтерін нүкте операторының көмегімен алуға болады:
<айнымалы>.<элемент>
Кейбір жағдайларда структураны функция денесінде қолдану қажеттігі туындайды. Ондай жағдайда функция прототипінде структураны функция параметрі ретінде беру керек (С++ тілінде struct қызметші сөзін көрсету міндетті емес):
// С және С++ тілдерінде
<функция типі> <функция аты> (struct <тег> <айнымалы>)
// Тек қана С++ тілінде
<функция типі> <функция аты> (<тег> <айнымалы>)
Структуралар массиві. Структуралар массивін сипаттау структура типті айнымалыны сипаттауға ұқсас. Мысалы, struct <тег> <айнымалы-массив>
Структураларға көрсеткіш. Көрсеткіш келесі түрде сипатталуы мүмкін:
struct <тег> *<айнымалы>
Бұндай жағдайда структуралық айнымалының кез-келген элементін мына әдістердің бірімен алуға болады:
(*<айнымалы>).<элемент> немесе <айнымалы> –> <элемент>
Run\Arguments командасы орындалатын программада командалық жол аргументтерін DOS ОЖ-де қандай түрде берілсе, сондай түрде анықтауға мүмкіндік береді. Мұнда DOS енгізу-алу командалары қарастырылмайды.
Compile (C) менюі командалары
екпінді терезедегі
Compile\ Make EXE File - EXE-файл
құруға арналған проектілер
Compile\Link EXE File командасы ағымды OBJ и LIB-файлдарын қолданады және оларды и жинақтайды.
Debug (Alt F9) менюі командалары біріктірілген өңдегіштің барлық мүмкіндіктерін басқарады.
Debug Inspect (Alt F4) командасы
арқылы мәліметтер
Options(Alt-O) менюі командалары Turbo C++ ортасының негізгі функцияларының стандартты параметрлерін қарауға және өңдеуге мүмкіндік беретін командалардан тұрадысын таңдау арқылы;
Жүйеге файлды компиляциялау командасын беру, ол үшін: compile\Make EXE немесе F9 басылады;
Соңынан программаны орындауға жіберу керек, яғни Run\Run немесе CTRL+F9 пернелер комбинациясы басылады.
Кейін де мынадай әрекеттерді орындауға болады:
Проектіге тағы да файлдар қосып немесе алып тастау;
Проектіге енгізілген файлдарға қатысты параметрлер беруге;
Проектіге нақты бір файлға енгізілетін файлдар мазмұнын қарау.
2 C++ ТІЛІНІҢ ОПЕРАЦИЯЛАРЫ
2.1 Цикл операторлары
Тілдің кез-келген өрнегі операторлардан (айнымалылар, константалар) , операцияларынан тұрады. Операциялардың орындалу ретін дөңгелек ретін дөңгелек жақша арқылы ұйымдастыруға болады.
дәреже.
*,/.
+;-;
қосымша операциялар бар. Ол логикалық операциялар.
!= тең емес
== тең
|- логикалық «или»
&-«И»
?:-шартты операция
«=»-меншіктеу.
Оператор мен операция ұғымдарын жаңылыстырмау үшін айтып кетейік. Оператор программаның ең кіші бірлігі. Си де оператор соңында «;» белгі қолданылады.
Операторлар.
Меншіктеу операторы –х=у.
Х айнымалысына у айнымалысының мәнін меншіктейді. «=» белгісін бірнеше рет бір өрнектің ішінде жазуға болады. Мысалы: х=y=z=100
Арифметикалық операциялар
-+-/,*,% символдары жазылды. Процентті
нақты санға қолдануға
z=t*v;
s=k/l;
p=g%w;
Логикалық операциялар мынадай таңбалармен жазылады.
& &1-(“И”),(“ИЛИ”),(“НЕ”),>,<,==
Бұл операциялардың нәтижесі шын және жалған болады.Шын¹0,жалған=0.
Кесте 1.
х |
у |
х&&у |
х||у |
!х |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
Тілде ++ және -- операциялары бар.
++ -операндылардың мәнін 1-ге арттырады.
--= операндыларының мәнін 1-ге кемітеді.
Мыс:а=в+с++; а1=в1+++с1.
Бұларды операндылардың алдында және соңын да жазуға болады.
Мыс:в=в1=2,с=с1=4 онда операция орындалып болғаннан кейін а=7,в=2,с=5,а1=7,в1=2,с1=7.
Типтерді түрлендіру.
Егер өрнекте әр түрлі
типті операндылар бар болса,
1.Егер операндылардың
біреуінің типі double болса ,онда
қалғаны да сол типке
2.Немесе long болса қалғаны да сол типке келтіріледі.
3.Немесе float типті болса қалғаны сол типке келтіріледі.
4.Немесе unsignet болса қалғаны сол типке келтіріледі.
5.long болса қалғаны сол типке келтіріледі.
6. unsignet болса қалғаны сол типке келтіріледі.
7.int болса қалғаны сол типке келтіріледі.
int a=30000;
float b;
- - - - -
b=(float)a*12;
Көрсеткіштер(указатели) және олармен операциялар.
Көрсеткіш-жадының адресін көрсететін айнымалы.
Операция&-объектілердің адресін береді.Сонан соң y=&x; мына операторлар х айнымалысының адресін у айнымалысына меншіктейді.
& операциясын консьантаға, өрнектегенде қолдануға болмайды.
Унарлық операция (*)-өзінің
операндыларын бөтен бір
белгісінен тұратын объектілерді былай белгілеу қажет:
int *a,*b,*c, char*d;/*-dадресінде жазылған айнымалының мәні char дегенді білдіреді.
Көрсеткіштер өрнектерде де қолданылуы мүмкін:
у=7;/7санын у адреске салады*/
*х*=5/*x адресіндегі мәнде 5-ке көбейту.*/
(*z)++; /*-z адрестегі мәнге 1-ді қосады.
Көрсеткіштерді арифметикалық өрнектерде операнд ретінде де қолдануға болады. Егер у көрсеткіш болса, онда у ++ оның мәнін өсіреді. Енді ол келесі элементтердің адресі болдады. Көрсеткіш пен бүтін санды қосуға болады.
C++ тілінде 3 цикл операторлары бар: for, while, do while.
форматы: for (өрнек 1; өрнек 2; өрнек 3) цикл денесі.
Цикл денесі-1оператордан тұрса, онда ол ; аяқталады, ал бірнеше оператордан тұрса, онда олар { } арасында жазылады. Одан соң “;” белгісі қойылмайды.
1,2,3 өрнектеріндегі арнайы басқару айнымалысының мәні бойынша цикл қайталанады немесе циклден шығады.
Өрнек 1 – айнымалының бастапқы мәні қабылданды.
Өрнек 2 – айнымалының соңғы мәнін тексеріп салыстырып,
осы мәндерін өсіп кеткен жоқ па , соны тексереді.
Өрнек 3 – айнымалының мәнін қадам бойынша өсіріп
отырады.
Мыс: for (I=1, I<10; I++)
{
}
for (ch=’a’; ch!=’p’;) scanf (²%c², &ch);
/*-цикл клавишасын
«р» таңбасы енгізілуге
Цикл операциясында 3 өрнектің біреуі жазылмай қалуына болады, бірақ міндетті түрде «;» қойылуы тиіс.
for (;;)-шексіз цикл.
Cu тілінде цикл операторына болатын ереже бар:
Кез-келген меншіктеу операторы жазылған жақшаға алынатын өрнектің мәні бар.
(а=7+2)-мәні 9 болады.
(a=7+2)<10.
Мыс: ((ch=detch()==’i’))-бұл өрнектің мәні шын болады, егер
клавиатурадан і таңбасын енгізсек.
Күрделі өрнектерді жазғанда бірнеше () қолдануға болады. Олардың арасына (,) белгісін қою қажет.
Цикл операторы- қос цикл болып жазылуы мүмкін, яғни бір циклдің ішінде бір цикл жазылады.
For цикл операторына келтірілетін мысалдар:
Мысал: Жаттықтырушының басында спотшы 1-ші күні10 км жүгірді. Күн сайын ол күндегі нормасын 10% көбейтті. Спортшы 7 күнде жалпы қанша жол жүгірді?
2.2 Компьютердің видеожүйесі
Компьютер видеожүйесі видеоадаптер мен монитордан тұрады. Монитор экранына бейнелерді шығару үшін видеоадаптер сигналдарды құрады. Типіне байланысты видеоадаптер әр түрлі сапалы бейнелердің шығаруын қамтамасыз етеді, нүктелердің көлемінен бейнелер пайда болады.
Видеоадаптер типі:
CGA-COLOR GRAPHIC ADAPTER
EGA-ENHANSED GRAPHIC ADAPTER
VGA- VIDEO GRAPHIC ARRAY
SVGA-SUPER VIDEO GRAPHIC ARRAY
Максимальді мүмкіндік:
640 x 320
640 x 350
640 x 480
640 x 800
Видеоадаптер бірнеше режимдерде жұмыс жасай алады. Мәселен, адаптер VGA өзінің негізгі режимінен басқа 640 x 350, 640 x 320 нүктелер режимдерінде де жұмыс жасайды және сапасы жағынан EGA мен СGA адаптерлерінен кем болмайды.
Қолданбалы программа
видеоадаптермен тікелей
Қазіргі кезде 3500-ден жоғары әр түрлі программалау тілдері бар және осылардың ішінен шектелген саны ғана программалық бөлімді құруға жаппай қолданылады. Программалау тілдерінің саны көп болуына байланысты олардың біршене классификациясы бар. Оның ішінде негізгі 2 түрге: фукционалдық мәніне (қызметі) және қолданылатын программалау технологиясына байланысты бөлінеді. Программалау тілдері фукнционалдық мәніне байланысты 4 үлкен классқа бөлінеді:
1) программалауға үйретуші;
2) жалпы мәнді;
3) проблемалық-бағытталған;
4) параллель программалаушы.
Қазіргі жоғары деңгейлі тілдерді осы классикацияға сәйкес қарастырамыз.
Программалауға үйретуші тілдер қатарына жататын жоғарғы деңгейлі тілдердің негізгілері Logo, Basic және Pascal. Logo тілі 60-шы жылдардың аяғында С.Пейперттің басшылығымен құрылды және ЭЕМ жаңа қолданушыларға, балаларға программалаудың негізін үйретуге бағытталған. Үйретуге арналған жоғары деңгейлі тілдердің ішіндегі кең тарағаны 1965 жылы Д.Кемени мен Т.Курц құрған Basic тілі. Дербес компьютерлерге бірінші қолданылған жоғарғы деңгейлі тіл және операциялық ортасы – Basic тілі. 60-жылдардың ортасынан бастап мамандар арасында құрылымдық программалау мәселесі көтеріле бастады. 1971 жылы Н.Вирт құрылымдық технологияға үйретуші Pascal тілін құрды.