- •"Алгоритмдеу және бағдарламалау негіздері" пәні бойынша
- •"Алгоритмдеу және бағдарламалау негіздері" пәні бойынша
- •1. Пәннің оқу бағдарламасы - syllabus
- •1.1. Оқытушы жөнінде мәліметтер:
- •1.2. Пән бойынша мәліметтер:
- •1.3. Осыған дейінгі пәндер тізімі: Информатика, Математикалық талдау, Алгебра және геометрия, Математикалық логика.
- •1.4. Шектес пәндер тізімі: Сандық әдістер, Бағдарламалау тілі, Компьютерде тәжірибе
- •1.5. Пән мақсаты:
- •1.6. Пән бойынша берілген тапсырмаларды орындау және тапсыру графигі
- •11. Рашбаев ж.М. Массивті реттеу алгоритмдерін программалау. Оқу және методикалық әдебиеттер жөніндегі Республикалық баспа кабинеті. Алматы-1991 ж.
- •1.8. Бағалау ақпараттары
- •1.9. Курс саясаты және процедурасы
- •2. Пән бойынша оқу-әдістемелік кешен материалдары
- •2.1. Курстың тақырыптық жоспары
- •2.2. Дәріс сабақтар
- •1 Дәріс тақырыбы: Алгоритмдер. Алгоритмдерді талдау. Алгоритмдер құру.
- •2 Дәріс тақырыбы: Программа құру тілі. Программа құрылымы. Енгізу және шығару командалары.
- •3 Дәріс тақырыбы: Есептің қойылымы. Математикалық моделін тұрғызу. Алгоритмін құру. Есепті компьютерде шешу. Проектіні тексеру.
- •4 Дәріс тақырыбы: Циклдік алгоритм. Цикл түрлері. Цикл құрылымы.
- •5 Дәріс тақырыбы: Берілгендердің символдық типі. Жолдық тип.
- •6 Дәріс тақырыбы: Берілгендердің фундаментальді типі. Массив, жазба және жиынның қойылымы.
- •7 Дәріс тақырыбы: Рекурсивті алгоритмдер.
- •Мұндай рекурренттік қатынас п- факториалды санының рекурсивтік есептеу алгоритмін шамалайды.
- •8 Дәріс тақырыбы: Қосалқы программа. Функция. Процедуралық тип.
- •9 Дәріс тақырыбы: Ақпараттық құрылым. Сызықты тізім.
- •10 Дәріс тақырыбы: Ақпараттық құрылымдар. Стектер, кезектер.
- •1 Сурет
- •2 Сурет
- •4 Сурет
- •5 Сурет
- •11 Дәріс тақырыбы: Тізбекті үлестіру. Байланысқан үлестіру.
- •12 Дәріс тақырыбы: Бірбағытталған және екібағытталған байланысқан тізімдер. Көрсеткіштер.
- •13 Дәріс тақырыбы: Ақпараттық құрылым. Ағаш. Ағаштардың қойылымы.
- •14 Дәріс тақырыбы: Көпбайланысқан құрылымдар. Жадыны динамикалық бөлу.
- •15 Дәріс тақырыбы: Ішкі сұрыптау алгоритмдері: таңдау, қосу. Тікелей таңдауға талдау.
- •16 Дәріс тақырыбы: Ішкі сұрыптау алгоритмдері: Екілік қосылымға талдау жасау.
- •17 Дәріс тақырыбы: Көпіршікті және шейкерлік сұрыптауды талдау.
- •18 Дәріс тақырыбы: Бөліп алу көмегімен сұрыптау.
- •19 Дәріс тақырыбы: Медиананы табу.
- •20 Дәріс тақырыбы: Сызықты іздеу.
- •21 Дәріс тақырыбы: Екілік іздеу.
- •22 Дәріс тақырыбы: Қатарда іздеу. Кнут - Моррис - Пратт алгоритмі.
- •23 Дәріс тақырыбы: Қатарда іздеу. Боуер-Мура алгоритмі.
- •24 Дәріс тақырыбы: Жолды өңдеу алгоритмі. Рабин алгоритмі.
- •25 Дәріс тақырыбы: Қайталанбалы алгоритм.
- •26 Дәріс тақырыбы: Қайталанбалы алгоритм. Аттың жүрісі туралы есеп.
- •27 Дәріс тақырыбы: Программалаудың кейбір фундаментальді әдістері. Программаны құрастырудың технологиясы және таралуы.
- •28 Дәріс тақырыбы: Есептеуді тиімдеу. Программаны жөндеу және тестілеу әдістемесі.
- •29 Дәріс тақырыбы:
- •30 Дәріс тақырыбы: Объектіге-бағытталған программалау.
- •2.3. Зертханалық сабақ жоспарлары
- •Алгоритм. Қасиеттері. Алгоритм қойылымы.
- •2.4. Оқытушы жетекшілігімен жүргізілетін студенттердің өзбетіндік жұмысы
- •Орындаушы тәжірибе аяқталғаннан кейін шығыс ақпаратын немесе екі хабардың бірін береді.
- •65387 Санында – 5 цифр !
- •Тақырыбы: Ағаш. Ағашты қалыптастыру. Қалыпты ағашты құру.
- •Ноталардың дыбысталу жиілігі
- •Студенттердің өзбетіндік жұмыс жоспары
- •Тақырыбы: Берілгендер. Берілгендер типі, тұрақты және айнымалы. Өрнектер.
- •Тақырыбы: Динамикалық ақпаратты құрылым. Ағаш.
- •Тақырыбы: Ішкі жолдарды іздеу. Текстке сөз енгізу.
- •Тақырыбы: Ішкі сұрыптау алгоритміне программа құру.
- •Тақырыбы: Сұрыптау алгоритмі
- •Тақырыбы: Массивті сұрыптау алгоритмінің таралымы
- •Тақырыбы: Файлдық тип. Тексттік файлдар.
- •Тақырыбы: Файлмен жұмыс
- •Тақырыбы: Кіру және шығу файлдарымен жұмыс.
- •Тақырыбы: Файлдарды сұрыптау және последовательностей
- •Тақырыбы: Кнут-Морис- Пратта алгоритмін қолдану
- •Тақырыбы: Поиск подстроки в строке
- •Тақырыбы: Манипулирование строками
- •Тақырыбы: Рекурсивті алгоритмдердің таралымы. Лабиринт есебі.
- •Тақырыбы: Рекурсивті алгоритмдер құрастыру.
- •2 Мысал:
- •Тақырыбы: Мәтіндік режимде экранды басқару. Crt модулін қою.
- •2 Мысал: Күн жүйесінің динамикалық моделі.
- •2.6. Курс бойынша жазба жұмыстарының тақырыптамалары
- •Курстық жұмыс және проектілер тақырыптамалары
- •Алгоритм дегеніміз -
- •B) Тізбектелген, циклдық, тармақталу
- •Мазмұны
- •"Алгоритмдеу және бағдарламалау негіздері" пәні бойынша
Тақырыбы: Кіру және шығу файлдарымен жұмыс.
Тапсырмалар:
1. f1 және f2 символды файлы берілген. f1 файлы компонентін f2 файлына, f2 файлы компонентін f1 файлына сақталған күйінде көшіріп жазу. h көмекші файлын қолдану арқылы.
2. Нақты сандары бар f1, f2, f3, f4, f5 файлы берілген, Схема бойынша файлдар компонентін алмастыруды ұйымдастыр. Тек бір h көмекші файлын қолданып.
f1 f2 f3 f4 f5
| | | | |
f3 f4 f5 f2 f1
3. f символдық файлы берілген. f файлында кем дегенде екі компонент бар. Файлдың екі алғашқы символы цифр болып табылады ма? Егер қанағаттандырса, онда ол сан жұп па?
4. Бүтін сандар болатын f файлы берілген. g файлына f файлындағы төмендегі қасиеттері бар компоненттерді алу. а) Жұп санды;
б) 3-ке бөлінетін және 7-ге бөлінбейтін;
в) дәл квадраттарды.
5. f символдық файлы берілген. f файлындағы барлық әріптерді g файлына басқы әріптермен бейнелеу керек.
әдебиет:
1.Негізгі – 3, 5, 9-12
2. Қосымша - 4
Әдістемелік нұсқау:
Паскаль программалау тілінде файл компоненті массивте бола алады. Төмендегі мысалды қарастырайық.
Мысалы: Компоненті массив болатын файл құру. PROGRAM FJL_MAS;
type mas=array[1..10] of integer; fi1=file of mas;
var a:mas;
i,j:inte
BEGIN
assign(f,'mas.dat');
rewrite(f);
for i:=l to 7 do begin
for j:=l to 10 do
a[j]:=random(100);
write(f,a)
end;
close(f)
END.
№33 жұмыс
Тақырыбы: Файлдарды сұрыптау және последовательностей
Тапсырмалар:
1. Число компонент файла f, компонентами, которого являются целые числа, кратно десяти. Переписать компоненты файла f в файл g, изменяя порядок чисел в каждой десятке так, чтобы
а) вначале шли отрицательные числа десятки, а за ними — неотрицательные;
б) вначале шли числа, делящиеся на 3, затем числа, дающие при делении на 3 остаток 1, затем числа, дающие при делении на 3 остаток 2.
Порядок самих десяток должен быть сохранен.
2. Пусть файлы с и d с компонентами, являющимися действительными или целыми числами, упорядочены по невозрастанию компонент. Требуется собрать компоненты файлов с и d в упорядоченном виде в файле f . Количество сравнений не должно превосходить p+q, где р и q—число компонент в файлах cu d.
3. Пусть а и b—файлы, k—натуральное число. Будем говорить, что файлы a и b согласованно k-упорядочены, если
1) в каждом из файлов а и b первые k компонент, следующие за ними k компонент и т. д. образуют упорядоченные группы; последняя группа файла (тоже упорядоченная) может быть неполной, т. е. содержать менее k компонент, но при этом только один из файлов а и b может иметь неполную последнюю группу;
2) число упорядоченных групп файла а отличается от числа упорядоченных групп файла b не более чем на единицу;
3) если в одном файле число упорядоченных групп меньше на единицу, чем в другом, то неполной может быть только последняя группа более длинного файла.
әдебиет:
1.Негізгі – 3, 5, 9-12
2. Қосымша - 4
Әдістемелік нұсқау:
Компоненты
двух согласованно k-упорядоченных
файлов а
и
b
можно
разместить в файлах g
и
h
так,
что g
и
h
будут
согласованно 2k-упорядочены.
Это делается с помощью описанных в
предыдущей задаче слияний; при этом
результаты слияний попеременно
размещаются то в файле g,
то
в файле h.
Рис.
демонстрирует происходящее при первых
двух слияниях. Файлы представлены в
виде отрезков, части которых изображают
упорядоченные группы с указанным числом
компонент.
Завершить описание этого алгоритма, рассмотрев его заключительную стадию. Доказать, что файлы g и ft действительно будут согласованно 2k-упорядочены. Реализовать этот алгоритм в виде программы.
№34-35 жұмыс
