Delphi-де бағдарламалау
І Бөлім. Бағдарламалау негіздері.Delphi.дің консольдік режимінде жұмыс
1.1. Тілдің операторлары.Меншіктеу операторы.
1.2. Шартты оператор
1.3. Таңдау операторы
1.4. Жиын
1.5. Параметрлі цикл
1.6. Итерациялық типтегі цикл операторлары
II бөлім. Delphi.дің негізгі компоненттері. Құрылымдық типтер және оларды Delphi.де ұйымдастыру
2.1 Мәліметтерді енгізу.шығару. Кескіндеу және түзету компоненттері.Мәліметтерді енгізу.шығару
2.2 Жолдар. Жолдық процедуралар мен функциялар
Жолдар
2.3 Жиымдар (масссивтер).
2.4 Контейнерлер. Пішімдер. Модальды пішімдер.
Сұхбаттық терезелер
2.5 Кесте құру және олармен жұмыс
2.6 Тәуелді және тәуелсіз ауыстырғыштар
2.7 Контейнерлер. Пішімдер. Модальды пішімдер.
ShowMessage сұхбаттық терезелерді шақыру процедуралары мен функциялары.
2.8 Мәзірді ұйымдастыру. Негізгі және жанама мәзір құру
III бөлім. Файлдар
3.1 Мәтіндік файлдар. Сұхбаттар
3.2 Типтелген файлдар
Типтелген файлдармен жұмыс істеуге арналған процедуралар мен функциялар
IV бөлім. Графика және мультимедиа
4.1Графикалық файлдар форматтары. Графикалық ақпараттарды кесіндеу компоненттері
1.1. Тілдің операторлары.Меншіктеу операторы.
1.2. Шартты оператор
1.3. Таңдау операторы
1.4. Жиын
1.5. Параметрлі цикл
1.6. Итерациялық типтегі цикл операторлары
II бөлім. Delphi.дің негізгі компоненттері. Құрылымдық типтер және оларды Delphi.де ұйымдастыру
2.1 Мәліметтерді енгізу.шығару. Кескіндеу және түзету компоненттері.Мәліметтерді енгізу.шығару
2.2 Жолдар. Жолдық процедуралар мен функциялар
Жолдар
2.3 Жиымдар (масссивтер).
2.4 Контейнерлер. Пішімдер. Модальды пішімдер.
Сұхбаттық терезелер
2.5 Кесте құру және олармен жұмыс
2.6 Тәуелді және тәуелсіз ауыстырғыштар
2.7 Контейнерлер. Пішімдер. Модальды пішімдер.
ShowMessage сұхбаттық терезелерді шақыру процедуралары мен функциялары.
2.8 Мәзірді ұйымдастыру. Негізгі және жанама мәзір құру
III бөлім. Файлдар
3.1 Мәтіндік файлдар. Сұхбаттар
3.2 Типтелген файлдар
Типтелген файлдармен жұмыс істеуге арналған процедуралар мен функциялар
IV бөлім. Графика және мультимедиа
4.1Графикалық файлдар форматтары. Графикалық ақпараттарды кесіндеу компоненттері
Паскаль бағдарламалау тілінде сызықтық бағдарлама жасамас бұрын келесі түсініктерге тоқталайық:
1.паскаль бағдарламалау тіліндегі операторлар қарапайым және құрама болып бөлінеді.
2.Операторлар бағдарламаның begin және end операторларының ішіне алынып жазылады.
3.begin және end операторлары операторлық жақшалар деп аталады.
Қарапайым оператор деп құрамына басқа операторлар енбейтін операторды айтады.
Бірнеше операторлардан тұратын және begin және end операторларының арасында жазылатын операторларды құрама оператор деп атайды.
Бос оператор деп «;» операторын айтамыз. Бұл оператор оның алдындағы оператордың аяқталуын көрсетеді.
Енді сызықтық бағдарлама жасауға көшейік.
Еске сала кетейік : Бағдарлама деп белгілі бір бағдарламалау тілінде жазылған реттелген командалар тізбегін айтамыз. Белгілі бір алгоритмді бағдарламалау дегеніміз осы алгоритм орындалатын бағдарлама жазу. Ендеше сызықтық құрылымды алгоритмді бағдарламалап көрейік. Сонымен сызықтық алгоритм деп командалары бірінен соң бірі тізбектеліп орындалатын алгоритмді айтамыз.
Сызықтық бағдарлама жазу үшін келесі операторларды білу қажет:
меншіктеу операторы : =
енгізу операторы Read( );немесе Readln( );
шығару операторыWrite( );немес Writeln( );
Мәліметті енгізу-шығару
Екі санды қосу
Есеп. Екі бүтін санды қосып, қосындысын экранда шығару.
1.паскаль бағдарламалау тіліндегі операторлар қарапайым және құрама болып бөлінеді.
2.Операторлар бағдарламаның begin және end операторларының ішіне алынып жазылады.
3.begin және end операторлары операторлық жақшалар деп аталады.
Қарапайым оператор деп құрамына басқа операторлар енбейтін операторды айтады.
Бірнеше операторлардан тұратын және begin және end операторларының арасында жазылатын операторларды құрама оператор деп атайды.
Бос оператор деп «;» операторын айтамыз. Бұл оператор оның алдындағы оператордың аяқталуын көрсетеді.
Енді сызықтық бағдарлама жасауға көшейік.
Еске сала кетейік : Бағдарлама деп белгілі бір бағдарламалау тілінде жазылған реттелген командалар тізбегін айтамыз. Белгілі бір алгоритмді бағдарламалау дегеніміз осы алгоритм орындалатын бағдарлама жазу. Ендеше сызықтық құрылымды алгоритмді бағдарламалап көрейік. Сонымен сызықтық алгоритм деп командалары бірінен соң бірі тізбектеліп орындалатын алгоритмді айтамыз.
Сызықтық бағдарлама жазу үшін келесі операторларды білу қажет:
меншіктеу операторы : =
енгізу операторы Read( );немесе Readln( );
шығару операторыWrite( );немес Writeln( );
Мәліметті енгізу-шығару
Екі санды қосу
Есеп. Екі бүтін санды қосып, қосындысын экранда шығару.
1. Экслер А.. Самый полный и понятный самоучитель работы в Сети, Москва, NTPress, 2007.
2. НидерестДженифер. Web-шеберлік, Санкт-Петербург, 2001г.
3. С. Баурм Операционная система UNIX , М., 1986.
4. В.Г. Олифер, Н.А. Олифер, Желілік операциялық жүйе, Учебник для ВУЗов, Питер, 2003.
5. Интернет-ресурсы
6. Архангельский А.Я. Delphi 7-де бағдарламалау,- М.: ООО «Бином-Пресс», 2006
7. Хомоненко А. Гофман В. «Самоучитель. Delphi», Санкт-Петербург, 2005г
8. Кардашев Г.А. Дербес компьютердегі сандық электроника . М., Горячая линия-Телеком, 2003.
2. НидерестДженифер. Web-шеберлік, Санкт-Петербург, 2001г.
3. С. Баурм Операционная система UNIX , М., 1986.
4. В.Г. Олифер, Н.А. Олифер, Желілік операциялық жүйе, Учебник для ВУЗов, Питер, 2003.
5. Интернет-ресурсы
6. Архангельский А.Я. Delphi 7-де бағдарламалау,- М.: ООО «Бином-Пресс», 2006
7. Хомоненко А. Гофман В. «Самоучитель. Delphi», Санкт-Петербург, 2005г
8. Кардашев Г.А. Дербес компьютердегі сандық электроника . М., Горячая линия-Телеком, 2003.
Пән: Информатика, Программалау, Мәліметтер қоры
Жұмыс түрі: Дипломдық жұмыс
Тегін: Антиплагиат
Көлемі: 59 бет
Таңдаулыға:
Жұмыс түрі: Дипломдық жұмыс
Тегін: Антиплагиат
Көлемі: 59 бет
Таңдаулыға:
І Бөлім. Бағдарламалау негіздері.Delphi-дің консольдік режимінде жұмыс
1.1. Тілдің операторлары.Меншіктеу операторы.
Теориялық шолу:
Паскаль бағдарламалау тілінде сызықтық бағдарлама жасамас бұрын келесі түсініктерге тоқталайық:
1.паскаль бағдарламалау тіліндегі операторлар қарапайым және құрама болып бөлінеді.
2.Операторлар бағдарламаның begin және end операторларының ішіне алынып жазылады.
3.begin және end операторлары операторлық жақшалар деп аталады.
Қарапайым оператор деп құрамына басқа операторлар енбейтін операторды айтады.
Бірнеше операторлардан тұратын және begin және end операторларының арасында жазылатын операторларды құрама оператор деп атайды.
Бос оператор деп ; операторын айтамыз. Бұл оператор оның алдындағы оператордың аяқталуын көрсетеді.
Енді сызықтық бағдарлама жасауға көшейік.
Еске сала кетейік : Бағдарлама деп белгілі бір бағдарламалау тілінде жазылған реттелген командалар тізбегін айтамыз. Белгілі бір алгоритмді бағдарламалау дегеніміз осы алгоритм орындалатын бағдарлама жазу. Ендеше сызықтық құрылымды алгоритмді бағдарламалап көрейік. Сонымен сызықтық алгоритм деп командалары бірінен соң бірі тізбектеліп орындалатын алгоритмді айтамыз.
Сызықтық бағдарлама жазу үшін келесі операторларды білу қажет:
меншіктеу операторы : =
енгізу операторы Read( );немесе Readln( );
шығару операторыWrite( );немес Writeln( );
Мәліметті енгізу-шығару
Екі санды қосу
Есеп. Екі бүтін санды қосып, қосындысын экранда шығару.
Шығарылуы:
program qq;
var a, b, c: integer;
begin
read ( a, b );
c := a + b;
writeln ( c );
end.
Енгізу операторы
read ( a ); { а айнымалысының мәнін енгізу}
read ( a, b ); { а және b айнымалыларының мәндерін енгізу}
Екі санды қалай енгізуге болады?
Шығару операторы
write ( a ); { a айнымалысының мәнін шығару}
writeln ( a ); {a айнымалысының мәнін шығарып,келесі жолға көшу}
writeln ( `Салем!' ); { мәтінді шығару}
writeln ( `Жауап: ', c ); { мәтінді және c айнымалысының мәнін шығару}
writeln ( a, '+', b, '=', c );
Шығару форматтары
program qq;
var i: integer;
x: real;
begin
i := 15;
writeln ( '', i, '' );
writeln ( '', i:5, '' );
x := 12.345678;
writeln ( '', x, '' );
writeln ( '', x:10, '' );
writeln ( '', x:7:2, '' );
end.
15
15
1.234568E+001
1.23E+001
12.35
Толық шығарылуы
program qq;
var a, b, c: integer;
begin
writeln(`Екі бүтін сан енгізіңіз');
read ( a, b );
c := a + b;
writeln ( a, '+', b, '=', c );
end.
Протокол:
Екі бүтін сан енгізіңіз
25 30
25+30=55
Құрама және бос оперaтор
Тіл операторлары
Тіл операторлары есепті шешу үшін орындалуы қажет қандайда бір алгоритмдердіқ іс-әрекеттерін анықтайды. Бағдарлама немесе ішкі бағдарлама құрылымын осындай операторлар тізбегі ретінде қарастыруға болады. Бірінен кейін бірі орындалатын бағдарлама операторы нүктелі үтірмен бөлінеді. Паскаль тілінің барлық операторларын екі топқа бөлуге болады, қарапайым және құрылымдық.
Қарапайым операторлар
Өзінің құрамында басқа операторлары болмайтын операторлар қарапайым операторлар болып табылады. Оларға:
меншіктеу операторы;
GOTO шартсыз өту операторы;
бос операторлар жатады.
Меншіктеу операторы
Меншіктеу операторы былайша орындалады:
Меншіктеу операторы символының оң жағындағы өрнек мәні бірінші есептелінеді.
Есептелген мән айнымалыға жазылады, айнымалы аты меншіктеу операторы символының оң жағына орна-ласқан.
Аты: = өрнек,
Мұндағы
Аты : = айнымалы (өзгеруі мүмкін).
Бұл операция үшін := меншіктеу таңбасы пайдаланылып, оның сол жағында мән меншіктелінетін айнымалы немесе функция аты жазылады, ал оң жағында өрнек жазылады.
Айнымалы мен функцияларға файл типінен басқа кез келген типті мәндерді меншіктеуге болады. Өрнек типі мен айнымалы (немесе функция) типі меншіктеу үшін бір-бірімен сәйкес болуы керек.
GOTO шартсыз өту операторы. Белгілерді қолдану
GOTO операторы операторлар орындалуының тізбекті ретін өзгертуге жөне көрсетілген оператордан бастап бағдарламаны орындауға ауысуға мүмкіндік береді. Ауысу орындалатын оператор белгіленуі керек. Осы белгі GOTO операторында көрсетілуі қажет.
Object Pascal-да пайдаланатын белгілер екі типті болуы мүмкін:
О-ден 9999 га дейінгі бүтін сандар;
жай атаулар.
Барлық пайдаланатын белгілер, Label тіркелген сөзімен басталатын белгілерді баяндау бөлімінде көрсетілуі қажет.
Мысалы:
Label,,2,Label 1;
Бір белгімен тек бір операторды белгілеуге болады. Белгі, белгіленген оператордан қос нүкте арқылы бөлінеді.
Құрылымдық операторлар
Құрамында басқа операторлар қамтылатын операторлар құрылымдық болып табылады. Оларға:
Құрамдас оператор;
IF шартты операторы;
CASE таңдау операторы;
REPEAT цикл операторы;
WHILE цикл операторы;
FOR цикл операторы;
WITH жазбалар операторы жатады.
Құрамдас оператор
Begin жэне end операторлық жақшаларға алынған, тізбекті түрде орындалатын операторлар жиынтығы қү-рамдас операторболып табылады;
Begin
l-ші оператор;
2-ші оператор ;
N-ші оператор ;
end;
1.2. Шартты оператор
Шартты оператор. Осы оператордың көмегімен қандай да бір шарттардың орындалуына қарай операторлардың орындалу ретін өзгертуге мүмкіндік туады. Шартты оператор былай жазылады:
If шарт then 1-әрекет else 2-әрекет;
Мұндағы if(егер), then(онда) және else(әйтпесе) - қызметші сөздер, ал 1-әрекет немесе 2-әрекет - операторлардың орындалу нәтижесін білдіретін операторлар. Мұнда шарт ақиқат болса 1-әрекет, жалған болса 2-әрекет орындалады. Шарт логикалық әрекетке жатады. Бұл жерде өрнектер мәні(оның ішінде логикалық та) салыстырылады, ол үшін Boolean типті мәнді қайтаратын функциялар шақырылады және ол мәндерді логикалық амалдармен қоса қолдана алады.
Амал
таңбасы Амалдың
атауы Логикалық амалдарды мына :
and (логикалық ЖӘНЕ)
or (логикалық НЕМЕСЕ)
xor (жоққа шығарушы НЕМЕСЕ) байланыстырушы амалдармен бірге пайдалануға болады.
Мәліметтердің кейбір типтері үшін қосымша амалдар бар. Мыс, жиын үшін in операторы - мәннің сол жиынға тиістілігін тексереді. K жиыны берілсін :
K := [1, 4, 7, 10, 13, 16] ;
мұнда 1 in K өрнегі ақиқат (true мәніне ие), ал 8 in K өрнегі жалған (false мәніне ие), өйткені 1 К жиынына тиісті, ал 8 мәні К-да жатпайды.
= тең
тең емес
үлкен
кіші
= үлкен не тең
= кіші не тең
not логикалық ЕМЕС - теріске шығару
ЖӘНЕ логикалық амалының орындалу нәтижесі екі операнд бірдей ақиқат болғанда ғана true - ге тең. НЕМЕСЕ логикалық амалының орындалу нәтижесі әйтеуір бір операнд ақиқат болғанда true мәнге ие болады. Егер операндтар бір-біріне тең болмаса, онда жоққа шығарушы НЕМЕСЕ амалының нәтижесі ақиқат болады.
Цикл оперторлар.
Цикл операторлары әрекеттердің бір ғана ізбен бірнеше рет қайталануын ұйымдастыруға мүмкіндік береді. Delphi-де бұл мақсатты орындайтын үш оператор бар. Олар:
:: циклдің жай операторы
:: циклдің шартты операторы
:: қайталаудың шартты операторы.
Циклдің жай операторы, оның қайталау саны алдынала белгілі болған жағдайда қолданылады және ол былай жазылады:
For санауыш:=1-өрнекto 2-өрнекdo әрекет;
Санауыш-бұл цикл операторы орналасқан логикалық блоктың алдында жариялануға тиісті айнымалы және оның типі саналатын типтердің біріне, әдетте Integer-ге тиесілі болуы тиіс. Мұндағы 1-өрнек пен 2-өрнек тұрақты немесе идентификатор бола алады. Әрекет - Delphi-дің бір немесе бірнеше операторларын білдіреді. Оператор жұмысы басталғанда айнымалы-санауыш 1-өрнектің мәнін қабылдайды. Егер мұнда санауыш мәні 2-өрнек мәнінен кем не оған тең болса, онда әрекет құрамына енетін операторлар орындалады. Міне осы бір цикл жай деп саналады. Содан соң айнымалы-санауыш ағымдағы келесі мәнді қабылдап, жаңа цикл басталады, яғни ол 2-өрнекпен санауышты салыстырады, әрекетті орындайды. Осылайша айнымалы-санауыштың мәні 2-өрнек мәнінен асқанға дейін цикл жалғаса береді.
Цикл операторының жұмысында айнымалы-санауыш өсу орнына кемитін жағдай да болуы мүмкін. Ондай жағдайда оператор былай жазылады:
For санауыш:=1-өрнекdownto 2-өрнекdo әрекет;
Мұнда 1-өрнектің мәні 2-өрнектен үлкен не оған тең болуы тиіс.
Циклдің қайталану саны алдынала белгісіз болған жағдай үшін мына түрде жазылатын циклдіңшартты операторын пайдаланған жөн:
While шартdo
цикл денесі;
Бұл цикл шарт ақиқат болып тұрған кездің барлығында орындалады. Мұнда шарт бірден жалған болса, онда цикл денесі бір рет те орындалмайды. Мұндай циклдің шарты мен циклдің аяқталуын жазуда өте мұқият болу керек, әйтпесе while циклі шексіз рет қайталанып, бағдарламаның орындалмай тұрып қалуына әкеліп соқтырады.
Қайталаудың шартты операторы алдымен цикл денесін орындайды, сонан соң барып шарттың орындалуын тексереді. Бұл оператор былай жазылады:
Repeat
Цикл денесі
Until шарт;
Циклдің бұл түрі оның ең болмағанда бір рет орындалуын ұйымдастырады. Мұнда цикл шарт ақиқатқа айналғанша орындалуын жалғастырады және цикл денесі логикалық beginend жақшасына алынбай жазылады. Цикл денесінің бас-аяғы repeat және until түйінді сөздерімен анықталады.
Цикл операторларымен қоса арнайы командалар да қолданылады, олар:
:: циклді үзу командасы
:: циклді жалғастыру командасы
Бірінші команда цикл денесі операторларының орындалуы кезінде оны аяқтау қажет болғанда пайдаланылады және ол былай жазылады: Break;
Осы команда орындалғанда басқару цикл операторынан кейінгі бірінші операторға беріледі.
Continue; командасы цикл денесіндегі басқа операторларды аттап өтіп бірден циклдің орындалуын жалғастыруға мүмкіндік жасайды.
Бағдарламаның орындалу ретін өзгертуге мүмкіндік беретін тағы бір оператор бар, ол көшу операторы: goto белгі;
Мұнда белгі ретінде кезкелген жарамды идентификатор немесе 0 мен 9999 аралығынан алынған сандар пайдаланылады. Белгіні алдынала айнымалыларды сипаттау бөлімінде var көмегімен емес, label түйінді сөзі арқылы сипаттау керек:
Label белгі; немесе label белгілер тізімі;
Бағдарлама бойынша көшу жоғары және төмен қарай да орындала береді. Мұнда белгі көшу жүргізілетін оператордан қос нүкте(:) арқылы ажыратылады. Көшу операторының қолданылу мысалын қарастырайық:
VarX, Y: Integer;
label A, B;
begin
A: X:=5 ;
. . .
бағдарлама операторлары
goto B;
. . .
B: Y:=25;
goto A;
end;
Осы мысалдағы бағдарламаны аяқтауға тиіс end операторы ешқашан орындалмайды, мұнда бағдарлама көшу операторларының жұмысы нәтижесінде шексіз қайталана береді. Сондықтан goto операторын программистер көп қолданбауға тырысады. Бағдарламада оның орнына шартты не циклдік операторларды пайдалану әлдеқайда тиімді.
Goto операторын тек бірнеше қабаттасқан циклдерден шығу кезінде қолданған дұрыс, әйтпесе одан шығу үшін бірнеше рет break командаларын қолдануға тура келеді
Қабаттасқан шартты оператор
If оператры қабаттасқан болуы мүмкін. Мысал қарастырайық. Парольдың дұрыс немесе дұрыс еместігін тексеретін программа құрайық. Парол - N. егер ол дұрыс жазылса, онда ол ақиқат болады, кері жағдайда жалған болады.егер ол ақиқат болса, онда оның х=100 бе екені тексеріледі. Егегр бұл ақиқат болса, онда Пароль және код дұрыс деген сөз шығарылады, егер ол жалған болса, Код қате деген сөз шығады.
Program Parol_Kod;
Var Ch: char;
Parol: Boolean;
X: integer;
Begin
Writeln (`Ch мәнін енгіз');
Read (Ch);
If Ch='N' then Parol:=True
Else Parol:=False;
Writeln (`X енгіз');
Read (X);
If Parol=True then
If X=100 then Write (`Пароль және код дұрыс')
Else begin
Writeln (`Код қате');
Halt (1) {программаны тоқтату үшін стандартты процедура}
End;
End.
1.3. Таңдау операторы
Егер if операторы екі альтернативаның бірін ғана таңдауға мүмкіндік берсе, case таңдау операторы кез келген мөлшердегі нұсқалардың бірін таңдауға мүмкіндік береді. Ол селектор (selection - альтернативаны таңдау) деп аталатын өрнектен және таңдау константасының тізімінен басталатын параметрлер тізімінен тұрады.
Case операторының синтаксистік диаграммасы :
сase
cелектор
of
константа
:
оператор
end
else
оператор
Case операторының жазылу форматы:
Case селектор-өрнек of
тізім1: оператор1;
тізім2: оператор2;
...
тізімN: операторN
Else оператор
End;
Мысал. Апта күнінің нөмірін енгізген кезде экранға оның атын шығаратын программа құру
Program Day_Week;
Var Day: byte;
Begin
Write (`Апта күнінің номерін енгізіңіз');
Readln (Day);
Case Day of
1 : Writeln (`Дүйсенбі');
2 : Writeln (`Сейсенбі');
3 : Writeln (`Cәрсенбі');
4 : Writeln (`Бейсенбі');
5 : Writeln (`Жұма');
6 : Writeln (`Сенбі');
Else
Writeln (`Жексенбі');
end;
end.
Таңдау операторына есептер шығару
CASE таңдау операторының көмегімен берілген блоктардың кез-келген нұсқасын таңдауға болады. Егер орындалатын блокта бірнеше оператор болса, онда олар операторлыќ жаќшаға алынып жазылады.
CASE N OF
1:1 блок;
2:2 блок;
... ... ... ...
N: N блок; END;
Таңдау командаларымен программа ќұру.
1.4. Жиын
Берілгендер типі жалпы 3-ке бөлінеді:
Стандартты типтер
Қолданушы (стандартты емес) типтер
Структуралы (құрылымдық)
Стандартты емес типтерге жататындар:
массивтер
жолдар
жиындар
Бұл типтер программада type сөзінен кейін жазылады. Типтің атауын қолданушы өзі береді.
Структуралы типке жататындар:
файлдар
жазулар
Жиындар - бір-бірімен логикалық байланысқан біртекті объектілер жиынтығы. Жиынның әр объектісі оның элементі деп аталады. Паскаль тілінде жиын тік жақшаға алынады: [1,2,3,4], [`a', `b', `c'], [`a'..`z'].
Ешқандай элементі жоқ жиыды бос жиын деп атайды.
Жиын типін сипаттау үшін set of (множество из) сөз тіркесі қолданылады.
Жиын форматы:
Type
тип атауы = set of элемент1, ..., элементn;
Var
идентификатор, . . . : тип атaуы;
Жиынды алдын ала сипаттаусыз да жазуға болады:
Var
идентификатор, . . . : set of элемент1, ..., элементn;
Мысал:
Type
Simply = set of `a'..`h';
Number = set of 1..31;
Var
Pr : Simply;
N: Number;
1.5. Параметрлі цикл
Программаның белгілі бір бөлігін орындалуын бірнеше рет қайталау үшін циклдық операторлар қолданылады. Қайталау саны цикл ұйымдастырылғанда беріледі. Цикл тақырыптан және цикл денесінен тұрады.
Циклдерді ұйымдастыру үшін үш түрлі циклдық операторларды қолдануға болады.
1.FOR ...DO циклдық операторы.
FOR K:=M TO N DO
цикл денесі;кері цикл болғанда:
FOR K: DOWNTO M
цикл денесі;
К - циклдық айнымалы (есептеуіш),
М- К айнымалысының алғашқы мәні,
N - К айнымалысының соңғы мәні.
К айнымалысының мәні соңғы мәннен
асып кеткенше цикл орындалады.
Program Kvadrat;
Var
x: integer; {сан}
y: integer; {саның квадраты}
i: integer; {цикл санағышы}
begin
writeln (`Квадраттар кестесі');
writeln (`------------------------');
writeln (`Сан Квадраты');
for i:=1 to 10 do
begin
y:=x*x;
writeln (x:3, y:10);
x:=x+1;
end;
writeln (`-------------------------');
readln
end.
Циклдік программаларқұру.
Циклдер
Цикл - белгілі бір әрекеттер тізбегінің бірнеше рет қайталанып орындалуы.
қадамдар саны белгілі цикл
қадамдар саны белгісіз цикл (шартты цикл)
Алгоритм(цикл блогымен)Айнымалысы кеміп отыратын цикл
Есеп. 8-ден 1-ге дейінгі бүтін сандардың квадраттары мен кубтарын есептеп шығару (кері қарай есептеу).
Ерекшелігі: цикл айнымалысы кеміп отыруы керек.
Шығарылуы:
for i:=8 downto 1 do begin
i2 := i*i;
i3 := i2*i;
writeln(i:4, i2:4, i3:4);
end;
1.6. Итерациялық типтегі цикл операторлары
Итерациялық типтегі цикл операторлары
Шарты алдынан берілген цикл
While (әзір) операторының форматы
While (шарт) do цикл денесі;
10 кез келген санның қосындысын есептейтін программа құру
Program Kosyndy;
Const n=10;
Var
c, i, s:integer;
begin
c:=0; {сандар санағышы}
s:=0; {сандар қосындысы}
while (cn) do
begin
c:=c+1;
write (с`-ші санды енгіз');
readln (i);
s:=s+I;
end;
Writeln (`S=', s);
End.
Шарты соңынан берілген циклдар
Шарты соңынан берілген цикл
Жазылу форматы
Repeat
оператор;
...
оператор
Until циклды аяқтайтын шарт;
Program Mysal;
Var
X:integer;
S:real;
Begin
S:=0;
Repeat
Write (`x-тің мәні');
Readln (x);
If x999 then
S:=s+x;
Until x=999;
Writeln (`s=', s);
End.
II бөлім. Delphi-дің негізгі компоненттері. Құрылымдық типтер және оларды Delphi-де ұйымдастыру
2.1 Мәліметтерді енгізу-шығару. Кескіндеу және түзету компоненттері.Мәліметтерді енгізу-шығару
Delphi жүйесі кішкентай ғана бағдарламалар мен утилиттер жасаудан бастап, мәліметтер қорымен жұмыс істейтін корпоративтік жүйелер, Интернетке арналған бағдарламалар мен коммерциялық ойындар құруға қолданылады.
Delphi тарихы, Delphi тілінің версиялары
Delphi-дің бірінші нұсқасы 1994 жылы жарыққа шығып, кейінгі жылдары оның бірте-бірте кеңейтілген 2, 3, 4, 5, 6, 7-нұсқалары жарық көрді. Мысалы, 5-нұсқа 1999 жылы, 6-нұсқа 2001 жылдың мамыр айында жарыққа шықты. 5,6-нұсқалардың бір-бірінен айырмашылығы жоқ деуге болады, екеуі де Windows операциялық жүйесінің негізінде дайындалған.
Тек, Delphi 6,7 оған қоса 1991 жылы жарық көрген, салыстырмалы арзан, Linux операциялық жүйесінің негізінде де жұмыс істей алады.
Delphi 6,7-лерде интернет үшін қосымшаларды дайындау мүмкіндігі кеңейтілген және берілгендер қорымен жұмыс істеуге кейбір өзгешіліктер енгізілген.
Delphi 7 ортасы және оның құрамы
Delphi 7 ортасы 5 терезеден тұрады:
Басты терезе (Delphi 7). Ол үш бөліктен тұрады:
Басты мәзір
Пиктографикалық мәзір (Инструменттер панелі)
Компоненттер палитрасы
Стадартты форма терезесі (Form1)
Объектілер инспекторы (Object Inspector) - объектілер қасиеттері редакторының терезесі.
Объект қасиеттері - объект түрін сипаттайтын, орналасу жағдайларын көрсететін сипаттамалар. Мысалы, width - форма енінің өлшемі;
Height - форма биіктігінің өлшемі;
Top және left - форманың экранға орналасуы;
Caption - тақырып аты.
Объект тізімін қарау терезесі (Object TreeView - объектілер бұтағын құру)
Код редакторы терезесі. Ол екі бөліктен тұрады:
Бастапқы мәтін редакторының терезесі (Unit 1. pas)
Оның сол жақ панелі Сілтеуіш болып табылады, ол арқылы бастапқы мәтін бөліктерінің арасында және жасалатын бағдарлама құрылымы бойынша оңай қозғалуға болады.
Қарапайым бағдарлама құру
Консольдық қосымша
Delphi 7 көмегімен графикалық интерфейчті пайдаланып, кез келген күрделіліктегі Windows қосымшаларын құруға болады. Алайда Паскаль операторларымен енді ғана таныстып жатқан қолданушылар MS-DOS стиліндегі қарапайым бағдарламалар құруына болады.
Бұларды консольдық қосымшалар деп атайды. Олар сырт көзге мәіндік интерфейсті бағдарламалар сияқты көрінеді, бірақ Windows-тың көптеген функцияларын қолдана алады.
Консольдық қосымша құру үшін File - New - Other (Файл - Создать - Другое) командасын орындап, ашылған New Items (Бағдарлама құру) сұхбат терезесінде Concole Application (Консольдық қосымша) белгішесін таңдау керек.
Delphi 7 жүйесі автоматты түрде мәтіндік редакторда бастапқы кодты - болашақ бағдарламаның қаңқасын жасап қояды:
Program Project 1;
{$APPTYPE CONCOLE}
Uses sysutils;
Begin
{TODO -oUSER -cConsole Main : Insert code here}
end.
Код Program кілттік сөзінен және автоматты түрде қойылған Project 1 атынан тұратын бағдарлама тақырыбынан басталады.
Бұдан соң комментарий ретінде компилятор директивасы кетеді. Ол әдеттегі комментарийден $ символымен ерекшеленеді.
{$APPTYPE CONCOLE} диективасы компиляторға берілген бағдарламаның консольдық қосымша болып табылатынын айтады.
Келесі жол sysUtils стандарттық модулін қосу үшін қолданылады.
Бұдан соң бағдарлама кетеді. Ол үшін логикалық блок дайындалып қойған. Оның ішіне Delphi 7 жүйесі Insert code here (Мұнда өзіңіздің бастапқы мәтініңізді енгізіңіз) деген комментарийін жазып қойған.
Мәтіндік ақпараттарды кескіндеу және түзету компоненттері
Компиляция және бағдарламаны жүктеу
Берілген бағдарламаны компиляциялап, бірден жүктеу үшін F9 пернесін басса болғаны.
Екі санды қосу бағдарламасы
Program Project 1;
{$APPTYPE CONCOLE}
Uses sysutils;
Var x, y, z: integer;
Begin
Readln (x, y);
Z:=x+y;
Writeln (z);
readln
end.
2.2 Жолдар. Жолдық процедуралар мен функциялар
Жолдар
Standard компоненттер панелінде екі компонент бар: TGroupBox және TPanel. Бірінші қарағанда екеуінің қызметтері бірдей көрінеді. Екеуімен де форманың белгілі бір бөлігін рамкаға алып, элементтерді топтастыруға болады.
Панель тек әр түрлі (дөңес, ойыс) рамкаларды сызып қана қоймай, кез келген басқару элементтерін біріктіріп, орындарын ауыстыруға да қолданылады.
Оның мынадай қасиеттері бар:
BevelInner және BevelOuter қасиеттері панельдің сәйкесінше ішкі және сыртқы рамкаларының стильдерін береді. Олар клесі 4 мәннің бірін қабалдауы мүмкін:
Мәндері
Рамка түрі
bvNone
Жоқ
bvLowered
ойыс рамка (вдавленная)
bvRaised
дөңес рамка (выпуклая)
bvSpace
жалпақ рамка (плоская)
BevelWidth ішкі және сыртқы рамкалардың ара қашықтығын анықтайды (пиксель бойынша)
Орын ауыстыру механизмі
Панельдер формада тышқанның көмегімен объектілердің орындарын ауыстыру үшін қолданылады. Бұл механизм drag-and-drop деп аталады.
Мысал қарастырайық:
Формаға үш компонент қояйық: мәтіндік өріс, панель және батырма (Edit1, Panel1, Button1)
Жолдық процедуралар
Процедура деп атау берілген, арнайы амалдарды орындайтын, љзінше тѕуелсіз программаны айтады. Процедура тақырыбынан жѕне оның денесінен тұрады.
Процедураны оның атауы арқылы шақырады.
1. DЕLETE(S,М,N)-S-тің мѕнінің М-ші орнынан бастап N символды алып тастап нѕтижені S-ке жазады.
2. INTERT(S1,S2,N) - S2-нің N позициясынан бастап S1 жолын S2 жолының арасына орналастырады да, нѕтижені S2-ге жазады.
3. STR(І,S) - I санын жолға айналдырады да, S-айнымалысына орналастырады.
4.VAL(S,I,cod) - сандық S жолын бџтін немесе нақты санға аударады да, нѕтижені І-ге жазадыг cod-бџтін типтегі сан. Егер cod=0, онда аударылғаны дџрыс, соd=0 қате, оның мѕні І-ші қате кеткен орынды кљрсететін санға тең.
2.3 Жиымдар (масссивтер).
Бірөлшемді жиымдар. Мәліметтердің құрылымдық типтері
Жұмыстың мақсаты - кез келген сандар массивінің индекстік санын табатын бағдарлама құру
Бағдарламаны құру жоспары
Жаңа жоба ашу.
Формада келесі компоненттерді орналастыру: Button, Edit, Label.
Келесі әрекеттерді орындау:
Кесте 22.
Ерекшеленген объект
Терезе қосымшасы
Object Inspector
Қасиет атауы
оқиға атауы
Әрекет
Form1
Properties
Caption
Форманың атын беруЖаңа жоба
Events
OnCreate
Text қасиетінің мәндерін тазалау
Button1
Properties
Caption
Келесі атауды енгізіңіз: Тазалау
Events
Onclick
Text қасиетінің мәндерін тазалау
Button2
Properties
Caption
Келесі атауды енгізіңіз:Жабу
Events
Onclick
Форманы жабу оқиғасы
Button3
Properties
Caption
Келесі атауды енгізіңіз:Бірінші индексті табу
Events
Onclick
Енгізілген санның индексін табу оқиғасын өңдеу
Button4
Properties
Caption
Келесі атауды енгізіңіз:Кездейсоқ түрде енгізу
Events
Onclick
Массивті кездейсоқ түрде енгізу
Edit1
Properties
Caption
Text қасиет мәнін тазалау
Edit2
Properties
Caption
Text қасиет мәнін тазалау
Edit3
Properties
Caption
Text қасиет мәнін тазалау
1.Айнымалыларды енгізіңіз ik, k, i : integer; s : string; a : array [1..15] of integer.
2.Жобаны сақтап, жүктеңіз және тестілеңіз.
Бағдарлама листингі
procedure Tform1.FormCreate(Sender: Tobject);
begin
Edit1.Text := `';
Edit2.Text := `';
Edit3.Text := `';
end;
procedure Tform1.Button1Click(Sender: Tobject);
begin
Edit1.Text := `';
Edit2.Text := `';
Edit3.Text := `';
end;
procedure Tform1.Button2Click(Sender: Tobject);
begin
close;
end;
procedure Tform1.Button3Click(Sender: Tobject);
begin
k := StrToInt (Edit2.Text);
For i:= 1 to 15 do
if k = a[i] then ik := i;
if ik = 0 then Edit3.Text := `number ubsent'
else Edit3.Text := IntToStr (ik);
end;
procedure Tform1.Button4Click(Sender: Tobject);
begin
randomize;
s := `';
For i := 1 to 15 do
begin
a[i] := random (26);
s := concat (s, IntToStr (a[i]), #32);
end;
Edit1.Text := s;
end;
end.
Бірөлшемді жиымдар үшін көпжолдық редактор компоненттерін қолдану
Ақпаратты ЭЕМ-сына енгізу. Бір ақпараттың өзін бірнеше түрде және әртүрлі әдістермен көрсетуге болады. Кәзіргі есептеу техникасында ақпарат көбінесе екі түрлі сигналдардың тізбегі түрінде көрсетіледі: магниттелмеген не магниттелген, төмен не жоғары кернеу, электр тізбегі ажыратылған не қосылған.
Бұл жағдайлардың бірін 0 цифрымен, екіншісін 1 цифрымен белгілеуге келісілген.
Ақпарат ЭЕМ-сына енгізу үшін кодталады. Код деп мәліметті алдын ала келісілген символдардың немесе белгілердің жиынтығы түрінде көрсету.
Ақпаратты бір мен нөл цифрларының жиынтығы түрінде көрсету екілік кодтау деп аталады. Екілік кодтауда мәтіннің әрбір символы (әріп, цифр, тыныс белгілері) нөл мен бірдің бекітілген тізбегінен тұратын жиынтықтармен белгіленеді. Кәзіргі арнайы компьютерлерде нөл мен бірдің 8 орынды жиынтықтарынан тұратын кодты қолданып, 256 символды (қазақ не орыс және латын алфавиттерінің бас және кіші әріптерін, цифрлады, тыныс, арифметикалық және арнайы белгілерді) белгілеуге болады.
Ақпараттың өлшем бірлігі. Ақпараттың өлшем бірлігіне 1 бит алынады. Аяқталуының тек қана екі бірдей мүмкіндігі бар, құбылыс жөніндегі мәліметтегі ақпарат шамасы 1 битке тең деп есептеледі.
Екілік кодттау жүйесінде әрбір 0-мен 1-ге 1 бит ақпарат шамасы сәйкес келеді, ендеше әрбір символдағы ақпарат шамасы 8 бит. 1 бит өте кіші бірлік болғандықтан, 8 бит ақпарат шамасы 1 байт деп алынады. Сондықтан:
0 0 0 0 0 0 0 0 - 8 бит - 1 байт;
0 1 0 0 0 0 0 0 - 8 бит - 1 байт - латын алфавитінің А әрпі;
0 1 0 1 1 1 1 1 - 8 бит - 1 байт - латын алфавитінің а әрпі;
0 1 1 1 1 1 1 1 - 8 бит - 1 байт - орыс алфавитінің А әрпі;
1 0 0 1 1 1 1 0 - 8 бит - 1 байт - орыс алфавитінің а әрпі.
Сақталатын ақпарат көлемін өлшеу үшін үлкенірек жады көлем бірліктері қолданылады.
1 Килобайт (Кбайт) = 1024 байт = 210 байт = 213 бит;
1 Мегабайт (Мбайт) = 1024 Кбайт = 220 байт = 223 бит;
1 Гигабайт (Гбайт) = 1024 Мбайт = 230 байт = 233 бит;
1 Терабайт (Тбайт) = 1024 Гбайт = 240 байт = 243 бит;
1 Петабайт (Пбайт) = 1024 Тбайт = 250 байт = 253 бит.
210 = 1024
Мәліметтегі ақпарат шамасы ақпараттық көлем деп аталады. Мысалы МИРУ-МИР деген сөз тіркестегі ақпараттық көлем 8 байт; ал "МИРУ-МИР" деген сөз тіркесінің ақпараттық көлемі 10 байт, "МИРУ - МИР" сөз тізбегіндегі ақпараттық көлем 12 байт.
Есептеу техникасы үшін маңызды көрсеткіштерге, бір өлшем уақытта өңделетін не таратылатын ақпарат шамасына тең, ақпаратты өңдеу және тарату жылдамдықтары жатады. Ақпаратты өңдеу және тарату жылдамдықтары битс-пен өлшенеді.
Ақпаратты компьютерде сақтау.
Компьютермен өңделетін барлық ақпарат оның жадында екілік түрде сақталады.
Жұмыс барысында пайда болатын және компьютерге енгізілетін ақпарат оның жадысында сақталады. Компьютер жадысын қағаз бетіндегі ұзын жолдар бейнесінде елестетуге болады. Әрбір осындай жол ұяшық жады деп аталады. Ұяшық - бұл ішінде процессордың бұйрығымен өңделетін ақпарат орналасқан компьютер жадының бөлігі. Ұяшық ішіндегі құрылым машиналық сөз (машинное слово) деп аталады..
Ұяшық жады бір мәнді сандардан тұрады. Әрбір элемент әртүрлі қалыптағы жағдайда болады және санның бір разрядын бейнелеуге қабілетті. Міне сондықтан әрбір элемент ұяшығы разряд деп аталады.
Разрядты нөмірлеу оңнан солға қарай жүргізіледі. Ең шеткі оң разрядтың реттік саны 0 - ге тең. Бұл ұяшық жадының ең кіші разряды. Үлкен разрядтың реттік саны (n-1) n-разрядты ұяшық жадысы ішінде.
Кез келген разряд 0 немесе 1- ден құралады.
Машина сөзі (Машинное слово) нақты ЭЕМ үшін - бұл разрядтың бекітілген тұрақты саны. Берілген сан ЭЕМ сипаттайтын шамалардың бірі және ол машинаның разрядтығы деп аталады.
Мысалы, қазіргі заманғы компьютерлер 64-разрядты, яғни, машина сөзі (ұяшық жады) 64-разрядтан немесе биттен тұрады деген сөз.
Бит -- ақпарат өлшемінің ең кіші бірлігі.
Әрбір бит 0 және 1 мәндерін қабылдайды.
Бит деп және ЭЕМ ұяшық жады разрядын атайды.
Ең кіші ұяшық жадысының стандартты өлшемі сегіз битке тең, яғни, сегіз екілік разрядқа тең. 8 биттен тұратын қосылыс деректер сипатының негізгі бірлігі байт болып саналады. Байт (от ағылшын сөзі byte - слог) - 8 биттен тұратын және ЭЕМ біртұтас өңделетін машина сөзінің бөлігі.
Ақпаратты қандай да бір алфавит арқылы көрсету кодтау деп аталады.
Бір ғана ақпарат әртүрлі әдіспен көрсетілуі мүмкін.
Код дегеніміз бір белгілер тобын екінші белгілер түріне түрлендіру ережесі.
Мысалы, 967 саны мына түрде жазылуы мүмкін : тоғыз жүз алпыс жеті 96710, 17088, ЗС716 , 11110001112 , яғни, орыс тілі алфавиті түрінде кодтау, ондық, сегіздік, оналтылық, екілік санау жүйесінде.
Практикада ақпараттың көрсетілу түріне : сақтау, жеткізу, өңдеу тағы басқа процесстер байланысты болады.
Ақпаратты Кодтау процесі (оны шифрлеу деп те атайды) ақпаратты Декодтау процесімен (мағынасын ашу расшифровка) тығыз байланысты.
Санау жүйесі туралы түсінік.
Сандарды арнайы цифрлар деп аталатын символдар арқылы бейнелеу қабылданған.
Сандарды аталым және жазу әдісі санау жүйесі деп атайды.
Санау жүйесі екі топқа бөлінеді : позициялық және позицялық емес.
Позицялық емес санау жүйесінде әрбір цифр мағынасы оның орын алу позициясына байланысты емес. Оның мысалы ретінде римдік жүйені алуға болады. Бұл жүйедегі ХХХ санында, Х цифры кез келген позицияда 10 (он) білдіреді.
Позицялық емес санау жүйесінде арифметикалық амалдарды орындау қиынға соғады, сондықтан бүкіл әлемде позициялық санау жүйесіне көшкен.
Позициялық санау жүйесінде цифрлар өз орнына (позициясына) байланысты. Позициялық санау жүйесінің негізі дегеніміз жүйеде қолданылатын цифр саны.
а) Ондық санау жүйесі. Ондық атауы бұл жүйе негізінде он негізі болатынын білдіреді. Бұл жүйеде жазу үшін он цифр - 0,1, 2, 3, 4, 5, 6, 7, 8, 9 таңбалары қолданылады..
Ондық жүйеде цифрлар мәні жазылуында позицияға немесе орналасқан орнына байланысты болғандықтан позициялық жүйе болады.
Цифр санына арналған позицияны разряд деп атайды.
Мысалы, 425 жазуыында сан 4 жүздіктен, 2 ондықтан және 5 бірліктен тұрады.. 5 цифры бірлік разрядында , 2 цифры - ондық разрядында , 4 цифр -- жүздік разрядында..
Егер осы цифрларды басқа ретпен жазатын болсақ, мысалы, 524, онда бұл сан 5 жүздіктен, 2 ондықтан және 4 бірліктен тұрады.
5 саны ең көп салмаққа ие және санның үлкен цифры деп аталады, ал 4 цифры - ең аз салмақты және осы санның кіші цифры деп аталады.
Салмақ айырмашылықтары келесі жағдайда анық байқалады: егер осы санды қосынды түрінде жазатын болсақ, 524:
5 * 102 +2* 101 +4 * 100
Бұл жазуда 10 - саны санау жүйесінің негізі. Негіз 10 цифр позициясына сәйкес дәрежеленеді және осы цифрға көбейтіледі. Негіз дәрежесі бірліктер үшін - нолге, ондықтар үшін - бірге, жүздік үшін - екіге тең. Егер ондық сан бөлшек сан болса, онда оны да қосынды түрінде жазу оңай. Бөлшектің әрбір сан негізінің дәрежесі теріс және үлкен сан үшін - 1, келесі сан үшін - 2 ге тең, т.с.с.
Мысалы, ондық сан 384,9506 қосынды түрінде :
384,9506 = 3 * 102 + 8 * 101 + 4 * 100 + 9 * 10-1 + 5 * 10-2 + 0 * 10-3 +6 * 10-4;
856,25 = 8 * 102 + 5 * 101 - 6 * 100 + 2 * 10-1 - 5 * 10-2;
12937,1 = 1 * 104 + 2 * 103 + 9 * 102 + 3 * 10 + 7 * 100 + 1 * 10-1.
б) Екілік санау жүйесі. Компьютерде ондық санау жүйесі емес, екілік санау жүйесі қолданылады, яғни негізі 2 болатын санау жүйесі
Екілік санау жүйесінде кез келген ақпарат 0 мен 1 сандары көмегімен жазылады және екілік жүйесі деп аталады.
Екілік санау жүйесін ондық санау жүйесінен ажырату үшін екілік санды жазуда индекс ретінде 2 саны көрсетіледі., мысалы 110101,111 2,.
Екілік санның әрбір разрядын бит деп атайды.
Ондық сан тәрізді кез келген екілік сандарын қосынды түрінде көрсетуге болады.
Бұл қосындыда негіз ретінде 2 саны қолданылады, мысалы, 1010101,101 санының қосындысы былай жазылады:
1 * 26 + 0 * 25 + 1 * 24 + 0 * 23 + 1*2 2 + 0 * 21 +1 * 20 + 1 * 2-1 + 0 * 2-2 + 1 * 2-3
Арифметикалық амалдарды орындау нәтижесінде мәні 85,625 - ке тең ондық сан аламыз. Екілік сан 1010101,101 ондық сан 85,625 - ке тең келеді, немесе 1010101Д012 =85,62510.
Ереже. Екілік жүйесінен ондық жүйесіне ауыстыру үшін екілік санды дәреже қосындысы ретінде жазып, жалпы қосындыны табу керек.
Екілік жүйенің бір кемшілігі- сандарды жазуда 0 мен 1 цифрларын көп қолдануға тура келеді. Бұл адамның қабылдауына кедергі жасайды. Мысалы, ондық сан 156 екілік жүйеде былай жазылады: 10011100.
Бүтін ондық санды екілік санау жұйесіне ауыстыру.
1 Мысал. 11 санын ондық санау жүйесінен екілік жүйеге көшіреміз.
Бөлу процессінде қалған қалдықтарды керісінше бағытта жинақтаймыз (стрелкамен көрсетілген), екілік жүйеге ауыстыру қорытындысын аламыз. 11 10 = 1011 2
2 Мысал. Егер үлкен сандарды екілік жүйеге айналдыру керек болса, онда ауыстыруды төменде көрсетілген кесте түрінде есептеу ыңғайлы
Сан
363
181
90
45
22
11
5
2
1
Бөлгіш
2
2
2
2
2
2
2
2
2
Қалдық
1
1
0
1
0
1
1
0
1
Бөлу процессінде қалған қалдықтарды керісінше бағытта жинақтаймыз (стрелкамен көрсетілген), екілік жүйеге ауыстыру қорытындысын аламыз 36310 = 1011010112
Дұрыс бөлшек сандарды ондық жүйеден екілік жүйеге ауыстыру.
А ц - дұрыс ондық бөлшек болсын, оны былай жазуға болады:
А др = а -1 х 2[ ][-1] + а -2 х 2[ ][-2] +...
Егер Адр 2 - ге көбейтсек, оң жақ бөліктен мынаны аламыз а -1 + а -2 х 2[ ][-1] + а-3 х 2[ ][-2] +...,
мұнда а-1 - бүтін бөлік, Адр мәнін 2 дәреже бойынша жіктегенде бұл бізге дәреженің үлкен коэффициентін береді. Қалған бөлшек бөлігін тағы да 2- ге көбейтеміз де мына мәнді аламыз: а -2 + а-3 х 2[ ][-1] +... , мұндағы а-2 - бөлшек үтірінен кейінгі екінші коэффициент. Оң жақтан 0 санын немесе нақты нәтиже алғанға дейін көбейту процесі осылай жалғаса береді.
Қосу амалы
Екілік сандарды қосу сәйкес разрядтардың цифрларын тасмалдап қосу арқылы жасалады.. Екі екілік сандарды қосуда келесі ережелер қолданылады:
0 + 0 = 0
1 + 0 = 1
0 + 1 = 1
1+1=10 бірлікті көрші разрядқа (жоғарғы) тасмалдау
Мысал. Екілік сандарды қосу: 101+11 (ондық жүйеде 5+3=8).
Қосу амалын жетпейтін нольдерді толықтыра отырып, бағана түрінде орындаймыз :
101
+ 011
Қосу процесінің әрбір қадамын жеке қарастырайық:
1. Кіші разрядта қосу амалы орындалады: 1+1= 10. Кіші разряд қосындыcында 0 жазылады, және бірлік келесі үлкен разрядқа тасмалданады
2. Сол жақтағы келесі разряд цифрлары және тасмалдау бірлігі қосылады : 0+1+1=10. Бұл қосылыс разрядында 0 жазылады, және бірлік тағы да үлкен разрядқа тасмалданады.
3. Сол жақтағы үшінші разряд цифрлары және тасымалдау бірлігі қосылады : 1+0+1=10. Бұл разрядта 1 жазылады, және бірлік келесі үлкен разрядқа тасмалданады т.с.с.
4. Қорытындысынды мынаны аламыз:
101
+ 011
1000
Демек,10002 = 810
Қосу - екілік санау жүйесі арифметикасындағы маңызды операция. Екілік сандарға қолданылатын басқа да арифметикалық амалдар (алу, көбейту, бөлу) қосу амалы арқылы орындалады.
Алу амалы
Екілік сандарға алу амалын қолданғанда мынаны ескеру керек:
0 - 0 = 0
1 - 0 = 1
0 - 1 = 1 бірлікті көрші (үлкен) разрядтан аламыз
1 - 1 = 0
Мысал. Екілік сандардың айырмасын табу керек: 1010-101. Алуды кіші разрядтан бастап, бағана түрінде орындаймыз:
Алу процесінің әрбір қадамын жеке қарастырайық:
1. Кіші разряд үшін : 0 -- 1. Бірлікті үлкен разрядтан аламыз және табамыз: 10 - 1 = 1.
2. Келесі разрядты былай болады 0 - 0 = 0.
3. Сол жақ разрядта 0 -- 1. Бірлікті үлкен разрядтан аламыз да мынаны табамыз 10-1=1.
4. Келесі разрядта 0 қалды.
5. Қорытындыда мынаны алдық:
1010
- 101
101
2.4 Контейнерлер. Пішімдер. Модальды пішімдер.
Сұхбаттық терезелер
Бағдарламалау тілінің дамуымен қатар, кодты жазу кезіндегі технологиялар да өзгеріп отырды. Алғашқы батырмалар тұтас мәтін түрінде жазылды. Бұл командалардың баған түрінде жазылған жай тізбегі болды. Ол келесідей түрде көрінді:
Команда 1
Команда 2
Команда 3
...
...
Команда N.
Мұндай әдіспен көп мәселені шешуге келмейтін еді. Сондықтан бұған логика, яғни шартты көшу қосылды. Мысалы:
Егер шарт орындалса, онда 1-командаға, әйтпесе 3-командаға көшу
Команда 1
Команда 2
Команда 3
...
Команда N.
Бірақ соның өзінде де бағдарламалар жалпақ әрі ыңғайсыз болды.
Келесі қадам процедуралық бағдарламалау болды. Мұнда бағдарламаның кодын ... жалғасы
1.1. Тілдің операторлары.Меншіктеу операторы.
Теориялық шолу:
Паскаль бағдарламалау тілінде сызықтық бағдарлама жасамас бұрын келесі түсініктерге тоқталайық:
1.паскаль бағдарламалау тіліндегі операторлар қарапайым және құрама болып бөлінеді.
2.Операторлар бағдарламаның begin және end операторларының ішіне алынып жазылады.
3.begin және end операторлары операторлық жақшалар деп аталады.
Қарапайым оператор деп құрамына басқа операторлар енбейтін операторды айтады.
Бірнеше операторлардан тұратын және begin және end операторларының арасында жазылатын операторларды құрама оператор деп атайды.
Бос оператор деп ; операторын айтамыз. Бұл оператор оның алдындағы оператордың аяқталуын көрсетеді.
Енді сызықтық бағдарлама жасауға көшейік.
Еске сала кетейік : Бағдарлама деп белгілі бір бағдарламалау тілінде жазылған реттелген командалар тізбегін айтамыз. Белгілі бір алгоритмді бағдарламалау дегеніміз осы алгоритм орындалатын бағдарлама жазу. Ендеше сызықтық құрылымды алгоритмді бағдарламалап көрейік. Сонымен сызықтық алгоритм деп командалары бірінен соң бірі тізбектеліп орындалатын алгоритмді айтамыз.
Сызықтық бағдарлама жазу үшін келесі операторларды білу қажет:
меншіктеу операторы : =
енгізу операторы Read( );немесе Readln( );
шығару операторыWrite( );немес Writeln( );
Мәліметті енгізу-шығару
Екі санды қосу
Есеп. Екі бүтін санды қосып, қосындысын экранда шығару.
Шығарылуы:
program qq;
var a, b, c: integer;
begin
read ( a, b );
c := a + b;
writeln ( c );
end.
Енгізу операторы
read ( a ); { а айнымалысының мәнін енгізу}
read ( a, b ); { а және b айнымалыларының мәндерін енгізу}
Екі санды қалай енгізуге болады?
Шығару операторы
write ( a ); { a айнымалысының мәнін шығару}
writeln ( a ); {a айнымалысының мәнін шығарып,келесі жолға көшу}
writeln ( `Салем!' ); { мәтінді шығару}
writeln ( `Жауап: ', c ); { мәтінді және c айнымалысының мәнін шығару}
writeln ( a, '+', b, '=', c );
Шығару форматтары
program qq;
var i: integer;
x: real;
begin
i := 15;
writeln ( '', i, '' );
writeln ( '', i:5, '' );
x := 12.345678;
writeln ( '', x, '' );
writeln ( '', x:10, '' );
writeln ( '', x:7:2, '' );
end.
15
15
1.234568E+001
1.23E+001
12.35
Толық шығарылуы
program qq;
var a, b, c: integer;
begin
writeln(`Екі бүтін сан енгізіңіз');
read ( a, b );
c := a + b;
writeln ( a, '+', b, '=', c );
end.
Протокол:
Екі бүтін сан енгізіңіз
25 30
25+30=55
Құрама және бос оперaтор
Тіл операторлары
Тіл операторлары есепті шешу үшін орындалуы қажет қандайда бір алгоритмдердіқ іс-әрекеттерін анықтайды. Бағдарлама немесе ішкі бағдарлама құрылымын осындай операторлар тізбегі ретінде қарастыруға болады. Бірінен кейін бірі орындалатын бағдарлама операторы нүктелі үтірмен бөлінеді. Паскаль тілінің барлық операторларын екі топқа бөлуге болады, қарапайым және құрылымдық.
Қарапайым операторлар
Өзінің құрамында басқа операторлары болмайтын операторлар қарапайым операторлар болып табылады. Оларға:
меншіктеу операторы;
GOTO шартсыз өту операторы;
бос операторлар жатады.
Меншіктеу операторы
Меншіктеу операторы былайша орындалады:
Меншіктеу операторы символының оң жағындағы өрнек мәні бірінші есептелінеді.
Есептелген мән айнымалыға жазылады, айнымалы аты меншіктеу операторы символының оң жағына орна-ласқан.
Аты: = өрнек,
Мұндағы
Аты : = айнымалы (өзгеруі мүмкін).
Бұл операция үшін := меншіктеу таңбасы пайдаланылып, оның сол жағында мән меншіктелінетін айнымалы немесе функция аты жазылады, ал оң жағында өрнек жазылады.
Айнымалы мен функцияларға файл типінен басқа кез келген типті мәндерді меншіктеуге болады. Өрнек типі мен айнымалы (немесе функция) типі меншіктеу үшін бір-бірімен сәйкес болуы керек.
GOTO шартсыз өту операторы. Белгілерді қолдану
GOTO операторы операторлар орындалуының тізбекті ретін өзгертуге жөне көрсетілген оператордан бастап бағдарламаны орындауға ауысуға мүмкіндік береді. Ауысу орындалатын оператор белгіленуі керек. Осы белгі GOTO операторында көрсетілуі қажет.
Object Pascal-да пайдаланатын белгілер екі типті болуы мүмкін:
О-ден 9999 га дейінгі бүтін сандар;
жай атаулар.
Барлық пайдаланатын белгілер, Label тіркелген сөзімен басталатын белгілерді баяндау бөлімінде көрсетілуі қажет.
Мысалы:
Label,,2,Label 1;
Бір белгімен тек бір операторды белгілеуге болады. Белгі, белгіленген оператордан қос нүкте арқылы бөлінеді.
Құрылымдық операторлар
Құрамында басқа операторлар қамтылатын операторлар құрылымдық болып табылады. Оларға:
Құрамдас оператор;
IF шартты операторы;
CASE таңдау операторы;
REPEAT цикл операторы;
WHILE цикл операторы;
FOR цикл операторы;
WITH жазбалар операторы жатады.
Құрамдас оператор
Begin жэне end операторлық жақшаларға алынған, тізбекті түрде орындалатын операторлар жиынтығы қү-рамдас операторболып табылады;
Begin
l-ші оператор;
2-ші оператор ;
N-ші оператор ;
end;
1.2. Шартты оператор
Шартты оператор. Осы оператордың көмегімен қандай да бір шарттардың орындалуына қарай операторлардың орындалу ретін өзгертуге мүмкіндік туады. Шартты оператор былай жазылады:
If шарт then 1-әрекет else 2-әрекет;
Мұндағы if(егер), then(онда) және else(әйтпесе) - қызметші сөздер, ал 1-әрекет немесе 2-әрекет - операторлардың орындалу нәтижесін білдіретін операторлар. Мұнда шарт ақиқат болса 1-әрекет, жалған болса 2-әрекет орындалады. Шарт логикалық әрекетке жатады. Бұл жерде өрнектер мәні(оның ішінде логикалық та) салыстырылады, ол үшін Boolean типті мәнді қайтаратын функциялар шақырылады және ол мәндерді логикалық амалдармен қоса қолдана алады.
Амал
таңбасы Амалдың
атауы Логикалық амалдарды мына :
and (логикалық ЖӘНЕ)
or (логикалық НЕМЕСЕ)
xor (жоққа шығарушы НЕМЕСЕ) байланыстырушы амалдармен бірге пайдалануға болады.
Мәліметтердің кейбір типтері үшін қосымша амалдар бар. Мыс, жиын үшін in операторы - мәннің сол жиынға тиістілігін тексереді. K жиыны берілсін :
K := [1, 4, 7, 10, 13, 16] ;
мұнда 1 in K өрнегі ақиқат (true мәніне ие), ал 8 in K өрнегі жалған (false мәніне ие), өйткені 1 К жиынына тиісті, ал 8 мәні К-да жатпайды.
= тең
тең емес
үлкен
кіші
= үлкен не тең
= кіші не тең
not логикалық ЕМЕС - теріске шығару
ЖӘНЕ логикалық амалының орындалу нәтижесі екі операнд бірдей ақиқат болғанда ғана true - ге тең. НЕМЕСЕ логикалық амалының орындалу нәтижесі әйтеуір бір операнд ақиқат болғанда true мәнге ие болады. Егер операндтар бір-біріне тең болмаса, онда жоққа шығарушы НЕМЕСЕ амалының нәтижесі ақиқат болады.
Цикл оперторлар.
Цикл операторлары әрекеттердің бір ғана ізбен бірнеше рет қайталануын ұйымдастыруға мүмкіндік береді. Delphi-де бұл мақсатты орындайтын үш оператор бар. Олар:
:: циклдің жай операторы
:: циклдің шартты операторы
:: қайталаудың шартты операторы.
Циклдің жай операторы, оның қайталау саны алдынала белгілі болған жағдайда қолданылады және ол былай жазылады:
For санауыш:=1-өрнекto 2-өрнекdo әрекет;
Санауыш-бұл цикл операторы орналасқан логикалық блоктың алдында жариялануға тиісті айнымалы және оның типі саналатын типтердің біріне, әдетте Integer-ге тиесілі болуы тиіс. Мұндағы 1-өрнек пен 2-өрнек тұрақты немесе идентификатор бола алады. Әрекет - Delphi-дің бір немесе бірнеше операторларын білдіреді. Оператор жұмысы басталғанда айнымалы-санауыш 1-өрнектің мәнін қабылдайды. Егер мұнда санауыш мәні 2-өрнек мәнінен кем не оған тең болса, онда әрекет құрамына енетін операторлар орындалады. Міне осы бір цикл жай деп саналады. Содан соң айнымалы-санауыш ағымдағы келесі мәнді қабылдап, жаңа цикл басталады, яғни ол 2-өрнекпен санауышты салыстырады, әрекетті орындайды. Осылайша айнымалы-санауыштың мәні 2-өрнек мәнінен асқанға дейін цикл жалғаса береді.
Цикл операторының жұмысында айнымалы-санауыш өсу орнына кемитін жағдай да болуы мүмкін. Ондай жағдайда оператор былай жазылады:
For санауыш:=1-өрнекdownto 2-өрнекdo әрекет;
Мұнда 1-өрнектің мәні 2-өрнектен үлкен не оған тең болуы тиіс.
Циклдің қайталану саны алдынала белгісіз болған жағдай үшін мына түрде жазылатын циклдіңшартты операторын пайдаланған жөн:
While шартdo
цикл денесі;
Бұл цикл шарт ақиқат болып тұрған кездің барлығында орындалады. Мұнда шарт бірден жалған болса, онда цикл денесі бір рет те орындалмайды. Мұндай циклдің шарты мен циклдің аяқталуын жазуда өте мұқият болу керек, әйтпесе while циклі шексіз рет қайталанып, бағдарламаның орындалмай тұрып қалуына әкеліп соқтырады.
Қайталаудың шартты операторы алдымен цикл денесін орындайды, сонан соң барып шарттың орындалуын тексереді. Бұл оператор былай жазылады:
Repeat
Цикл денесі
Until шарт;
Циклдің бұл түрі оның ең болмағанда бір рет орындалуын ұйымдастырады. Мұнда цикл шарт ақиқатқа айналғанша орындалуын жалғастырады және цикл денесі логикалық beginend жақшасына алынбай жазылады. Цикл денесінің бас-аяғы repeat және until түйінді сөздерімен анықталады.
Цикл операторларымен қоса арнайы командалар да қолданылады, олар:
:: циклді үзу командасы
:: циклді жалғастыру командасы
Бірінші команда цикл денесі операторларының орындалуы кезінде оны аяқтау қажет болғанда пайдаланылады және ол былай жазылады: Break;
Осы команда орындалғанда басқару цикл операторынан кейінгі бірінші операторға беріледі.
Continue; командасы цикл денесіндегі басқа операторларды аттап өтіп бірден циклдің орындалуын жалғастыруға мүмкіндік жасайды.
Бағдарламаның орындалу ретін өзгертуге мүмкіндік беретін тағы бір оператор бар, ол көшу операторы: goto белгі;
Мұнда белгі ретінде кезкелген жарамды идентификатор немесе 0 мен 9999 аралығынан алынған сандар пайдаланылады. Белгіні алдынала айнымалыларды сипаттау бөлімінде var көмегімен емес, label түйінді сөзі арқылы сипаттау керек:
Label белгі; немесе label белгілер тізімі;
Бағдарлама бойынша көшу жоғары және төмен қарай да орындала береді. Мұнда белгі көшу жүргізілетін оператордан қос нүкте(:) арқылы ажыратылады. Көшу операторының қолданылу мысалын қарастырайық:
VarX, Y: Integer;
label A, B;
begin
A: X:=5 ;
. . .
бағдарлама операторлары
goto B;
. . .
B: Y:=25;
goto A;
end;
Осы мысалдағы бағдарламаны аяқтауға тиіс end операторы ешқашан орындалмайды, мұнда бағдарлама көшу операторларының жұмысы нәтижесінде шексіз қайталана береді. Сондықтан goto операторын программистер көп қолданбауға тырысады. Бағдарламада оның орнына шартты не циклдік операторларды пайдалану әлдеқайда тиімді.
Goto операторын тек бірнеше қабаттасқан циклдерден шығу кезінде қолданған дұрыс, әйтпесе одан шығу үшін бірнеше рет break командаларын қолдануға тура келеді
Қабаттасқан шартты оператор
If оператры қабаттасқан болуы мүмкін. Мысал қарастырайық. Парольдың дұрыс немесе дұрыс еместігін тексеретін программа құрайық. Парол - N. егер ол дұрыс жазылса, онда ол ақиқат болады, кері жағдайда жалған болады.егер ол ақиқат болса, онда оның х=100 бе екені тексеріледі. Егегр бұл ақиқат болса, онда Пароль және код дұрыс деген сөз шығарылады, егер ол жалған болса, Код қате деген сөз шығады.
Program Parol_Kod;
Var Ch: char;
Parol: Boolean;
X: integer;
Begin
Writeln (`Ch мәнін енгіз');
Read (Ch);
If Ch='N' then Parol:=True
Else Parol:=False;
Writeln (`X енгіз');
Read (X);
If Parol=True then
If X=100 then Write (`Пароль және код дұрыс')
Else begin
Writeln (`Код қате');
Halt (1) {программаны тоқтату үшін стандартты процедура}
End;
End.
1.3. Таңдау операторы
Егер if операторы екі альтернативаның бірін ғана таңдауға мүмкіндік берсе, case таңдау операторы кез келген мөлшердегі нұсқалардың бірін таңдауға мүмкіндік береді. Ол селектор (selection - альтернативаны таңдау) деп аталатын өрнектен және таңдау константасының тізімінен басталатын параметрлер тізімінен тұрады.
Case операторының синтаксистік диаграммасы :
сase
cелектор
of
константа
:
оператор
end
else
оператор
Case операторының жазылу форматы:
Case селектор-өрнек of
тізім1: оператор1;
тізім2: оператор2;
...
тізімN: операторN
Else оператор
End;
Мысал. Апта күнінің нөмірін енгізген кезде экранға оның атын шығаратын программа құру
Program Day_Week;
Var Day: byte;
Begin
Write (`Апта күнінің номерін енгізіңіз');
Readln (Day);
Case Day of
1 : Writeln (`Дүйсенбі');
2 : Writeln (`Сейсенбі');
3 : Writeln (`Cәрсенбі');
4 : Writeln (`Бейсенбі');
5 : Writeln (`Жұма');
6 : Writeln (`Сенбі');
Else
Writeln (`Жексенбі');
end;
end.
Таңдау операторына есептер шығару
CASE таңдау операторының көмегімен берілген блоктардың кез-келген нұсқасын таңдауға болады. Егер орындалатын блокта бірнеше оператор болса, онда олар операторлыќ жаќшаға алынып жазылады.
CASE N OF
1:1 блок;
2:2 блок;
... ... ... ...
N: N блок; END;
Таңдау командаларымен программа ќұру.
1.4. Жиын
Берілгендер типі жалпы 3-ке бөлінеді:
Стандартты типтер
Қолданушы (стандартты емес) типтер
Структуралы (құрылымдық)
Стандартты емес типтерге жататындар:
массивтер
жолдар
жиындар
Бұл типтер программада type сөзінен кейін жазылады. Типтің атауын қолданушы өзі береді.
Структуралы типке жататындар:
файлдар
жазулар
Жиындар - бір-бірімен логикалық байланысқан біртекті объектілер жиынтығы. Жиынның әр объектісі оның элементі деп аталады. Паскаль тілінде жиын тік жақшаға алынады: [1,2,3,4], [`a', `b', `c'], [`a'..`z'].
Ешқандай элементі жоқ жиыды бос жиын деп атайды.
Жиын типін сипаттау үшін set of (множество из) сөз тіркесі қолданылады.
Жиын форматы:
Type
тип атауы = set of элемент1, ..., элементn;
Var
идентификатор, . . . : тип атaуы;
Жиынды алдын ала сипаттаусыз да жазуға болады:
Var
идентификатор, . . . : set of элемент1, ..., элементn;
Мысал:
Type
Simply = set of `a'..`h';
Number = set of 1..31;
Var
Pr : Simply;
N: Number;
1.5. Параметрлі цикл
Программаның белгілі бір бөлігін орындалуын бірнеше рет қайталау үшін циклдық операторлар қолданылады. Қайталау саны цикл ұйымдастырылғанда беріледі. Цикл тақырыптан және цикл денесінен тұрады.
Циклдерді ұйымдастыру үшін үш түрлі циклдық операторларды қолдануға болады.
1.FOR ...DO циклдық операторы.
FOR K:=M TO N DO
цикл денесі;кері цикл болғанда:
FOR K: DOWNTO M
цикл денесі;
К - циклдық айнымалы (есептеуіш),
М- К айнымалысының алғашқы мәні,
N - К айнымалысының соңғы мәні.
К айнымалысының мәні соңғы мәннен
асып кеткенше цикл орындалады.
Program Kvadrat;
Var
x: integer; {сан}
y: integer; {саның квадраты}
i: integer; {цикл санағышы}
begin
writeln (`Квадраттар кестесі');
writeln (`------------------------');
writeln (`Сан Квадраты');
for i:=1 to 10 do
begin
y:=x*x;
writeln (x:3, y:10);
x:=x+1;
end;
writeln (`-------------------------');
readln
end.
Циклдік программаларқұру.
Циклдер
Цикл - белгілі бір әрекеттер тізбегінің бірнеше рет қайталанып орындалуы.
қадамдар саны белгілі цикл
қадамдар саны белгісіз цикл (шартты цикл)
Алгоритм(цикл блогымен)Айнымалысы кеміп отыратын цикл
Есеп. 8-ден 1-ге дейінгі бүтін сандардың квадраттары мен кубтарын есептеп шығару (кері қарай есептеу).
Ерекшелігі: цикл айнымалысы кеміп отыруы керек.
Шығарылуы:
for i:=8 downto 1 do begin
i2 := i*i;
i3 := i2*i;
writeln(i:4, i2:4, i3:4);
end;
1.6. Итерациялық типтегі цикл операторлары
Итерациялық типтегі цикл операторлары
Шарты алдынан берілген цикл
While (әзір) операторының форматы
While (шарт) do цикл денесі;
10 кез келген санның қосындысын есептейтін программа құру
Program Kosyndy;
Const n=10;
Var
c, i, s:integer;
begin
c:=0; {сандар санағышы}
s:=0; {сандар қосындысы}
while (cn) do
begin
c:=c+1;
write (с`-ші санды енгіз');
readln (i);
s:=s+I;
end;
Writeln (`S=', s);
End.
Шарты соңынан берілген циклдар
Шарты соңынан берілген цикл
Жазылу форматы
Repeat
оператор;
...
оператор
Until циклды аяқтайтын шарт;
Program Mysal;
Var
X:integer;
S:real;
Begin
S:=0;
Repeat
Write (`x-тің мәні');
Readln (x);
If x999 then
S:=s+x;
Until x=999;
Writeln (`s=', s);
End.
II бөлім. Delphi-дің негізгі компоненттері. Құрылымдық типтер және оларды Delphi-де ұйымдастыру
2.1 Мәліметтерді енгізу-шығару. Кескіндеу және түзету компоненттері.Мәліметтерді енгізу-шығару
Delphi жүйесі кішкентай ғана бағдарламалар мен утилиттер жасаудан бастап, мәліметтер қорымен жұмыс істейтін корпоративтік жүйелер, Интернетке арналған бағдарламалар мен коммерциялық ойындар құруға қолданылады.
Delphi тарихы, Delphi тілінің версиялары
Delphi-дің бірінші нұсқасы 1994 жылы жарыққа шығып, кейінгі жылдары оның бірте-бірте кеңейтілген 2, 3, 4, 5, 6, 7-нұсқалары жарық көрді. Мысалы, 5-нұсқа 1999 жылы, 6-нұсқа 2001 жылдың мамыр айында жарыққа шықты. 5,6-нұсқалардың бір-бірінен айырмашылығы жоқ деуге болады, екеуі де Windows операциялық жүйесінің негізінде дайындалған.
Тек, Delphi 6,7 оған қоса 1991 жылы жарық көрген, салыстырмалы арзан, Linux операциялық жүйесінің негізінде де жұмыс істей алады.
Delphi 6,7-лерде интернет үшін қосымшаларды дайындау мүмкіндігі кеңейтілген және берілгендер қорымен жұмыс істеуге кейбір өзгешіліктер енгізілген.
Delphi 7 ортасы және оның құрамы
Delphi 7 ортасы 5 терезеден тұрады:
Басты терезе (Delphi 7). Ол үш бөліктен тұрады:
Басты мәзір
Пиктографикалық мәзір (Инструменттер панелі)
Компоненттер палитрасы
Стадартты форма терезесі (Form1)
Объектілер инспекторы (Object Inspector) - объектілер қасиеттері редакторының терезесі.
Объект қасиеттері - объект түрін сипаттайтын, орналасу жағдайларын көрсететін сипаттамалар. Мысалы, width - форма енінің өлшемі;
Height - форма биіктігінің өлшемі;
Top және left - форманың экранға орналасуы;
Caption - тақырып аты.
Объект тізімін қарау терезесі (Object TreeView - объектілер бұтағын құру)
Код редакторы терезесі. Ол екі бөліктен тұрады:
Бастапқы мәтін редакторының терезесі (Unit 1. pas)
Оның сол жақ панелі Сілтеуіш болып табылады, ол арқылы бастапқы мәтін бөліктерінің арасында және жасалатын бағдарлама құрылымы бойынша оңай қозғалуға болады.
Қарапайым бағдарлама құру
Консольдық қосымша
Delphi 7 көмегімен графикалық интерфейчті пайдаланып, кез келген күрделіліктегі Windows қосымшаларын құруға болады. Алайда Паскаль операторларымен енді ғана таныстып жатқан қолданушылар MS-DOS стиліндегі қарапайым бағдарламалар құруына болады.
Бұларды консольдық қосымшалар деп атайды. Олар сырт көзге мәіндік интерфейсті бағдарламалар сияқты көрінеді, бірақ Windows-тың көптеген функцияларын қолдана алады.
Консольдық қосымша құру үшін File - New - Other (Файл - Создать - Другое) командасын орындап, ашылған New Items (Бағдарлама құру) сұхбат терезесінде Concole Application (Консольдық қосымша) белгішесін таңдау керек.
Delphi 7 жүйесі автоматты түрде мәтіндік редакторда бастапқы кодты - болашақ бағдарламаның қаңқасын жасап қояды:
Program Project 1;
{$APPTYPE CONCOLE}
Uses sysutils;
Begin
{TODO -oUSER -cConsole Main : Insert code here}
end.
Код Program кілттік сөзінен және автоматты түрде қойылған Project 1 атынан тұратын бағдарлама тақырыбынан басталады.
Бұдан соң комментарий ретінде компилятор директивасы кетеді. Ол әдеттегі комментарийден $ символымен ерекшеленеді.
{$APPTYPE CONCOLE} диективасы компиляторға берілген бағдарламаның консольдық қосымша болып табылатынын айтады.
Келесі жол sysUtils стандарттық модулін қосу үшін қолданылады.
Бұдан соң бағдарлама кетеді. Ол үшін логикалық блок дайындалып қойған. Оның ішіне Delphi 7 жүйесі Insert code here (Мұнда өзіңіздің бастапқы мәтініңізді енгізіңіз) деген комментарийін жазып қойған.
Мәтіндік ақпараттарды кескіндеу және түзету компоненттері
Компиляция және бағдарламаны жүктеу
Берілген бағдарламаны компиляциялап, бірден жүктеу үшін F9 пернесін басса болғаны.
Екі санды қосу бағдарламасы
Program Project 1;
{$APPTYPE CONCOLE}
Uses sysutils;
Var x, y, z: integer;
Begin
Readln (x, y);
Z:=x+y;
Writeln (z);
readln
end.
2.2 Жолдар. Жолдық процедуралар мен функциялар
Жолдар
Standard компоненттер панелінде екі компонент бар: TGroupBox және TPanel. Бірінші қарағанда екеуінің қызметтері бірдей көрінеді. Екеуімен де форманың белгілі бір бөлігін рамкаға алып, элементтерді топтастыруға болады.
Панель тек әр түрлі (дөңес, ойыс) рамкаларды сызып қана қоймай, кез келген басқару элементтерін біріктіріп, орындарын ауыстыруға да қолданылады.
Оның мынадай қасиеттері бар:
BevelInner және BevelOuter қасиеттері панельдің сәйкесінше ішкі және сыртқы рамкаларының стильдерін береді. Олар клесі 4 мәннің бірін қабалдауы мүмкін:
Мәндері
Рамка түрі
bvNone
Жоқ
bvLowered
ойыс рамка (вдавленная)
bvRaised
дөңес рамка (выпуклая)
bvSpace
жалпақ рамка (плоская)
BevelWidth ішкі және сыртқы рамкалардың ара қашықтығын анықтайды (пиксель бойынша)
Орын ауыстыру механизмі
Панельдер формада тышқанның көмегімен объектілердің орындарын ауыстыру үшін қолданылады. Бұл механизм drag-and-drop деп аталады.
Мысал қарастырайық:
Формаға үш компонент қояйық: мәтіндік өріс, панель және батырма (Edit1, Panel1, Button1)
Жолдық процедуралар
Процедура деп атау берілген, арнайы амалдарды орындайтын, љзінше тѕуелсіз программаны айтады. Процедура тақырыбынан жѕне оның денесінен тұрады.
Процедураны оның атауы арқылы шақырады.
1. DЕLETE(S,М,N)-S-тің мѕнінің М-ші орнынан бастап N символды алып тастап нѕтижені S-ке жазады.
2. INTERT(S1,S2,N) - S2-нің N позициясынан бастап S1 жолын S2 жолының арасына орналастырады да, нѕтижені S2-ге жазады.
3. STR(І,S) - I санын жолға айналдырады да, S-айнымалысына орналастырады.
4.VAL(S,I,cod) - сандық S жолын бџтін немесе нақты санға аударады да, нѕтижені І-ге жазадыг cod-бџтін типтегі сан. Егер cod=0, онда аударылғаны дџрыс, соd=0 қате, оның мѕні І-ші қате кеткен орынды кљрсететін санға тең.
2.3 Жиымдар (масссивтер).
Бірөлшемді жиымдар. Мәліметтердің құрылымдық типтері
Жұмыстың мақсаты - кез келген сандар массивінің индекстік санын табатын бағдарлама құру
Бағдарламаны құру жоспары
Жаңа жоба ашу.
Формада келесі компоненттерді орналастыру: Button, Edit, Label.
Келесі әрекеттерді орындау:
Кесте 22.
Ерекшеленген объект
Терезе қосымшасы
Object Inspector
Қасиет атауы
оқиға атауы
Әрекет
Form1
Properties
Caption
Форманың атын беруЖаңа жоба
Events
OnCreate
Text қасиетінің мәндерін тазалау
Button1
Properties
Caption
Келесі атауды енгізіңіз: Тазалау
Events
Onclick
Text қасиетінің мәндерін тазалау
Button2
Properties
Caption
Келесі атауды енгізіңіз:Жабу
Events
Onclick
Форманы жабу оқиғасы
Button3
Properties
Caption
Келесі атауды енгізіңіз:Бірінші индексті табу
Events
Onclick
Енгізілген санның индексін табу оқиғасын өңдеу
Button4
Properties
Caption
Келесі атауды енгізіңіз:Кездейсоқ түрде енгізу
Events
Onclick
Массивті кездейсоқ түрде енгізу
Edit1
Properties
Caption
Text қасиет мәнін тазалау
Edit2
Properties
Caption
Text қасиет мәнін тазалау
Edit3
Properties
Caption
Text қасиет мәнін тазалау
1.Айнымалыларды енгізіңіз ik, k, i : integer; s : string; a : array [1..15] of integer.
2.Жобаны сақтап, жүктеңіз және тестілеңіз.
Бағдарлама листингі
procedure Tform1.FormCreate(Sender: Tobject);
begin
Edit1.Text := `';
Edit2.Text := `';
Edit3.Text := `';
end;
procedure Tform1.Button1Click(Sender: Tobject);
begin
Edit1.Text := `';
Edit2.Text := `';
Edit3.Text := `';
end;
procedure Tform1.Button2Click(Sender: Tobject);
begin
close;
end;
procedure Tform1.Button3Click(Sender: Tobject);
begin
k := StrToInt (Edit2.Text);
For i:= 1 to 15 do
if k = a[i] then ik := i;
if ik = 0 then Edit3.Text := `number ubsent'
else Edit3.Text := IntToStr (ik);
end;
procedure Tform1.Button4Click(Sender: Tobject);
begin
randomize;
s := `';
For i := 1 to 15 do
begin
a[i] := random (26);
s := concat (s, IntToStr (a[i]), #32);
end;
Edit1.Text := s;
end;
end.
Бірөлшемді жиымдар үшін көпжолдық редактор компоненттерін қолдану
Ақпаратты ЭЕМ-сына енгізу. Бір ақпараттың өзін бірнеше түрде және әртүрлі әдістермен көрсетуге болады. Кәзіргі есептеу техникасында ақпарат көбінесе екі түрлі сигналдардың тізбегі түрінде көрсетіледі: магниттелмеген не магниттелген, төмен не жоғары кернеу, электр тізбегі ажыратылған не қосылған.
Бұл жағдайлардың бірін 0 цифрымен, екіншісін 1 цифрымен белгілеуге келісілген.
Ақпарат ЭЕМ-сына енгізу үшін кодталады. Код деп мәліметті алдын ала келісілген символдардың немесе белгілердің жиынтығы түрінде көрсету.
Ақпаратты бір мен нөл цифрларының жиынтығы түрінде көрсету екілік кодтау деп аталады. Екілік кодтауда мәтіннің әрбір символы (әріп, цифр, тыныс белгілері) нөл мен бірдің бекітілген тізбегінен тұратын жиынтықтармен белгіленеді. Кәзіргі арнайы компьютерлерде нөл мен бірдің 8 орынды жиынтықтарынан тұратын кодты қолданып, 256 символды (қазақ не орыс және латын алфавиттерінің бас және кіші әріптерін, цифрлады, тыныс, арифметикалық және арнайы белгілерді) белгілеуге болады.
Ақпараттың өлшем бірлігі. Ақпараттың өлшем бірлігіне 1 бит алынады. Аяқталуының тек қана екі бірдей мүмкіндігі бар, құбылыс жөніндегі мәліметтегі ақпарат шамасы 1 битке тең деп есептеледі.
Екілік кодттау жүйесінде әрбір 0-мен 1-ге 1 бит ақпарат шамасы сәйкес келеді, ендеше әрбір символдағы ақпарат шамасы 8 бит. 1 бит өте кіші бірлік болғандықтан, 8 бит ақпарат шамасы 1 байт деп алынады. Сондықтан:
0 0 0 0 0 0 0 0 - 8 бит - 1 байт;
0 1 0 0 0 0 0 0 - 8 бит - 1 байт - латын алфавитінің А әрпі;
0 1 0 1 1 1 1 1 - 8 бит - 1 байт - латын алфавитінің а әрпі;
0 1 1 1 1 1 1 1 - 8 бит - 1 байт - орыс алфавитінің А әрпі;
1 0 0 1 1 1 1 0 - 8 бит - 1 байт - орыс алфавитінің а әрпі.
Сақталатын ақпарат көлемін өлшеу үшін үлкенірек жады көлем бірліктері қолданылады.
1 Килобайт (Кбайт) = 1024 байт = 210 байт = 213 бит;
1 Мегабайт (Мбайт) = 1024 Кбайт = 220 байт = 223 бит;
1 Гигабайт (Гбайт) = 1024 Мбайт = 230 байт = 233 бит;
1 Терабайт (Тбайт) = 1024 Гбайт = 240 байт = 243 бит;
1 Петабайт (Пбайт) = 1024 Тбайт = 250 байт = 253 бит.
210 = 1024
Мәліметтегі ақпарат шамасы ақпараттық көлем деп аталады. Мысалы МИРУ-МИР деген сөз тіркестегі ақпараттық көлем 8 байт; ал "МИРУ-МИР" деген сөз тіркесінің ақпараттық көлемі 10 байт, "МИРУ - МИР" сөз тізбегіндегі ақпараттық көлем 12 байт.
Есептеу техникасы үшін маңызды көрсеткіштерге, бір өлшем уақытта өңделетін не таратылатын ақпарат шамасына тең, ақпаратты өңдеу және тарату жылдамдықтары жатады. Ақпаратты өңдеу және тарату жылдамдықтары битс-пен өлшенеді.
Ақпаратты компьютерде сақтау.
Компьютермен өңделетін барлық ақпарат оның жадында екілік түрде сақталады.
Жұмыс барысында пайда болатын және компьютерге енгізілетін ақпарат оның жадысында сақталады. Компьютер жадысын қағаз бетіндегі ұзын жолдар бейнесінде елестетуге болады. Әрбір осындай жол ұяшық жады деп аталады. Ұяшық - бұл ішінде процессордың бұйрығымен өңделетін ақпарат орналасқан компьютер жадының бөлігі. Ұяшық ішіндегі құрылым машиналық сөз (машинное слово) деп аталады..
Ұяшық жады бір мәнді сандардан тұрады. Әрбір элемент әртүрлі қалыптағы жағдайда болады және санның бір разрядын бейнелеуге қабілетті. Міне сондықтан әрбір элемент ұяшығы разряд деп аталады.
Разрядты нөмірлеу оңнан солға қарай жүргізіледі. Ең шеткі оң разрядтың реттік саны 0 - ге тең. Бұл ұяшық жадының ең кіші разряды. Үлкен разрядтың реттік саны (n-1) n-разрядты ұяшық жадысы ішінде.
Кез келген разряд 0 немесе 1- ден құралады.
Машина сөзі (Машинное слово) нақты ЭЕМ үшін - бұл разрядтың бекітілген тұрақты саны. Берілген сан ЭЕМ сипаттайтын шамалардың бірі және ол машинаның разрядтығы деп аталады.
Мысалы, қазіргі заманғы компьютерлер 64-разрядты, яғни, машина сөзі (ұяшық жады) 64-разрядтан немесе биттен тұрады деген сөз.
Бит -- ақпарат өлшемінің ең кіші бірлігі.
Әрбір бит 0 және 1 мәндерін қабылдайды.
Бит деп және ЭЕМ ұяшық жады разрядын атайды.
Ең кіші ұяшық жадысының стандартты өлшемі сегіз битке тең, яғни, сегіз екілік разрядқа тең. 8 биттен тұратын қосылыс деректер сипатының негізгі бірлігі байт болып саналады. Байт (от ағылшын сөзі byte - слог) - 8 биттен тұратын және ЭЕМ біртұтас өңделетін машина сөзінің бөлігі.
Ақпаратты қандай да бір алфавит арқылы көрсету кодтау деп аталады.
Бір ғана ақпарат әртүрлі әдіспен көрсетілуі мүмкін.
Код дегеніміз бір белгілер тобын екінші белгілер түріне түрлендіру ережесі.
Мысалы, 967 саны мына түрде жазылуы мүмкін : тоғыз жүз алпыс жеті 96710, 17088, ЗС716 , 11110001112 , яғни, орыс тілі алфавиті түрінде кодтау, ондық, сегіздік, оналтылық, екілік санау жүйесінде.
Практикада ақпараттың көрсетілу түріне : сақтау, жеткізу, өңдеу тағы басқа процесстер байланысты болады.
Ақпаратты Кодтау процесі (оны шифрлеу деп те атайды) ақпаратты Декодтау процесімен (мағынасын ашу расшифровка) тығыз байланысты.
Санау жүйесі туралы түсінік.
Сандарды арнайы цифрлар деп аталатын символдар арқылы бейнелеу қабылданған.
Сандарды аталым және жазу әдісі санау жүйесі деп атайды.
Санау жүйесі екі топқа бөлінеді : позициялық және позицялық емес.
Позицялық емес санау жүйесінде әрбір цифр мағынасы оның орын алу позициясына байланысты емес. Оның мысалы ретінде римдік жүйені алуға болады. Бұл жүйедегі ХХХ санында, Х цифры кез келген позицияда 10 (он) білдіреді.
Позицялық емес санау жүйесінде арифметикалық амалдарды орындау қиынға соғады, сондықтан бүкіл әлемде позициялық санау жүйесіне көшкен.
Позициялық санау жүйесінде цифрлар өз орнына (позициясына) байланысты. Позициялық санау жүйесінің негізі дегеніміз жүйеде қолданылатын цифр саны.
а) Ондық санау жүйесі. Ондық атауы бұл жүйе негізінде он негізі болатынын білдіреді. Бұл жүйеде жазу үшін он цифр - 0,1, 2, 3, 4, 5, 6, 7, 8, 9 таңбалары қолданылады..
Ондық жүйеде цифрлар мәні жазылуында позицияға немесе орналасқан орнына байланысты болғандықтан позициялық жүйе болады.
Цифр санына арналған позицияны разряд деп атайды.
Мысалы, 425 жазуыында сан 4 жүздіктен, 2 ондықтан және 5 бірліктен тұрады.. 5 цифры бірлік разрядында , 2 цифры - ондық разрядында , 4 цифр -- жүздік разрядында..
Егер осы цифрларды басқа ретпен жазатын болсақ, мысалы, 524, онда бұл сан 5 жүздіктен, 2 ондықтан және 4 бірліктен тұрады.
5 саны ең көп салмаққа ие және санның үлкен цифры деп аталады, ал 4 цифры - ең аз салмақты және осы санның кіші цифры деп аталады.
Салмақ айырмашылықтары келесі жағдайда анық байқалады: егер осы санды қосынды түрінде жазатын болсақ, 524:
5 * 102 +2* 101 +4 * 100
Бұл жазуда 10 - саны санау жүйесінің негізі. Негіз 10 цифр позициясына сәйкес дәрежеленеді және осы цифрға көбейтіледі. Негіз дәрежесі бірліктер үшін - нолге, ондықтар үшін - бірге, жүздік үшін - екіге тең. Егер ондық сан бөлшек сан болса, онда оны да қосынды түрінде жазу оңай. Бөлшектің әрбір сан негізінің дәрежесі теріс және үлкен сан үшін - 1, келесі сан үшін - 2 ге тең, т.с.с.
Мысалы, ондық сан 384,9506 қосынды түрінде :
384,9506 = 3 * 102 + 8 * 101 + 4 * 100 + 9 * 10-1 + 5 * 10-2 + 0 * 10-3 +6 * 10-4;
856,25 = 8 * 102 + 5 * 101 - 6 * 100 + 2 * 10-1 - 5 * 10-2;
12937,1 = 1 * 104 + 2 * 103 + 9 * 102 + 3 * 10 + 7 * 100 + 1 * 10-1.
б) Екілік санау жүйесі. Компьютерде ондық санау жүйесі емес, екілік санау жүйесі қолданылады, яғни негізі 2 болатын санау жүйесі
Екілік санау жүйесінде кез келген ақпарат 0 мен 1 сандары көмегімен жазылады және екілік жүйесі деп аталады.
Екілік санау жүйесін ондық санау жүйесінен ажырату үшін екілік санды жазуда индекс ретінде 2 саны көрсетіледі., мысалы 110101,111 2,.
Екілік санның әрбір разрядын бит деп атайды.
Ондық сан тәрізді кез келген екілік сандарын қосынды түрінде көрсетуге болады.
Бұл қосындыда негіз ретінде 2 саны қолданылады, мысалы, 1010101,101 санының қосындысы былай жазылады:
1 * 26 + 0 * 25 + 1 * 24 + 0 * 23 + 1*2 2 + 0 * 21 +1 * 20 + 1 * 2-1 + 0 * 2-2 + 1 * 2-3
Арифметикалық амалдарды орындау нәтижесінде мәні 85,625 - ке тең ондық сан аламыз. Екілік сан 1010101,101 ондық сан 85,625 - ке тең келеді, немесе 1010101Д012 =85,62510.
Ереже. Екілік жүйесінен ондық жүйесіне ауыстыру үшін екілік санды дәреже қосындысы ретінде жазып, жалпы қосындыны табу керек.
Екілік жүйенің бір кемшілігі- сандарды жазуда 0 мен 1 цифрларын көп қолдануға тура келеді. Бұл адамның қабылдауына кедергі жасайды. Мысалы, ондық сан 156 екілік жүйеде былай жазылады: 10011100.
Бүтін ондық санды екілік санау жұйесіне ауыстыру.
1 Мысал. 11 санын ондық санау жүйесінен екілік жүйеге көшіреміз.
Бөлу процессінде қалған қалдықтарды керісінше бағытта жинақтаймыз (стрелкамен көрсетілген), екілік жүйеге ауыстыру қорытындысын аламыз. 11 10 = 1011 2
2 Мысал. Егер үлкен сандарды екілік жүйеге айналдыру керек болса, онда ауыстыруды төменде көрсетілген кесте түрінде есептеу ыңғайлы
Сан
363
181
90
45
22
11
5
2
1
Бөлгіш
2
2
2
2
2
2
2
2
2
Қалдық
1
1
0
1
0
1
1
0
1
Бөлу процессінде қалған қалдықтарды керісінше бағытта жинақтаймыз (стрелкамен көрсетілген), екілік жүйеге ауыстыру қорытындысын аламыз 36310 = 1011010112
Дұрыс бөлшек сандарды ондық жүйеден екілік жүйеге ауыстыру.
А ц - дұрыс ондық бөлшек болсын, оны былай жазуға болады:
А др = а -1 х 2[ ][-1] + а -2 х 2[ ][-2] +...
Егер Адр 2 - ге көбейтсек, оң жақ бөліктен мынаны аламыз а -1 + а -2 х 2[ ][-1] + а-3 х 2[ ][-2] +...,
мұнда а-1 - бүтін бөлік, Адр мәнін 2 дәреже бойынша жіктегенде бұл бізге дәреженің үлкен коэффициентін береді. Қалған бөлшек бөлігін тағы да 2- ге көбейтеміз де мына мәнді аламыз: а -2 + а-3 х 2[ ][-1] +... , мұндағы а-2 - бөлшек үтірінен кейінгі екінші коэффициент. Оң жақтан 0 санын немесе нақты нәтиже алғанға дейін көбейту процесі осылай жалғаса береді.
Қосу амалы
Екілік сандарды қосу сәйкес разрядтардың цифрларын тасмалдап қосу арқылы жасалады.. Екі екілік сандарды қосуда келесі ережелер қолданылады:
0 + 0 = 0
1 + 0 = 1
0 + 1 = 1
1+1=10 бірлікті көрші разрядқа (жоғарғы) тасмалдау
Мысал. Екілік сандарды қосу: 101+11 (ондық жүйеде 5+3=8).
Қосу амалын жетпейтін нольдерді толықтыра отырып, бағана түрінде орындаймыз :
101
+ 011
Қосу процесінің әрбір қадамын жеке қарастырайық:
1. Кіші разрядта қосу амалы орындалады: 1+1= 10. Кіші разряд қосындыcында 0 жазылады, және бірлік келесі үлкен разрядқа тасмалданады
2. Сол жақтағы келесі разряд цифрлары және тасмалдау бірлігі қосылады : 0+1+1=10. Бұл қосылыс разрядында 0 жазылады, және бірлік тағы да үлкен разрядқа тасмалданады.
3. Сол жақтағы үшінші разряд цифрлары және тасымалдау бірлігі қосылады : 1+0+1=10. Бұл разрядта 1 жазылады, және бірлік келесі үлкен разрядқа тасмалданады т.с.с.
4. Қорытындысынды мынаны аламыз:
101
+ 011
1000
Демек,10002 = 810
Қосу - екілік санау жүйесі арифметикасындағы маңызды операция. Екілік сандарға қолданылатын басқа да арифметикалық амалдар (алу, көбейту, бөлу) қосу амалы арқылы орындалады.
Алу амалы
Екілік сандарға алу амалын қолданғанда мынаны ескеру керек:
0 - 0 = 0
1 - 0 = 1
0 - 1 = 1 бірлікті көрші (үлкен) разрядтан аламыз
1 - 1 = 0
Мысал. Екілік сандардың айырмасын табу керек: 1010-101. Алуды кіші разрядтан бастап, бағана түрінде орындаймыз:
Алу процесінің әрбір қадамын жеке қарастырайық:
1. Кіші разряд үшін : 0 -- 1. Бірлікті үлкен разрядтан аламыз және табамыз: 10 - 1 = 1.
2. Келесі разрядты былай болады 0 - 0 = 0.
3. Сол жақ разрядта 0 -- 1. Бірлікті үлкен разрядтан аламыз да мынаны табамыз 10-1=1.
4. Келесі разрядта 0 қалды.
5. Қорытындыда мынаны алдық:
1010
- 101
101
2.4 Контейнерлер. Пішімдер. Модальды пішімдер.
Сұхбаттық терезелер
Бағдарламалау тілінің дамуымен қатар, кодты жазу кезіндегі технологиялар да өзгеріп отырды. Алғашқы батырмалар тұтас мәтін түрінде жазылды. Бұл командалардың баған түрінде жазылған жай тізбегі болды. Ол келесідей түрде көрінді:
Команда 1
Команда 2
Команда 3
...
...
Команда N.
Мұндай әдіспен көп мәселені шешуге келмейтін еді. Сондықтан бұған логика, яғни шартты көшу қосылды. Мысалы:
Егер шарт орындалса, онда 1-командаға, әйтпесе 3-командаға көшу
Команда 1
Команда 2
Команда 3
...
Команда N.
Бірақ соның өзінде де бағдарламалар жалпақ әрі ыңғайсыз болды.
Келесі қадам процедуралық бағдарламалау болды. Мұнда бағдарламаның кодын ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz