Қазақстан Республикасының Білім және Ғылым министрлігі Оңтүстік Қазақстан облысы



жүктеу 277.08 Kb.
Дата22.04.2019
өлшемі277.08 Kb.


Қазақстан Республикасының

Білім және Ғылым министрлігі
Оңтүстік Қазақстан облысы

Бәйдібек ауданы

Шаян көп салалы лицей - жалпы орта мектебі.


Тақырыбы: « Паскаль тілімен олимпиадалық

есептер шығару »


Бағыты: «Экономикалық және әлеуметтік

процестерді математикалық модельдеу »


Секция: Информатика

Оқушы Мақсатқызы Айда

Мұғалімі: Султанбекова Бибигуль

Шаян 2017 - 2018 оқу жылы


Фамилиясы: -------------------------------------

Аты: ------------------------------------


Туған жылы -----------------------------------
Оқу орны Шаян көп салалы лицей-

жалпы орта мектебі
Сыныбы: 11 « » сынып

Таңдаған пәні: Информатика
«Паскаль тілімен Тақырыбы: олимпиадалық есептер шығару »

Шаян көп салалы лицей - жалпы орта мектебінің
---------------------------------------------------------------------

«Паскаль тілімен олимпиадалық есептер шығару »

атты ғылыми жобаға
ОЙ ПІКІРІМ
Паскальда бағдарламалау тілінің негіздері, паскаль тілі алфавиті мен бастапқы
мәліметтері, программа құру, мәліметтерді енгізу операторы. Паскаль тілінде,
экранға олимпиадалық есептер шығарып көрсетілген. Тақырыпта көрсетілген
ғылыми ізденіс жұмысы жан-жақты қамтылған.
Паскаль тілімен олимпиадалық есептер шығару ғылыми негіздерге сүйеніп
құрастырылған.
Паскаль программасының құрылымын, оның орындалу ретін және
программада қолданылатын түйінді сөздердің дұрыс жазылуын , мәліметтердің
жүйелі түрде іріктелініп жазған. Олимпиадалық есептері дәстүрлі әдістермен
пайдаланған оңтайлы және тиімді. Бірақ әлі де болса, тақырыптың мазмұнын
тереңдей ашуды ғылыми негізде зерттеу керек.
Информатика пәні мұғалімі: Султанбекова Бибигуль

ОҚО, Бәйдібек ауданы, Шаян көп салалы

лицей - жалпы орта мектебінің 11 « » сынып

оқушысы Мақсатқызы Айда

« Паскаль тілімен олимпиадалық есептер

шығару» атты ғылыми жобасына

П І К І Р
Мектепте олимпиадалық есептерді шығару әдістерімен айналысу әрқашанда өзекті мәлеселелердің бірі. Ғылыми жобада олимпиадалық есептерді шығару құралы ретінде Паскаль тілі таңдап алынған. Бұл дұрыс таңдау.

Себебі Бейсик тіліне қарағанда Паскаль тілінің мүмкіндігі мол , құрылымданған, компиляторы мықты тіл. Ғылыми жобада Паскаль тілінде программалауды меңгерту арналған тақырыптар зерттеліп, мысалдармен келтірілген. Олимпиадалық есептердің шығарылуы, яғни программа мәтіні келтірілген. Жалпы автор олимпиадалық есептерді шығару әдістерін меңгеріп, жүйелеуге талпынған. Мұндай жұмыстарға тек қолдау көрсетуге болады.


Халықаралық гуматарлық

-техникалық университетінің

« информатика және математика»

кафедрасының доценті, ф.-м.ғ.к.

Аннотация.
1. Ғылыми жобаның мақсаты: информатикадан олимпиадалық есептерді шығару әдістерін меңгерту.

2. Ғылыми жұмыстың мәні: олимпиадалық есептерді шығару әдістерін ұсыну.

3. Ғылыми жұмыстың жаңалығы: олимпиада есептерін шығару әдістерін жүйелеп, электронды оқулық түрінде ұсыну.

Аннотация.

1. Цель научного проекта: внедрение методов вычисления задач по информатике для олимпиад.

2. Значение научной работы: предложить методы вычисления задач для олимпиад.

3. Новизна научной работы: систематизация методов задач для олимпиад и предложить в виде электронных пособий.

Annotation
1. The purpose of the scientific project: introduction the methods of calculation tasks on information science for Olympiads.


2. The meaning of scientific work: to offer methods of calculation tasks for Olympiads.


3. Novelty of scientific work: ordering methods of tasks for Olympiads and to offer as the electronic manuals.

Жоспар

1. Кіріспе
2. Негізгі бөлім

1.1 Паскальда бағдарламалау тілінің негіздері. Тілдің ерекшеліктері. Интегралдық ортаға кір.

2.2 Программаны сақтау, орындау және компиляциялау. Паскаль тілі алфавиті мен бастапқы мәліметтер.

3.3 Идентификаторлар. Тілдің қарапайым құрылымы. Мәлімет типтері.

4.4 Айнымалылар, тұрақтылар және оларды сипаттау. Программа құрылымы.

5. Олимпиадалық есептерге талдау.



3. Қорытынды

4. Қолданылған әдебиеттер тізімі.

1. К І Р І С П Е

XXI ғасыр –жаңа ақпараттық технология ғасыры.
Қазір кезде компьютер адам өмірінің барлық саласына толық енгізілді.
Сондықтанда ұстаздардың алдында тұрған ең негізгі ортақ міндеті өмірге икемделгіш , заман ағымына ілесе алатын жаңа тұлғаны тәрбиелеу. Соның бір жолы-компьютер тілін үйрету болып табылады.
Ел өмірінің барлық салаларында компьютерлендірудің процесі аяқталып, алдымызда келешек жас ұрпаққа компьютердің қыр-сырын терең меңгертіп, әлемдік білім кеңестігіне ену мақсатымыз.
Еліміздің болашағы ұрпақ тәрбиесіне, ғылым мен білімнің өркендеуіне тікелей

байланысты.



  • Оқушыларды шығармашылық жұмыспен дамыту және ақыл-ойын, ойлау қабілетін, ынтасын дамыту.




  • Оқушыларды практикалық жұмыс, еңбекке, басқа пәндерді оқыту процесінде практикалық есептер шешуге және оны ақпараттық қоғамдық өмірге дайындау.

Программалау тілдерін оқыту арқылы оқушыларды олимпиадаға, жоғарғы оқу орындарына осы мамандық негізінде түсуге дайындау.


Олимпиада есептерін шығара білу қабілетін дамыту, оқушылардың бойына ғылыми және көпшілік әдебиеттермен жұмыс істей білу қабілетін дамыту, білімін кеңейту.
Шығармашылық жеке тұлғасын қалыптастыруға, логикалық-құрылымдық ойлау қабілетін дамытуға және компьютерлік технологияның мүмкіндіктерін өздерінің кәсіби дайындық деңгейлеріне еркін пайдалана білуге бағытталған.
Сондықтан кез-келген оқушы қарапайым бағдарлама құра білу керек.

1975жылы стандартты Паскальдың компиляторымен Турбо Паскаль (3.0 версия) программалау тілі пайда болды.

Содан бері Паскаль жалпыбілімдік,кәсіптік-техникалық мектептерде және жоғарғы білім беру орындарында « бірінші» программалау тілі ретінде қолданыла бастады.
Турбо Паскаль 4.0,ТП 5.0, ТП 6.0 және ТП 7.0 версияларының дүниеге келуі кәсіпкер қолданушының еңбектегі өнімділігін арттыруға мүмкіндік беруге, қолданбалы есептерді шығаруда қолдануға үлкен үлес қосты.

2 .Негізгі бөлім
1.1 Паскальда бағдарламалау тілінің негіздері.
Паскаль тілін 1968 жылы швейцар ғылымы Н. Вирт ашты және оған белгілі

математик, физик және философ Блез Паскальдің (1623-1662) атын берді ,

Блез Паскаль он тоғыз жасында дүние жүзінде бірінші рет қосу машинасы деген атпен белгілі, жетектер мен дөңгелектерден тұратын механикалық есептеу машинасын құрастырды

(1- сурет) Паскальдың машинасында көпорынды сандарды қосу мүмкін болды. Ол тарихта алғашқы рет есептеуіш механикалық машинаны ашуымен әйгілі (1642ж).





Блез Паскаль Паскаль машинасы

Қазіргі кезде Паскаль тілі өте кең тараған бағдарламалау тілі болып саналады.

Паскальдің ерекшелігі –алгоритмділіктің жоғары деңгейі алгоритмді қатаң, бір-бірінен «айнытпай» жазу құрылымдылығы (Паскальдағы бағдарлама дайын құрылымдардан –тармақтардан, циклдардан, құрастырылған операторлардан, процедурадан және тағы басқалардан жинала алады).
Тілдің ерекшеліктері. Интегралдық ортаға кір.


мүмкіндіктері қарастырылған.

  • Күрделі құрылымдық деректерді өңдеу мүмкіндіктері бар. Турбо Паскальдың

интегралдық ортасы пайдаланушының сұраныстарын операциялық жүйесіз –ақ

қамтамасыз етеді.



Интегралдық ортаға кір. Dos –тың командалық қатарында C:\TP\TURBO EXAMPLE.PAS (TP Турбо Паскаль директориясының аты), деп Enter пернесін басу керек. Біраз уақыттан кейін экранның жоғарғы бөлігінде Examplel.Pas жазуы бар редактор терезесі пайда болады. Егер бағдарлама аты көрсетілмесе бос терезе жиегінде Noname 00.pas стандартты атауы тұрады.

2.2 Программаны сақтау, орындау және компиляциялау.
Программаны сақтау. Терілген программа белсенді терезеден F2 пернесін басу арқылы

файлға сақталады. Егер файлға ат бермесе TP файл атын енгізуді сұрайды. F2 пернесін әрдайым басып отырған жөн.



Программаны орындау. Программаны орындау командасы CTRL+F9 пернелер комбинациясымен іске асады. Нәтиже FLt+F5 пернелері арқылы көрінеді.
Программаны компиляциялау. F9 пернесі арқылы компилятор бағдарламаны тексереді.

Егер қате табылса, терезе шекарасында хабарлама шығады. Мысалы Error 85: ";" expected бұл

қате программаның бір жерінде сіз ";" қоюды ұмытып кеткеніңізді білдіреді.
Бос экран ашу.Alt +F пернелерін басып, New қатарын таңдалынған жағдайда бос экран Noname00 атымен т.б Мұндағы «00» -цифрлар.



Паскаль тілінің бастапқы мәліметтері
Тілдің алфавиті басқа тілдермен салыстырғанда құрылымы жағынан түсінікті, себебі оның

әрбір амалы сипатталып отырады.

Тілдің алфавитінің құрамына әріптер, цифрлар және арнайы белгілер кіреді.


  • Әріптер ретінде латын алфавитінің 26 әрпі ғана қолданылады.Паскаль тілі алфавиттегі

(қазақ , орыс т.с.с) тек апострофқа жоғарғы үтірге) алынған сөз тіркестері немесе жүйелі

жақшаға алынған түсініктеме ретінде ғана кездеседі.



  • Цифрлар: 0,1,2,.....9.

  • Арнайы белгілерге төмендегі белгілер жатады.

а) Арифметикалық амалдардың белгілері.

ә) Қатынас белгілері

б) Айыру белгілері:

- ( бос орын ) , . ; , : , (,) , [,],{,}, ,,
3.3 Идентификаторлар.

Идентификаторлар атау тұрақтыларды айнымалыларды, олардың түрлерін, функцияларды,

программаларды т.б обьектілерді белгілеу үшін қолданылады. Идентификатор-міндетті

түрде әріптен басталатын сандар мен әріптердің тізбегі.Ұзындығы 8 символдан тұрады.

Мысалы: IX , XI , CERTN456, P39PC156 Идентификатор стандартты және бейстандартты болып бөлінеді. Стандартты атаулар тілдің обьектілерін бегілеу TRUE, FALSE,

BOOLEAN, REAL, ABS, SIN т.б Паскаль тілінде программа жазуда қолданылатын түйінді

сөздер де стандартты идентификаторға жатады, мысалы: PROGRAM, FRRAY, BEGIN, VAR,

CONST т.с.с.


Тілдің қарапайым құрылымы.

Тілдің қарапайым құрылымына сан, идентификатор, тұрақты, айнымалылар, функция және

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

идентификаторлар қолданылады.



Мәлімет типтері.

Программадағы мәліметтердің мәндері Паскаль тіліндегі келісімді мәліметтердің бір түріне

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

стандартты типтер болып екіге бөлінеді.


Мәлімет типтері.



Бүтін

тип

Нақты



Логикалық



Таңба

-лық

Массив



Жазу


Жиын



Файл



Integer

Real

Boolean

Char

Array

Record

Set

File


Стандартты типтері.


Бүтін

типтер

Нақты

типтер

Логикалық

типтер


Таңба

-лық

Жолдық


ASCII

Қатарлық

тип

Текстік

файл

Нұсқағыш

тип

Shorint

Real

Boolean

Char

String

Pchar

Text

Pointer

Integer

Single



















Longint






















Byte






















Word





















Сандар мен айнымалылар бүтін және нақты болып екіге бөлінеді. Бүтін сандар -32768 бен 32767 аралығында ғана бола алады. Нақты сандар кәдімгі табиғи аралас сандар тәрізді санның бүтіні мен бөлшегі нүкте арқылы ажыратылып жазылады. Мысалы:



Бүтін типтер:

  • -128 - ден 127 дейінгі аралықта бүтін сандар – Shorint

  • -32768 - ден 32767-ге дейінгі аралықта бүтін сандар- Integer

  • -214783648 - ден 2147483647 –ге дейінгі аралықта бүтін сандар- Longint

Ал өте үлкен немесе кіші нақты сандар көрсеткіші экспоненциал сандар түрінде жазылады: Мысалы: 2.66Е-07, 4,9Е+04, 73Е-02,-5ЕЕ+08 мұндағы Е әрпі « 10-ның дәрежесі » деген мағынаны білдіреді.Санның бүтін бөлігі нөлге тең болса, ол жазылмайды, ал санның таңбасы

оң болса онда «+» белгісі қойылмайды. Нақты сандар -1Е-38-ден. 1Е38-ге дейінгі аралықта бола алады. Мәндері бұл аралықта шығатын сандар үшін арнайы тәсілдер қолданылады.

Логикалық немесе бульдік тип « BOOLEAN» сөзі арқылы өрнектеледі. Бұл типтегі шама екі

мәннің біреуін ғана қабылдай алады: TRUE (ақиқат) немесе FALSE (жалған).

Символдық немесе литрлік типтегі берілгендер “ CHAR” сөзімен жазылады. CHAR типтегі шамаларды арифметикалық өрнектерге қолдануға болмайды.


  • -0-ден 255 –ке дейінгі аралықтағы бүтін сандар-Byte

  • -0-ден65535-ке дейінгі аралықтағы бүтін сандар-Word


4.4 Айнымалылар, тұрақтылар және оларды сипаттау.
Паскаль тілінде программа –сипаттау және операторлар бөлімінен тұрады. Программа барысында мәні өзгермейтін деректер тұрақтылар деп аталады. Тұрақтылар бөлімінде сипатталады және CONST түйінді сөзімен сипатталады. Мысалы:PI=3.14 мәні өзгермейді.

Айнымалылар деп программаның орындалу барысында әр түрлі мәндерді қабылдай алатын

шамаларды айтады. Айнымалыларды сипаттау VAR түйінді сөзінен басталады, одан кейін типі көрсетілген айнымалылардың атауы көрсетіледі. Мысалы:

Var

x,y,z: integer;



a,b,c: real;

d,r: char;

meli,bol: boolean;

Программа құрылымы.
Программа тексті Program < программа аты>; деп басталады.

Турбо Паскальдың 7- версиясында программа тақырыбын жазбай-ақ қойса да болады.

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

PROGRAM атауы; мәліметтердің аты;

сипаттау бөлімі



BEGIN

1-оператор;

2-оператор;

n- оператор;



END

PROGRAM-программа , BEGIN- программаның басы, END- программаның соңы деген мағынаны білдіреді. (;) белгісі операторларды бір-бірінен ажырату үшін жазылады, бірақ

Ол соңғы оператордан кейін қойылмайды. Программаның соңы END сөзінен кейін ғана (.) қойылады, ол программаның аяқталғаның білдіреді.



5. Олимпиадалық есептерге талдау
1-есеп.

« Сөздің жиілігі »

Енгізу файлының аты: AB.in

Шығару файлының аты: AB.out

Уақыт шектеу: 2 секунд

Жадыға шектеу: 64 мегабайт

Сөзді енгіз. Сөздегі кездескен бірдей әріптердің біреуін ғана қалдыр.Жиілігін анықта.

Енгізу файлының форматы

Кіріс файлында сөз енгіз.

Шығару файлының форматы

Шығыс файлында cөз жиілігін анықта.


АВ.in


АВ.out



AlGORITM

ALCATEL


AlGORITM

ALCTE


program e;

USES CRT;

{Bas arippen engiz}

var s:string; alf:string[26];

ch:array[1..26] of integer;n,i,j:integer;

begin

CLRSCR;


Assign (input,’AB.in’);

Reset (input);

Assign (output,’AB.out’);

Rewrite (output);

alf:='ABCDEFGHIJKLMNOPQRSTUVWXYZ';

for i:=1 to 26 do ch[i]:=0;

{write('textti bas arippen engiz');}

readln(input,s);

for i:=1 to length(s) do

for j:=1 to 26 do

if s[i]=alf[j] then ch[j]:=ch[j]+1;

for i:=1 to 26 do

if (ch[i]>1) then

begin


n:=pos(alf[i],s);

delete(s,n,CH[I]-1);

end;

writeln(output,s);



close(output);READKEY;

end.
2. Берілген сөйлемнен дауысты A,E,I,O әріптерінің ең көп кездесетін сөзді тап.


program fff;

{dauysty aripter en kop kezdesetin soz}

uses crt;

label 1,2;

var a:array [1..25] of string; s:string;

b:array [1..22] of integer; s1:string[10];

i,j,ind,max,n,k:integer; f,f1:text;

begin clrscr;


assign (f,'in.txt');

reset (f);

assign (f1,'out.txt');

rewrite (f1);

read (f,s);

i:=0;


1: n:=pos (' ',s);

if n=0 then goto 2;

i:=i+1;

s1:=copy(s,1,n-1);



k:=0;

for j:=1 to length(s1) do

if s1[j] in ['a','e','i','o'] then k:=k+1;

a[i]:=s1; b[i]:=k;

delete(s,1,n);

goto 1;


2: i:=i+1;

k:=0;


for j:=1 to length(s) do

if s[j] in ['a','e','i','o'] then k:=k+1;

a[i]:=s; b[i]:=k;

max:=b[1]; ind:=1;

for j:=1 to i do

if b[j]>max then begin max:=b[j]; ind:=j; end;

writeln(f1,'dausti dibistar en kobi= ',a[ind]);

close (f1);

readkey;

end.


Программаның орындалу нәтижесі:

In.txt

Out.txt

Olimpiodada esep shigaru

Olimpiodada


3. Берілген сөйлемнен ең қысқа және ең ұзын сөзді тап.

uses crt;

label 1,2;

var a:array [1..25] of string; s:string;

b:array [1..22] of integer;

n,ind,j,i,min,k,l,max,ind1:integer;

begin

clrscr;


readln (s);

i:=0;


1:n:=pos (' ',s);

if n=0 then goto 2;

i:=i+1;

a[i]:=copy (s,1,n-1);



b[i]:=length(a[i]);

delete (s,1,n); goto 1;

2:i:=i+1;

a[i]:=s;


b[i]:=length(s);

ind:=1;


min:=b[1];

for j:=1 to i do

if b[j]

ind:=j; end;

writeln ('en kiska soz=',a[ind]);

max:=b[1];

ind1:=1;

for j:=1 to i do

if b[j]>max then begin

max:=b[j]; ind1:=j; end;

writeln ('en uzak soz=',a[ind1]);

readkey;


end.

Программаның орындалу нәтижесі:



Енгізу

Шығару

Olimpiodada esep shigaru

Esep

Olimpiodada




4. Текстті енгіз. Текстте мынадай тапсырмаларды орындаңыз.

«а» әріпінен басталатын сөздерді тап

Бірдей қатар кездесетін екі әріп болса, санын санаңыз

Сөздің ішінде «-» белгісі кездессе алып тастап,сол сөздің ұзындығын табу программасын жазыңыз.
program g;

uses crt;

label 1,2,3,4;

var a:string[25];

s:string;

i,n,k:integer;

begin clrscr;

read (s);

k:=0;

for i:=1 to length(s) do



if s[i]=s[i+1] then k:=k+1;

writeln ('birdei katar eki arip sany =',k ,' kezd');

1:n:=pos (' ',s);

if n=0 then goto 2;

a:=copy (s,1,n-1);

if a[1]='a' then writeln (a);

delete (s,1,n); goto 1;

2: if s[1]='a' then writeln (s);

3: n:=pos('-',s);

if n=0 then goto 4;

delete(s,n,1);

k:=length(s)+0; goto 3;

4: writeln(s,' ',k);

readkey; end.




Программаның орындалу нәтижесі:



Енгізу

Шығару

Janar tatti-tatti apelsin gedi

Birdei katar eki arip sany =2

Apelsin


Tattitatti 10

5. 36-дан 5 цифр табу лотореясының программасын құру.

1-нұсқа


PROGRAM BINGO;

USES CRT; LABEL 1,2,;

VAR K,I:INTEGER; X:ARRAY [1..5] OF INTEGER;

BEGIN CLRSCR;

WRITELN ('ойынды бастау үшін ENTER бас');

READLN;


RANDOMIZE;

FOR K:=1 TO 5DO

BEGIN WRITE (K,'шардың номері-');

1:X[K]:=RANDOM (36)+1;

(*1-36 арасындағы кездейсоқ сан шығару*)

DELAY (65000); (*үзіліс жасау*)

IF K= 1 THEN GOTO 2 ELSE

FJR I:=1 TO K-1 DO

(* бұрын кездескен шарларды алып тастау*)

IF X[K] =X[I] THEN GOTO 1;

2: WRITELN (X[K]);

END;


REPEAT UNTIL KEYPRESSED;

(*Программадан шығу үшін кез-келген пернені бас*)

END.

2-нұсқа


program lot;

uses graph,crt;

var Code,

x,i,k,k1,p,gd,gm:integer;

a:arrau[1..5] of string;

c:char;


s:string;

j:byte;


begin

gd:=detect;

initgraph(gd,gm,'bgi');

setfillstule(1,1);

bar(0,0,getmaxx,getmaxy);

settextstyle(0,0,2);

settextjustify(1,1);

setcolor(8);

