Си және Паскаль тілдері



Мазмұны ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..1.

1. Екі өлшемді массивтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..3.
1.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ..4.
1.2. Программаның блок.схемасы ... ... ... ... ... ... ... ... ... ..5.6
1.3. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ... .7.
1.4. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ...7.
1.4.1. Pascal тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...7.
1.4.2. Си тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 7.
1.5. Қолданылған техникалық құралдар ... ... ... ... ... ... ... ... ... ... ..7.
1.6. Шақырылуы және жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ... 7.
1.7. Енгізілетін мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 7.
1.8. Шығарылатын мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..8.
2.Процедуралар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .8.
2.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... .9.
2.2. Программаның блок.схемасы ... ... ... ... ... ... ... ... ... ..10.
2.3. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...10.
2.4. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..10.
2.4.1. Pascal тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .10.
2.4.2. Си тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..11.
2.5. Қолданылған техникалық құралдар ... ... ... ... ... ... ... ... ... ... 11.
2.6. Шақырылуы және жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ..11.
2.7. Енгізілетін мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..11.
2.8. Шығарылатын мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... 11.
3. Жолдар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .11.
3.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ...13.
3.2. Программаның блок.схемасы ... ... ... ... ... ... ... ... ... ..13.
3.3. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...14.
3.4. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..14.
3.4.1. Pascal тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .14.
3.4.2. Си тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..14.
3.5. Қолданылған техникалық құралдар ... ... ... ... ... ... ... ... ... ... 14.
3.6. Шақырылуы және жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ..14.
3.7. Енгізілетін мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..14.
3.8. Шығарылатын мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... 14.
4. Жазбалар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..15.
4.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ...16.
4.2. Программаның блок.схемасы ... ... ... ... ... ... ... ... ... ..17.
4.3. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...17.
4.4. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..17.
4.4.1. Pascal тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .17.
4.4.2. Си тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..18.
4.5. Қолданылған техникалық құралдар ... ... ... ... ... ... ... ... ... ... 18.
4.6. Шақырылуы және жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ..18.
4.7. Енгізілетін мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..18.
4.8. Шығарылатын мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... 18.
5. Файлдар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...18.
5.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ...20.
5.2. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...20.
5.3. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..20.
5.3.1. Pascal тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .20.
5.3.2. Си тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..21.
5.4. Қолданылған техникалық құралдар ... ... ... ... ... ... ... ... ... ... 21.
5.5. Шақырылуы және жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ..21.
5.6. Енгізілетін мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..21.
5.7. Шығарылатын мәліметтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... 21.
6. Графика ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...21.
6.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 23.
6.2. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...23.
6.3. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..24.
6.4. Қолданылған техникалық құралдар ... ... ... ... ... ... ... ... ... ... 24.
6.5. Шақырылуы және жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ..24.

Қосымша A ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..25.
Қосымша B ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..27.
Қосымша C ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..29.
Қосымша D ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..31.
Қосымша E ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..33.
Қосымша F ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..35.

Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..37.
Массив дегеніміз бірдей типті мәліметтердің жиыны. Басқаша айтқанда, массивтер бір атауға біріктірілген айнымалылардың реттелген тізбегі. Массивті сипаттағанда оның элементтерінің жалпы санын және элементтерінің типін көрсету қажет. Элементтерінің индексі арқылы массивтің әрбір элементін бөлек қарастыруға болады. Массив типін келесі түрде анықтауға болады:
TYPE <типтің аты>=ARRAY[<индекстік типтердің тізбегі>] OF <типі>
< типтің аты > - дұрыс идентификатор;
< индекстік типтердің тізбегі > - бір немесе бірнеше индекстік типтердің тізбегі (үтір арқылы жазылады);
<тип> - массив элементтерінің типі.
Turbo Pascal тіліндегі индекстік типтер ретінде кез келген реттік типтерді пайдалануға болады. Содан кейін массив программасының VAR бөлігінде келесі түрде сипатталады:
VAR <типтің аты>=ARRAY[<индекстік типтердің тізбегі>] OF <типі>
Әдетте индекстік типі ретінде диапазон типі пайдаланылады. Диапазон типінде индекстің өзгеру шекаралары анықталады.
const n=5;
m=6;
var a: array[1..n,1..m] of real;
b:array [1..n] of real;
i,j: integer;

Қолданылған шартты операторлар:
begin
b[i]:=1;
for j:=1 to m do
if(a[i,j]>1) and(a[i,j]<1.5) then b[i]:=b[i]*sqr(a[i,j]);end;
Қолданылған циклдік операторлар:
begin
for i:=1 to n do
for j:=1 to m do
readln(a[i,j]);
1. Культин В.В. “Turbo Pascal в задачах и решениях” – Спб.: БХВ – Питербург, 2003.
2. Фаронов В.В. “Turbo Pascal 7.0. Начальный курс”, учебное пособие. – М: Ноллидж, 1998.
3. Ж.Қ. Масанов, Б.А. Бельгибаев, А.С. Бижанова, Қ.Қ. Мақұлов. Алматы: “Бастау” баспаханасы, 2004 – 221 бет.
4. Немнюгин С.А. “Turbo Pascal: практикум” – Спб.: Питер,2002.
5. Керниган, Ричи “Язык С”.
6. Муртазина А.У., Тусупова Б. “Основы программирования на языках Паскаль и Си”. Методическое указание к лабораторным работам по курсу “Языки и технология программирования”. – Алматы: КазНТУ, 2000.

Мазмұны

Мазмұны ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..1.

1. Екі өлшемді массивтер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..3.
1.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ..4.
1.2. Программаның блок-схемасы ... ... ... ... ... ... ... ... ... ..5-6
1.3. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ... .7.
1.4. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ...7.
1.4.1. Pascal
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 7.

1.4.2. Си
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
...7.
1.5. Қолданылған техникалық
құралдар ... ... ... ... ... ... ... ... ... ... ...7.
1.6. Шақырылуы және
жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ... .7.
1.7. Енгізілетін
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... 7.

1.8. Шығарылатын
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ... .8.

2.Процедуралар ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ...8.
2.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... .9.
2.2. Программаның блок-схемасы ... ... ... ... ... ... ... ... ... ..10.
2.3. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...10.
2.4. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..10.
2.4.1. Pascal
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..10.
2.4.2. Си
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
.11.
2.5. Қолданылған техникалық
құралдар ... ... ... ... ... ... ... ... ... ... .11.
2.6. Шақырылуы және
жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ...11.
2.7. Енгізілетін
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ..11.
2.8. Шығарылатын
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ...11.
3.
Жолдар ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ...11.
3.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ...13.
3.2. Программаның блок-схемасы ... ... ... ... ... ... ... ... ... ..13.
3.3. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...14.
3.4. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..14.
3.4.1. Pascal
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..14.
3.4.2. Си
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
.14.
3.5. Қолданылған техникалық
құралдар ... ... ... ... ... ... ... ... ... ... .14.
3.6. Шақырылуы және
жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ...14.
3.7. Енгізілетін
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ..14.
3.8. Шығарылатын
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ...14.
4.
Жазбалар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ..15.
4.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ...16.
4.2. Программаның блок-схемасы ... ... ... ... ... ... ... ... ... ..17.
4.3. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...17.
4.4. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..17.
4.4.1. Pascal
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..17.
4.4.2. Си
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
.18.
4.5. Қолданылған техникалық
құралдар ... ... ... ... ... ... ... ... ... ... .18.
4.6. Шақырылуы және
жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ...18.
4.7. Енгізілетін
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ..18.
4.8. Шығарылатын
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ...18.
5.
Файлдар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ..18.
5.1. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ...20.
5.2. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...20.
5.3. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..20.
5.3.1. Pascal
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..20.
5.3.2. Си
тілінде ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
.21.
5.4. Қолданылған техникалық
құралдар ... ... ... ... ... ... ... ... ... ... .21.
5.5. Шақырылуы және
жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ...21.
5.6. Енгізілетін
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ..21.
5.7. Шығарылатын
мәліметтер ... ... ... ... ... ... . ... ... ... ... ... ... ... ...21.
6.
Графика ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ..21.
6.1. Есептің
қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
23.
6.2. Функционалды қолдануы ... ... ... ... ... ... ... ... ... ... ...23.
6.3. Логикалық құрылымның баяндалуы ... ... ... ... ... ... ... ..24.
6.4. Қолданылған техникалық
құралдар ... ... ... ... ... ... ... ... ... ... .24.
6.5. Шақырылуы және
жіктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ...24.

Қосымша
A ... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ...25.
Қосымша
B ... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ...27.
Қосымша
C ... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ...29.
Қосымша
D ... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ...31.
Қосымша
E ... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ...33.
Қосымша
F ... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ...35.

Қорытынды ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ...37.

1. Екі өлшемді массивтер.
Turbo Pascal тіліндегі екі өлшемді массивтер.

Массив дегеніміз бірдей типті мәліметтердің жиыны. Басқаша
айтқанда, массивтер бір атауға біріктірілген айнымалылардың реттелген
тізбегі. Массивті сипаттағанда оның элементтерінің жалпы санын және
элементтерінің типін көрсету қажет. Элементтерінің индексі арқылы массивтің
әрбір элементін бөлек қарастыруға болады. Массив типін келесі түрде
анықтауға болады:
TYPE типтің аты=ARRAY[индекстік типтердің тізбегі] OF типі
типтің аты - дұрыс идентификатор;
индекстік типтердің тізбегі - бір немесе бірнеше индекстік типтердің
тізбегі (үтір арқылы жазылады);
тип - массив элементтерінің типі.
Turbo Pascal тіліндегі индекстік типтер ретінде кез келген
реттік типтерді пайдалануға болады. Содан кейін массив программасының VAR
бөлігінде келесі түрде сипатталады:
VAR типтің аты=ARRAY[индекстік типтердің тізбегі] OF типі
Әдетте индекстік типі ретінде диапазон типі пайдаланылады. Диапазон типінде
индекстің өзгеру шекаралары анықталады.
const n=5;
m=6;
var a: array[1..n,1..m] of real;
b:array [1..n] of real;
i,j: integer;

Қолданылған шартты операторлар:
begin
b[i]:=1;
for j:=1 to m do
if(a[i,j]1) and(a[i,j]1.5) then b[i]:=b[i]*sqr(a[i,j]);end;
Қолданылған циклдік операторлар:
begin
for i:=1 to n do
for j:=1 to m do
readln(a[i,j]);

Си тіліндегі екі өлшемді массивтер.