outtextxy(320,20,'Almati onimi');

outtextxy(320,40,'Barligi zanmen korgalgan');

outtextxy(320,200,'36-dan 5-in');

outtextxy(320,220,'Electrondi ouin');

outtextxy(320,240,'Siz dainsizba?');

outtextxy(320,260,'36-dan 5-in tandap aliniz');

setfillstyle(1,15);

for i:=1 to 5 do

begin

readln (a[i]);



fillellipse(25+75*i,120,25,25);

outtextxy(25+75*i,420,a[i]');

end;

setcolor(1);



setfillstyle(1,7);

bar(800,0,0,350);

setfillstyle(3,4);

bar(2,0,250,175);

outtextxy(130,80,'Lototron');

outtextxy(130,100,'AUI fir-da jasalgan');

outtextxy(300,200,'Sattilik tileimin');

outtextxy(300,240,'Jigitter men kizdar');

setfillstyle(1,blue);

c:=readkey;

if c=#27 then halt;

k:=0;


repeat

randomize;

p:=random(36)+1;

for i:=1 to 5 do

begin

val (a[i],x,code);



if x<>p then

outtextxy(420,50,'O okiniwti');

else

bar(600,60,260,20); setcolor(blue);



if x=p then

outtextxy(420,100,'Siz yttiniz');

end;

if p<>500 then



begin

setcolor(13);

str(p,s);

for i:=200 to 320 do

begin

sound(1000);



fillellipse(40,i,20,25);

outtextxy(40,i,s);

end;

for i:=40 to 500-70*k do



begin

fillellipse(i,320,25,25);

outtextxy(i,320,s);

nosound;

end;

k:=k+1;


end;

until k=5;

readln;

end.


6. Жылдық жаз айларының, қыс айларының, көктем жєне күз

айларының орта температурасын шығару.
PROGRAM SRTEMP;

VAR K:INTEGER;

X:ARRAY [1..12] OF INTEGER;

S,S1,S2,S3:INTEGER;

BEGIN

FOR K:=1 TO 12 DO READ (X[K]);



S:=0;

FOR K:=1 TO 12 DO S:=S+(X[K]);

S1:=0

FOR K:=6 TO 12 DO S1:=S1+(X[K]);



S2:=0

FOR K:=1 TO 12 DO IF (K<3) OR (K>11) THEN S2:=S2+(X[K]);

S3:=0

FOR K:=3 TO 11 DO IF (K<6) OR (K>8) THEN S3:=S3+(X[K]);


WRITELN('жылдық орта температура=',S/12:7:2);

WRITELN('жаздық арта темпереатура =',S1/3:7:3);

WRITELN('қыстық орта температура=',S2/3:7:3);

WRITELN('күздік - кµктемдік орта температура=',S3/6:7:3);

END.
7. Кезектегі 100 адамның ішінде ең бірінші тұрған әйел

кісінің жалпы кезектегі орнын анықтау.
PROGRAM WOMEN;

CONST N =100;

VAR A:ARRAY [1..N] OF STRING;

K:ITEGER;

BEGIN

F:=0;


FOR K:=1 TO N DO

READLN (A[K]='WOMEN') AND (F:=0) THEN

BEGIN F:=1;

WRITELN('1-ші єйел жалпы кезекте',K,'болып т±р');

END;END.
8. Арулар кокурсының бірінші турына қатысқан 17 қыздың екінші

турға шыққандарының саны мен аттарын шығару.

(жарыс шарты бойынша 2 турға 1 турдан 65-тен жоғары балл алған,

бойы 165 пен 175-тің арасында және салмағы 60-тан аспайтын қыздар шығады.)

PROGRAM KON;

VAR A,B,C:ARRAY[1..N] OF REAL;

(*A-1 турда алған балл, В-бойы, С-салмағы*)

S,P:ARRAY [1..N] OF STRING;

(*S-қыздардың аты, Р-2 турға µткендер*)

K,I,M:INTEGER;

BEGIN


FOR K:=1 TO N DO

BEGIN


READLN (S[K]); READLN (A[K],B[K],C,[K]);

END;


M:=0;

FOR K:=1 TO N DO

IF (A[K]>70) AND (B[K]>165)

AND (B[K] <175) AND (C[K]<60) THEN

BEGIN M:=M+1; I:=M; P[I]:=S[K] END;

WRITELN ('2- турға шыққандар саны -',M,'олар:');

FOR I:=1 TO M DO WRITELN (P[I]);

END.
9. Матрицаның оң элементтерінің санын табу.

PROGRAM MATR;

CONST N=3; M=4;

VAR A:ARRAY [1..N,1..M] OF INTEGER;

K,I,S:INTEGER;

BEGIN

FOR K:=1 TO N DO



FOR I:= 1 TO M DO

READ (A[K,I]);

S:=0;

FOR K:=1 TO N DO



FOR I:=1 TO M DO

IF A [K,I]>0 THEN S:=S+1;

WRITELN ('POL=',S); END.
10.Матрицаның екінші қатарындағы теріс элементтердің қосындысын табу.

PROGRAM MATR;

CONST N=10; M=7;

VAR A:ARRAY [1..N,1..M] OF REAL;

K,I:INTEGER; S: REAL;

BEGIN


FOR K:=1 TO N DO

FOR I:=1 TO M DO readln(a[i,j]);

S:=0;

FOR I:= 1 TO M DO



IF A[2,I]<0 THEN S:=S+A [2,I];

WRITELN('теріс элементтер саны=',S); END.


11. Матрицаның соңғы екі бағанындағы тақ элементтердің қосындысын табу.

PROGRAM MART;

VAR A: ARRAY [1..10,1..7] OF INTEGER;

K,I,S:INTEGER;

BEGIN

FOR K:=1 TO 10 DO



FOR I:=1 TO 7 DO

READ (A[K,I]);

S:=0;

FOR K:=1 TO 10 DO



FOR K:=4 TO 5 DO

IF ODD (A[K,I]) THEN S:=S+A[K,I];

WRITELN (' тақ элементтер саны=',S);

END.
12. Матрицаның ең кіші элементі мен оның реттік номерін шығару.

PROGRAM MART;

CONST N=3, M=4;

VAR A:ARRAY [1..N, 1..M] OF INTEGER;

K,I,KMIN,IMIN:ITEGER;

BEGIN

FOR K:= 1 TO N D



FOR I:= 1 TO M DO

READ (A[K,I]); MIN:=A[1,1]; KMIN:=1; IMIN:=1;

FOR K:= 1 TO N DO

FORI:=2 TO M DO

IF MIN>A [K,I] THEN BEGIN

KMIN:=K; IMIN:=I; MIN:=A[K,I]; END;

WRITELN ('MIN=',MIN,'қатары-',KMIN,'бағаны-', IMIN);

END.
13. Матрицаның ең кіші элементтерін, олардың санымен реттік номерін шығару.

PROGRAM MATR;

CONST N=3; M=4;

VAR A:ARRAY [1..N,1..M] OF INTEGER;

B:ARRAY [1..N,1..M] OF ITEGER;

K,I,P,MIN,KMIN,IMIN:INTEGER;

BEGIN


FOR K:=1 TO N DO

FOR I:=1 TO M DO READ (A[K,I]);

MIN:=A [1,1]; P:=0;

KMIN::=1; IMIN:=1;

FOR K:= 1 TO N DO

FOR I:=1 TO M DO

IF MIN>A[K,I] THEN BEGIN

P:=1; KMIN:=K; IMIN:=I;

MIN:=A [K,I]; END

ELSE IF MIN=A[K,I] THEN BEGIN

P:=P+1; B[P,1]:=K; B[P,2]:=I; END;

IF P=1 THEN WRITELN ('матрица 1 MIN бар-',MIN,' оны қатары-', KMIN, 'бағаны-', IMIN) ELSE BEGIN

WRITELN(min эл. саны-',Р,' оның мєні MIN=',MIN);

FOR K:= 1 TO P DO

WRITELN('тұрған қатары-',В [K,1],' бағаны-', B[K,2]);

END; END.


14. Матрицаның элементтерін алфавит бойынша реттеу.

PROGRAM MART;

CONST N=3; M=4;

VAR A:ARRAY [1..N,1..M] OF CHAR;

K,I,J:INTEGER; MIN: CHAR;

BEGIN FOR K:=1 TO N DO

FORI:=1 TO M DO READ (A[K,I]);

FOR K:=1 TO N DO BEGIN

FOR J:=1 TO M-1 DO FOR I:= J TO M DO

IF A[K,J]> A[K,I] THEN

BEGIN MIN:= A [K,J]; A[K,J]:=A[K,I]; A[K,I]:=MIN; END; END;

FOR K:=1 TO N DO BEGIN

FOR I:=1 TO M DO WRITE (A[K,I]); WRITELN; END; END.
Қарапайым олимпиадалық есептер
1. 0 мен 1 сандарынан тұратын жиым (массив) берілген. Сол жиымдағы 1-ді 0-мен, ал 0-ді 1-мен алмастырып шығатын алгоритм құру керек.

Бағасы: 4 балл.


2. Кез келген бір CDE үшбұрышының төбелерінің координаттары және N нүктесінің координаттары берілген. Сол нүктенің үшбұрыш ішінде орналасатынын немесе орналаспайтынын анықтау қажет.

Бағасы: 6 балл.

3. Төмендегі берілген сызықтық теңдеулер жүйесін шешетін алгоритм жазып шығыңдар:

bc-y=3x


abx=cy

Бағасы: 6 балл.

4. Шеңбер бойына 12 санды түгелдей, яғни 1,2,3,...,12 сандарын кез келген қатар орналасқан үш a,b,c сандары үшін b2-ac 13-ке бөлінетіндей етіп орналастыруға бола ма?

Бағасы: 10 балл.


5. М бүтін саны берілген. 1-ден М-ге дейінгі барлық бүтін сандардың цифрларының қосындысын анықтау керек, мысалы, М=13 болса, онда программа 1+2+3+4+5+6+7+8+9+1+2+1+3=52 санын беруі керек. ?

Бағасы: 7 балл.

6. Ең кіші сан табу. Кез келген екі саннан олардың цифрларының берілген реттілігін сақтай отырып, мүмкіндігінше ең кіші сан жазып шығуға тырысу керек. Керекті сандарды программа input.dat файлынан алып, нәтижесін output.dat файлына жазып шығуы тиіс. Программаның орындалуының бір мысалын қарастырайық:

input.dat output.dat

45274 3345267485

33685 4444

33334444 3333

Бағасы: 10 балл.


Олимпиадалық есептер шығару

1. Сандар қосындысын есептеу: S = 1 + 3 + 5 +....+ 99
Шығару:

Program summa;

uses crt;

var i,s: integer;

begin

Clrscr;


s:=0;

i:=1;


repeat

s:=s+i;


i:=i+2

until i =99;

writeln('summa=', s:6);

end.


2. 1!+2!+.3!....n!-ді есепте.

Шығару:

Program;


Var p,s:real;i,n integer;

Begin writeln; write (‘n’);read(n);

s:=0; p:=1;

For i:=1 to n do

Begin

s:=s+p; p:=p*i;



end;

Writeln (‘сумма =’,s);

End.
3. Айдың күнін анықтау
Шығару:

program aicun;

uses crt;

label 10;

var cun, n,k: integer; t: char;

begin;


Clrscr;

10: writeln('ai birinhi cunini jaz:');

readln(k);

writeln( 'ai cunini jaz:');

readln (cun);

n:= cun mod 7+k-1; if n>7 then n:= n-7;

writeln ( cun: 3, ' cuni ');

case n of

1: write ('duysenbi');

2: write ('seysenbi');

3: write ('sarsenbi');

4: write ('beysenbi');

5: write ('guma');

6: write ('senbi');

7: write ('jeksenbi');

end;


writeln(' boladi');

writeln ( 'jane jazasisba? (ia-"y", joq-"n") ');

readln(t);

readkey;

if (t ='Y') or (t='y') then goto 10

end.


4. Сандар қосындысын есептеу:

Шығару:

program sum;

uses crt;

var i: integer;

s,x,p: real;

begin


Clrscr;

writeln(' x - ті еңгіз:');

readln(x);

s:=0;


for i:=1 to 30 do p:=1/(i*x); s:=s+p;

writeln('sum=', s:6);

readkey;

end.


5. 10 дық санау жүйесінен 2 лік санау жүйесіне өту
Шығару:

program juye;

uses crt;

var


j,i,s,n,k,k1:integer;

f,ff:text;

a:array [1..1000] of integer;

x: string;

begin

assign(f,'file.in');



assign(ff,'file.out');

reset(f);

rewrite(ff);

read(f,s);

i:=0;

k:=s;


repeat

i:=i+1;


k1:=k;

a[i]:=k mod 2;

k:=k div 2;

until k=0;

n:=i;

for i:=n downto 1 do



begin

str(a[i],x);

write(ff,x);

end;close(f);close(ff);end.


6. 10 дық санау жүйесінен 8 дік санау жүйесіне өту
Шығару:

program juye;

uses crt;

var


j,i,s,n,k,k1:integer;

f,ff:text;

a:array [1..1000] of integer;

x: string;

begin

assign(f,'file.in');



assign(ff,'file.out');

reset(f);rewrite(ff);read(f,s);

i:=0;k:=s;

repeat


i:=i+1;k1:=k;

a[i]:=k mod 8;

k:=k div 8;

until k=0;

n:=i;

for i:=n downto 1 do



begin str(a[i],x); write(ff,x); end;

close(f);close(ff); end.


7. 10 -дық санау жүйесінен 16- лық санау жүйесіне өту

Шығару:

program juye; uses crt;

var j,i,s,n,k,k1:integer;

f,ff:text;

a:array [1..1000] of integer;

x: string;

begin

assign(f,'file.in'); assign(ff,'file.out');



reset(f);rewrite(ff);read(f,s);

i:=0;k:=s;

repeat

i:=i+1;k1:=k;



a[i]:=k mod 16;

k:=k div 16;

until k=0;

n:=i;


for i:=n downto 1 do

if a[i]=10 then write(ff,’A’) else

if a[i]=11 then write(ff,’B’) else

if a[i]=12 then write(ff,’C’) else

if a[i]=13 then write(ff,’D’) else

if a[i]=14 then write(ff,’E’) else

if a[i]=15 then write(ff,’F’) else

begin


str(a[i],x);

write(ff,x);

end;

close(f);



close(ff);

end.
Қорытынды


Ғылыми жобаны орындау барысында негізгі мақсат олимпиада есептерін шығару әдістерін меңгеру болғандықтан, алдымен есептерді шешу құралы ретінде Паскаль тілі таңдалынды.
Себебі Паскаль тілі, 40 жылдай уақытта қолданыста болып, күні бүгінге дейін программалауды үйренуге ең ыңғайлы тіл алгоритмдік тіл екендігін мойындатып отыр.
Мектепте алгоритмдеу негіздерін үйренуге арналған қазақ (орыс) тілінде берілетін алгоритмдік тілдің негізі осы Паскаль тілінен алынған.
Ғылыми жобада Паскаль тілін меңгертуге арналған тақырыптар зерттелініп, мысалдар келтірілді.
Сонымен қатар, олимпиадалық есептер қарапайымнан күрделіге, оңайынан қиынына қарай срыпталынып, есептердің шығарылуы программа мәтіндері келтірілген.
Алдағы уақытта интернет олимпиадаға қатысуды мақсат етіп отырмын.

4. Қолданылған әдебиеттер тізімі


  1. Бөрібаев Б. Информатика және компьютер .-Алматы. Білім , 1995 .

  2. Мұхамбетжанова С.Т, Нұрғалиева Д., Төлемісова Г.

  3. 1-республикалық « Алтын диск» материалдарының жинағы –Алматы,2005.

  4. Д. Гуденко, Д. Петроченко. «Сборник задач по программированию». «Питер». Москва, Санк-Петербург, 2003 год.

  5. Н. Култин. «Turbo Pascal в примерах и задачах». «Питер». Санк-Петербург, 2007 год.

  6. Т. А. Павловская. «Паскаль. Программирование на языке высокого уровня. Практикум». «Питер». Москва, Санк-Петербург, 2006 год.

  7. Информатика негіздері № 2 2012жыл. № 3 2010жыл


Шаян көп салалы лицей-жалпы орта мектебі.

Мақсатқызы Айда 11 « » сынып оқушысы

Тақырыбы: « Паскаль тілімен олимпиадалық есептер шығару».



Қ/С

Күні

айы

жылы

11 « » сынып оқушысы Мақсатқызы Айда

Тақырыбы: « Паскаль тілімен олимпиадалық есептер шығару».

тақырыпта ғылыми жоба жұмысын жүргізу барысындағы

күнделігі.

1

10.10.2016

Мен және жетекшім информатика пәнінің мұғалімі Султанбекова Бибигульге осы тақырыпқа ғылыми –жоба жұмысымен айналысқым келетіндігін айттым. Бибигуль апай маған қажетті әдебиеттерді пайдалануға берді. Содан бастап іздене бастадым.

2

17.10.2016

Бибигуль апаймен аудандық кітапханаға барып Паскаль тілі, кітап алдым. «Паскаль бағдарламау тілінің негіздері».

« Тілдің ерекшеліктері».«Интегралдық ортаға кір деген», тақырыптарын жазып алдым.

3

24.10.2016

Мен аудандық кітапханаға барып Паскаль тілін үйренейік деген кітаптан « Программаны сақтау, орындау және компиляциялау, тақырыптарын жазып алдым.

4

31.10.2016

Мен мектеп кітапханасынан С.Т.Мұхамбетжанова « Паскаль тілі алфавиті мен бастапқы мәліметтер». Деңгей есептерін шығарып жаздым.

5

07.11.2016

Мен Бибігүл апаймен интернеттен « Индентификаторлар».

«Тілдің қарапайым құрылымы». Берілген есептерін шығаруын үйрендім.

6

14.11.2016

Мен аудандық кітапханадан « Мәлімет типтері» деген тақырыпты жазып алдым.

7

21.11.2016

Бибігүл апай маған Д. Нұрғалиев кітабын ұсынды одан мен «Айнымалылар», «Тұрақтылар және оларды сиппатау»,

«Программа құрылымы» тулалы білдім.

8

28.11.2016

Мектеп кітапханасында мен Паскаль тілі үйренейік деген кітаптан, мына тақырыпты жаздым «Стандартты функциялар. Өрнектер. Мәліметтерді шығару операторлары.

9

05.12.2016

Мен Бибигуль апаймен Паскаль тілінің есептерін шығардым.

10

12.12.2016

Паскаль тілінің программасын компьютерде құрдық.

11

16.12.2016

Мен аудандық кітапханасына барып. «Меншіктеу операторы». «Мәліметтерді енгізу операторы» туралы жазып.

12

26.12.2016

Бибигуль апаймен Интернеттен « Шартты оператор», Шарсыз көшу операторын», жазып есептерін шығарып алдым.

13

02.01.2017

Бибигуль апай маған аудандық кітапханадан Д. Гуденко,

Д. Петроченко кітабын ұсынды одан мен «Есептер жиыны программалау» тақырыбына олимпиадалық программаларды жаздық.

14

09.01.2017

Мен аудандық кітапханадан Паскаль программалау деген мына

тақырыпты жаздым «Таңдау операторы», « Циклдік қайталау операторы».

15

16.01.2017

Бибигуль апаймен паскаль тілінде сурет салу, әр-түрлі геометриялық фигураларды программаны компьютерде құрдым.

16

23.01.2017

Мен олимпиадалық жеңіл есептерді күрделіге айналдырып

программаны компьютерге енгіздім нәтижесін шығардым.

17

30.01.2017

Информатика негіздері 2008 № 4 Массив элементтерін іздеу және

реттеу тақырыбын жаздым.

18

06.02.2017

Мен аудандық кітапханасынан программалау тілі кітаптан

«Таңдау». «Көп өлшемді массив» тақырыбын жазып алдым.

19

13.02.2017

Паскаль жиын есептерінен программа құрдым.

20

20.02.2017

Мектеп кітапханасынан мына. «Символдық шама», «Жолдар».туралы жаздым.

21

27.02.2017

Интернеттен олимпиадалық есептерді шығарып №1, №2, №3, №4 Компьютерге енгізіп нәтижесін көрдім.

22

06.03.2017

Мен аудан кітапханасынан Б.Бөрібаев информатика және компьютер. Есептер жиыны алып есептер шығардым.

23

13.03.2017

Мектеп кітапханасынан Н. Куптин есептерін жазып алдым.

Оны шығарып компьютерге программа құрып енгіздім.

24

03.04.2017

Күрделі есептерді шығарып, компьютерге программа құрып

Бибигуль апайға көрсетіп жаздым.

25

24.04.2017

Олимпиадалық есептерді интернеттен шығару тәсілін жазып алдым.

26

15.05.2017

Олимпиадалық есептерді компьютерде орындадым жақсы нәтижесін программа құрған кезде алып отырдым.

27

04.09.2017

Паскаль есептерін технологиямен байланыстырып есептер алдым.

28

11.09.2017

Күрделі есептерді шығарып, компьютерге программа құрып

Бибигуль апайға көрсетіп жаздым. Мен олимпиадалық есептерді компьютерде орындадым.

29

18.09.2017

Күрделі есептерді шығарып, компьютерге программа құрып

Бибигуль апайға көрсетіп жаздым.

30

02.10.2017

Мен ғылыми –жоба жазудағы барлық әдебиеттермен танысып, қажетті материалдардың бәрін таптым. Бүгіннен бастап жазуға отырдым жетекшіме рахмет, маған көп бағыт-бағдар берді.




Каталог: uploads -> 2018 -> post02
post02 -> Сабақтың тақырыбы: ет кабинетіндегі жұмыс тәртібі мен қауіпсіздік техникасының ережелері
post02 -> Жаңа білім мазмұнының химия пәнінде қолданудың тиімділігі «Еліміздің ертеңі бүгінгі жас ұрпақтың қолында, ал жас ұрпақтың тағдыры ұстаздарының қолында»
post02 -> Сабақ жоспары Ұзақ мерзімді жоспардың тарауы
post02 -> Сабақ: №21 Тақырып: Мөлдір бұлақ-жасыл құрақ. Құндылық: Қиянат жасамау
post02 -> Лекциялық сабақтар мазмұны 3-25 Зертханалық сабақтардың қысқаша сипаттамалары 26-46
post02 -> Ќыз жјне ер баланыѕ психологиялыќ ерекшеліктері
post02 -> Құрметті әріптестер,қонақтар сіздерді тәуелсіздік
post02 -> 5 «б» сынып. Мұғалім: Азимбаева Г. Б
post02 -> Сабақтың тақырыбы: «Алтын жүрек Анамыз.»


Достарыңызбен бөлісу:


©kzref.org 2019
әкімшілігінің қараңыз

    Басты бет