Массив бірдей типтегі айнымалылардың тізбегін бір бүтін етіп
сақтай алады. Массивті хабарлау деп оның атауы мен элементтерінің типін
анықтауды айтады. Ол сондай-ақ массивтегі элементтер санын да береді.
Массив типіндегі айнымалы өрнектерде берілген спецификациядағы тип мәніне
тұрақты ретінде қолданылуы мүмкін. Егер де сипатталатын массив типі
көрсетілмесе, онда int типін қолдану ұсынылады.
Екі өлшемді массивті сипаттау синтаксисі келесі түрде болады:
[сипатталатын массив типі] айнымалы-идентификатор
[тұрақты өрнек] [тұрақты өрнек]
айнымалы-идентификатордың соңындағы квадратты жақшалар массив
типінің белгісі болып саналады. Квадратты жақшалардағы әр тұрақты өрнек
берілген өлшеудегі массивтің элементтерінің санын анықтайды. Массивтің
элементтерін индекстеу нөлден басталады. Сонымен массивтің соңғы
элементінің индексі массивтегі элементтер санына 1-ге кем болады. Массивке
оның элементтерін орналастыратын жады бөлінеді. Массивтің біріншісі
элементінен соңғы элементіне дейін барлығы адрестерінің өсу реті бойынша
тізбектелген жады ұяшықтарында орналасады. Жадыда массив элементтері
арасында бос орындар жоқ. Көп өлшемді массивтердің элементтері қатар
бойынша сақталынады.
p=1;
for(j=1;j=m;j++)
if(a[i][j]1 && a[i][j]1.5) p*=a[i][j]*a[i][j];
Қолданылған циклдік операторлар:
void main()
{float a[n][m];
int i,j;
float p;
clrscr();
for (i=1;i=n;i++)
for (j=1;j=m;j++)
scanf("%f",&a[i][j]);

1.1. Есептің қойылымы.
Си тілінің амалдары мен стандартты функцияларынан құралатын
өрнектер арқылы мынадай есепті шығару: а1,...а10, b1,...,b20 нақты сандары
берілген. c[i j] нақты матрицасын табу керек. I=,...,20; j=1,...,10;
Cij=Aj(1+Bi) үшін.

1.2. Программаның блок-схема

1.3. Функционалды қолдануы.

Берілген программаның мақсаты енгізу-шығару процедурасын қолданып,
программалау барысында меншіктеу операторы, шартты операторлар, түрлі
қайталану операторларын, массивтерді қолданып жұмысты жүзеге асыру.

1.4. Логикалық құрылымның баяндалуы.

1.4.1. Pascal тілінде

1. Программаның басы;

2. Экранды тазалауға арналған функция;

3-5. Айнымалыларды сипаттау бөлімі;

6. Негізгі программаның басы;

7-10. Массив элементтерін енгізу;

11-17. Әрбір жолдан минимум элементтерді табу;

18-22. Минимум элементтердің ішінен максимум элементті табу;

23-26. Максимум элементтің индекстерін шығару;

27. Программаның соңы.

1.4.2. Си тілінде

1-2. Негізгі библиотекаларды іске қосу;

3. Программаның басы;

4. Айнымалыларды сипаттау бөлімі;

5-8. Массив элементтерін енгізу;

9-14. Әрбір жолдан минимум элементтерді табу;

15-19. Минимум элементтердің ішінен максимум элементті табу;

0-23. Максимум элементтің индекстерін шығару; Программаның соңы.

1.5. Қолданылған техникалық құралдар.

Бұл программаны жүзеге асыруда Windows XP, Atlon 1700, 256 Мб Ram,
Ge Forсe2 32 Мб, hp photosmart 7260 принтері қолданды.

1.6. Шақырылуы және жіктелуі.
TP - Turbo exe - File - Open - E389.pas - ctrl+F9 (exe) -
Alt+F5(қолданушының экраны).

1.7. Енгізілетін мәліметтер.
Vvedi a[10]
1 2 3 4 5 6 7 8 9 10
Vvedi b[5] 1 2 3 4 5

1.8. Шығарылатын мәліметтер.
C[I,j]= 1 1 2 2 3
0 1 1 1 2
0 1 1 1 1
0 0 1 1 1
0 0 1 1 1
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5

2. Процедуралар.

Turbo Pascal тіліндегі процедуралар

.Кез келген процедура программаға ұқсас түрінде жазылады. Олардың тақырыбы
баяндау немесе сипаттау бөлімі және операторлар бөлімдері
болды.Процедураның жалпы құрылымы:

Procedure проецедураның аты[(форм.параметр тізімі)];

баяндау бөлімі

begin

операторлар бөлімі

end;

Процедураны параметрсіз де пайдалануға болады. Программаның орындалуы
негізгі программаның операторларының орындалуынан басталады. Негізгі
программада қашан процедураның орындалуы қажет болғанда ғана процедураға
көшеді. Бұл жағдайда мәліметтер негізгі программадан процедураға беріледі.
Процедура орындалып болғаннан соң оның нәтижесі (шығатын параметрлер)
процедураға негізгі программадан қай жерден көшті сол жерге басқару
беріледі. Одан соң негізгі программаға орындала бастайды. Атаулардың
пайдалану аймағы негізгі программада баяндалған атау негізгі және қосалқы
программада процедура және функцияда пайдалана береді. Мұндай атаулар ортақ
(глобальды) атаулар деп атайды. Қосалқы программада баяндалған атаулар тек
сол қосалқы программада ғана пайдаланылады. Мұндай атауларды жергілікті
(локальды) атаулар деп атайды.Негізгі программада процедураны шақыру келесі
түрде орындалады:

проц.аты [(нақтылы параметрлер тізімі)] ;

Процедура шақырылғанда басқару процедураға беріледі және процедураның
формальды параметрлері сәйкес нақтылы параметрлермен ауыстырылады.
Формальды және нақтылы параметрлер үшін келесі талаптар орындалуы қажет:

формальді және нақтылы параметрлер саны бірдей болу керек.

формальді және нақтылы параметрлердің типтері және олардың орналасу реті
бірдей болу қажет.

T P тілінде формальді параметрдің үш түрі бар:

1. параметр – мән

2. параметр – айнымалы

3. параметр – тұрақты

Егер формальды параметрдің параметр – айнымалы ретінде анықталған болса,
формальды параметр алдында Var түйінді сөзі жазылады. Ал параметр – тұрақты
алдында const деген сөз жазылады.

Procedure Proc1 (x:real; var y:real; const st:string);

Си тілінде процедураларды қолдану.

Процедура – кейбір жеке есептерді орындауға арналған нұсқаулар
мен сипаттаулар жиынтығы. Программада функциялардың санына шек қойылмайды.
Си тіліндегі кез келген программа кемінде бір функцияны, main атты
функцияны құрады.
Процедураны анықтау – оның аты, формальды параметрлерінің
атрибуттары және баяндаулар мен нұсқауларды құрайтын функцияның денесін
сипаттау. Функцияны анықтағанда функцияның жады класы мен қайтарылатын
мәнінің типін беруге болады.
Процедураны анықтау функцияның аты мен қайтарылатын мәнінің
типін береді. Функцияны анықтағанда қайтарылатын мәнінің типі int болса,
оны көрсетудің қажеті жоқ. Ал қайтарылатын мәнінің басқа типінде міндетті
түрде осы типті көрсету қажет.
Процедураны анықтау деп оның аты, формальды параметрі мен
денесін сипаттауды айтады. Процедураны анықтау синтаксисі келесідей:
[жады класының спецификациясы] [тип спецификациясы]
сипаттағыш ([параметрлер тізімі]) [параметрлердің
баяндалуы]
функция денесі
Жады класының спецификациясы Процедураның жады класын береді, ал
тип спецификациясы сипаттағышпен жиынтығында функцияның аты мен
қайтарылатын мәнінің типін анықтайды. Параметрлер тізімі процедураны
шақыруды мәндері жіберілетін формальды параметрлер аттарының тізімін
құрайды.

# include stdio.h
# include float.h
# include math.h
# define n 4
int a[n][2];
float plosh(int k,int d,int e);
main ()
{
float p;
int i;
clrscr ();

2.1. Есептің қойылымы.
Си тілінің амалдары мен стандартты процедуралардан құралатын
өрнектер арқылы мынадай есепті шығару: Нақты сандар берілген s және t
f(a,b,c)=2a-b-sinc5+cмәнінде, f(t-2s,1.17)+(2.2,t,s-t) айнымалыны
есептеп шығару.

2.2. Программаның блок-схем

2.3. Функционалды қолдануы.

Берілген программаның мақсаты енгізу-шығару процедурасын қолданып,
программалау барысында меншіктеу операторы, шартты операторлар, түрлі
қайталану операторларын, процедура мен функцияны қолданып жұмысты жүзеге
асыру.

2.4. Логикалық құрылымның баяндалуы.

2.4.1. Pascal тілінде

1-2. Программаның басы;

3. Экранды тазартуға арналған процедура;

4. Айнымалыларды сипаттау бөлімі;

5-12. Процедураны сипаттау;

13. Негізгі программаның басы;

14-18. Негізгі формулалар, процедураның орындалуы;

19. Программаның соңы.

2.4.2. Си тілінде

1-2. Негізгі библиотекаларды іске қосу;

3-7. Процедураны сипаттау;

8. Негізгі программаның басы;

9. Айнымалыларды сипаттау бөлімі;

10-13. Негізгі формулалар, процедураның орындалуы;

14. Программаның соңы.

2.5. Қолданылған техникалық құралдар.

Бұл программаны жүзеге асыруда Windows XP, Atlon 1700, 256 Мб Ram,
Ge Forсe2 32 Мб, hp photosmart 7260 принтері қолданды.

2.6. Шақырылуы және жіктелуі.
TP - Turbo exe - File - Open – Е454.pas - ctrl+F9 (exe) -
Alt+F5(қолданушының экраны).

2.7. Енгізілетін мәліметтер.
S=1

T=2

2.8. Шығарылатын мәліметтер.
F(t,-2s,1.17)+f(2.2,t,s-t)=1.363462 _

3. Жолдар.
Turbo Pascal тіліндегі жолдар.

Программалау практикасында мәтіндермен жұмыс істегенде string типті
пайдаланған ыңғайлы болады. Turbo Pascal жүйесінде алдын ала ұзындығы
анықталмаған жолдар тушін әдетте string типі қолданылады.
VAR FIO:STRING [25];
ADR: STRING [35];
MAMAN: STRING;
STRING типті айнымалыларды салыстыру, жалғастыру, меншіктеу
амалдарын қолдануға болады.
STRING типпен жұмыс істегенде келесі стандартты функция мен
процедураларды қолдануға болады:
CONCAT - берілген жолдарды біріктіру үшін пайдаланады.
COPY- берілген жолдың анықталған бөлігін көшіру үшін
пайдаланады.
LENGTH - жолдың нақты ұзындығын анықтайды.
POS - бір жолдың ішіндегі екінші жолдың бар екенін анықтайды
және позициясын қайтарады.
DELETE - берілген сөздің бөлігің өшіру үшін қолдынылады.
INSERT - қайсы бір жолды берілген жолдың анықталған позициясынан
бастап еңгізеді.
STR - берілген санды жолға түрлендіреді.
VAL - берілген жолды санға ауыстырады.
Қолданылған шартты операторлар:
begin
a:=0;
for j:=1 to length(sr) do
if s[i]=sr[j] then a:=1;
if a=0 then k:=1;
end;
if k=1 then writeln('Ne vse bukvy') else writeln ('vse bukvu');
readln;
end.

Си тіліндегі жолдар.

Программалау практикасында мәтіндермен жұмыс істегенде char типін
пайдалануға ыңғайлы болады. Мысалы:
#include stdio.h
main()
{
char str[80];
printf(“Simvoldardyengiz: \n”);
gets(str);
printf(“Engizilgen simboldar:%s”,str);
}
Жолдармен жұмыс істеу үшін келесі библиотеканы ашамыз:
#includestring.h
Жолдармен жұмыс істеу үшін келесі функцияларды қолданамыз:
Strcpy(s1,s2) – s2 жолының мазмұнын s1-ге көшіреді.
Strcut(s1,s2) – s2 жолын s1 жолына біріктіреді және бұдан s2 жолының
мазмұны өзгермейді.
Strlen(s) – s жолының ұзындығын анықтайды және соңындағы 0-ші байтты
есепке алмайды.
Strcmp(s1,s2) – s1 мен s2 жолдарын салыстырады. Егер жолдар тең болса,
яғни бірдей символдардан тұратын болса, 0 мәнін қайтарады. Егер s1s2 оң
мән, s1s2 болса, теріс мән қайтарады. Мысалы:
#includestdio.h
#includestring.h
main()
{
char s[20];
printf(“Zholdy engiz:”);
gets(s);
printf(“Zholdin uzindigi %d”,strlen(s));
}

3.1. Есептің қойылымы.
Си тілінің амалдары мен стандартты функцияларынан құралатын өрнектер
арқылы мынадай есепті шығару: Әріптер жинағы берілген,мұндағы ‘а’ әріпі
кемінде екі рет кездесетін әріптер жинағын табу керек .

3.2. Программаның блок-схемасы.

3.3. Функционалды қолдануы.

Берілген программаның мақсаты енгізу-шығару процедурасын қолданып,
программалау барысында меншіктеу операторы, шартты операторлар, түрлі
қайталану операторларын, жолдардың кейбір процедуралары мен функцияларын
қолданып жұмысты жүзеге асыру.

3.4. Логикалық құрылымның баяндалуы.

3.4.1. Pascal тілінде

1. Программаның басы;

2. Экранды тазарту үшін алынған функция;

3-4. Айнымалыларды сипаттау бөлімі;

5. Негізгі программаның басы;

6-8. Текстті енгізу және оқу;

9-14. Егер қандайда бір сөзде ’a’ әріпі кемінде екі рет
кездессе, сол сөзді экранға шығарады ;

15. Программаның соңы.

3.4.2. Си тілінде

1-2. Негізгі библиотекаларды іске қосу;

3. Программаның басы;

4-5. Айнымалыларды сипаттау бөлімі;

6-8. Текстті енгізу және оқу;

9-13.Егер қандайда бір сөзде а әріпі кемінде екі рет кездессе,
сол сөзді экранға шығарады.

14-15.программаның соңы.

3.5. Қолданылған техникалық құралдар.

Бұл программаны жүзеге асыруда Windows XP, Atlon 1700, 256 Мб Ram,
Ge Forсe2 32 Мб, hp photosmart 7260 принтері қолданды.

3.6. Шақырылуы және жіктелуі.
TP - Turbo exe - File - Open – Е808g.pas - ctrl+F9 (exe) -
Alt+F5(қолданушының экраны).

3.7. Енгізілетін мәліметтер.
Adam manitor karta krutoi

3.8. Шығарылатын мәліметтер.
Adam karta
4. Жазбалар.
Turbo Pascal тіліндегі жазбалар.

Жазба массив тәрізді мәліметтердің күрделі типін қарастыруға
пайдаланады. Жазбаның массивтен айырмашылығы:
1.Жазбаны құрастырушы элементтер әртүрлі типті болуы мүмкін.
2.Жазбаны құрастырушы элементтердің атауларымен ғана тікелей анықталады.
Тұрақты өрісті жазбалар:
Программа текстінде RECORD типі келесі түрде сипатталады, ең
алдымен TYPE бөлімі сипатталады:
TYPE N TYPE= RECORD
ID11, ... ID1N: TYPE1;
... ... ... ... ... .
IDK1,...IDKN: TYPE;
Мұнда N TYPE – жазба типінің идентификаторы;
ID11,...IDKN – жазба өрістерінің идентификаторы;
TYPE1 ... . TYPEК - өрістердің типтері;
VAR R:NTYPE – Мұнда R – RECORD типті айнымалы;
Мысалы: Дата жазбасы 3 өрістен тұрады және келесі түрде сипатталады:
TYPE DATE TYPE= RECORD
күн: 1...31
ай: 1...12
жыл: 1900...2004
END;
VAR D: DATA;
Жазба айнымалысының өрісін программа текстінде пайдаланғанда
жазба айнымалысының идентификаторымен, нүктемен бөліктелген өрістің
идентификаторы көрсетіледі.
Мысалы: D. күн:=12;
D. ай:=10;
D. жыл:=2000;
Жазбаның өрістерін программада пайдалану үшін құрамды аттар
пайдаланылады.

Си тіліндегі құрылымдық типтер. Құрылым.

Құрылым - әртүрлі типтегі атауы бар элементтер жиынын біріктіреді.
Құрылымға біріктірілген айнымалыларды құрылымның элементтері, мөлшері
немесе өрістері деп атайды. Жазылу форматы:

Struct құрылым типінің атауы
{элементтерді анықтау};

Мысалы:
Struct goods {
char name;
long price;
float percent;
int vol;
char date[9] };
Мұндағы, Struct - құрылымдық типінің қызметші сөзі, goods - құрылымның
атауы. { } – goods типті элементтерді сипаттау орналасқан. ; - міндетті
түрде.
Құрылым элементтеріне қатынасу:
struct goods coat;
coat.name
coat.price
type def struct {
double real;
double imag; }
complex;
Динамикалық құрылым:
Программалау тілдерінде мәліметтер типімен оларды анықтау әр объект
үшін жадыдағы көлемін анықтау үшін қажет.
Struct student
{ int i;
long l;
char c[10]; };
sizeof(int)+sizeof(long)+10*sizeof( char);
немесе
sizeof(struct student)
Мұндай объектілер статистикалық мәліметтерді көрсетеді.
Көптеген есептерде өлшемдері, құрамдары әр түрлі өте күрделі мәләметтерді
қолдануға тура келеді. Мұндай мәліметтерді динамикалық құрылым деп атайды.
Қарапайым динамикалық құрылым – бұл элементтері ретінде сол құрылымдық
типтің объектілері болып табылатын бір байланысты тізім, яғни:
Struct құрылымдық типтің аты
{ құрылым элементтері;

Struct құрылымдық_типтің аты * көрсеткіш;
Әр құрылымға құрылыммен анықталған объектіге көрсеткіш кіреді.

4.1. Есептің қойылымы.
Си тілінің амалдары мен стандартты функцияларынан құралатын өрнектер
арқылы мынадай есепті шығару: Абитуриент туралы бағдарлама, олардың
фамилиясы,аты,ұлты,адресі,туған жылы мен аттестаттың орташа бала
туралы.Егер бірдей фамилиясы бар жағдайда,оны экранға шығару керек.

4.2. Программаның блок-схемасы.

4.3. Функционалды қолдануы.

Берілген программаның мақсаты енгізу-шығару процедурасын қолданып,
программалау барысында меншіктеу операторы, шартты операторлар, түрлі
қайталану операторларын, құрылымды қолданып жұмысты жүзеге асыру.

4.4. Логикалық құрылымның баяндалуы.

4.4.1. Pascal тілінде

1. Программаның басы;

2. Тұрақтыларды сипаттау бөлімі;

3-9. Жазба айнымалыларын сипаттау;

10-13. Айнымалыларды сипаттау бөлімі;

14-16. Жазбаны іске қосу;

17-28. Мәліметтерді енгізу;

29-33. Егер бірдей фамилия бар болса ,оларды экранға аттарын

шығарады.34-35. программаның соңы.

4.4.2. Си тілінде

1-3. Негізгі библиотекаларды іске қосу;

4. Тұрақтылар бөлімін сипаттау;

5. Программаның басы;

6-11. Жазба айнымалыларын сипаттау;

12-13. Айнымалыларды сипаттау бөлімі;

14-16. Мәліметтерді енгізу;

17-19. Егер бірдей фамилиясы бар жағдайда,оны экранға шығару
керек. программаның соңы.

4.5. Қолданылған техникалық құралдар.

Бұл программаны жүзеге асыруда Windows XP, Atlon 1700, 256 Мб Ram,
Ge Forсe2 32 Мб, hp photosmart 7260 принтері қолданды.

4.6. Шақырылуы және жіктелуі.
TP - Turbo exe - File - Open – Е10b.pas - ctrl+F9 (exe) -
Alt+F5(қолданушының экраны).

4.7. Енгізілетін мәліметтер.
Abil Bauka Kazak Ailm 1985 53
Naza Nurik Uzbek Kiz 1986 57
Abil Darkan Tatar Ural 1987 50

4.8. Шығарылатын мәліметтер.

Abil Bauka Kazak Ailm 1985 53
Abil Darkan Tatar Ural 1987 50

5. Файлдар.
Turbo Pascal тіліндегі файлдар.

Кез келген типтегі деректер тобын файлдар деп атауға болады.
Программаға қажетті,есептелген нәтижелер және программаның өзі де файл
болып табылады. Turbo Pascal тілінде бір типтегі қарапайым не күрделі
тізбектерді файл деп атайтын болғандықтан, файл массивке ұқсас болады. Ал
енді файлдың массивтен айырмашылығы:
1. Мұнда жазылатын ақпараттар саны көрсетілмейді.
2. Әр элементінің өзінің индексі бойынша анықталмайды, сондықтан қажетті
элемент оның алдындағы элементтерді алып болғаннан кейін ғана алынады.
Turbo Pascal тілінде жазылған әрбір файлдың өз аты болады.
Программаның TYPE бөлімінде файл типінің баяндалуы келесідей:
TYPE NTYPE=FILE OF TC;
Мұнда, NTYPE – файл типінің идентификаторы. TC – файл компаненттерінің
типі. Файлдық типті айнымалының келесі 3 әдістің біреуі арқылы анықтауға
болады:
1. NTYPE=FILE OF TC; (типтелген файл)
2. NTYPE=TEXT; (текстік файл)
3. NTYPE=FILE; (типтелмеген файл)
Файлдармен жұмыс жасау үшін келесі жалпы стандартты функцияларды
қолдану қажет:
ASSIGN(f, NAME) – f-файлдық айнымалыны NAME сыртқы файлымен
байланыстыру. Мұнда NAME файлының атын анықтайтын тексттік өрнек. Егер ол
жер бос тұрса, онда енгізу не ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Ішкі бағдарламалар
Төменгі деңгейлі бағдарламалау тілдері
Паскаль программалау тіліне жалпы түсінік
Программалау тілдері
Программалау жүйесі
ПРОГРАММАЛАУ ТІЛДЕРІ ТУРАЛЫ ТҮСІНІКТЕР
Бағдарламалау тілдерінің өркениеті
Цикльдік бағдарламаны ұйымдастыру
Алгоритмдер теориясы және берілгендер құрылымы
Алгоритмдерді құрылымын негізге ала отырып құрастыру
Пәндер