- •Лекція 0.1.
- •1. Вступ.
- •2. Програмування - що це? Наука, мистецтво, ремесло.
- •3. Мислення і властивості програміста
- •4. Загальні завдання курсу
- •5. Технології, методи і підходи до програмування
- •Імперативне програмування
- •6. Структурне програмування, як основа для вирішення більшості завдань
- •7. Завдання та мови для їх вирішення
- •Лекція 2. Основи алгоритмізації
- •Тема 4. Цикли
- •Відповідність між блок-схемами, алгоритмічною мовою,і лексичними конструкціями с.
- •Монітори з електронно-променевою трубкою (crt Cathode Ray Tube)
- •Основні характеристики електропроміневих моніторів
- •Рідкокристалічні дисплеї (tft lcd. Thin Film Transistor Liquid Crystal Display)
- •Основні характеристики рідкокристалічних дисплеїв
- •Переваги рідкокристалічних дисплеїв перед епт моніторами
- •Недоліки рідкокристалічних дисплеїв
- •Плазмові панелі (pdp Plasma Display Panel)
- •Головні недоліки плазмових панелей:
- •Сенсорні екрани (Touch Screen)
- •Застосування в багатьох областях:
- •Сенсорний екран складається з:
- •Переваги сенсорних екранів
- •Недоліки
- •Лазерні принтери
- •Світлодіодні принтери
- •Струменеві принтери
- •Матричні принтери
- •Тема 6.
- •Тема 6. Лекція №6.2 "Основи мови Сі"
- •Уведення-виведення
- •Пріоритети операцій
- •Лекція №7 " Оператори мови Сі і прийоми програмування " Оператори мови Сі
- •4.1. Оператор виразу
- •4.2. Порожній оператор
- •4.3. Складений оператор
- •4.4. Оператор іf
- •4.4.6. Оператор break
- •4.4.7. Оператор for
- •4.8. Оператор whіle
- •4.9. Оператор do whіle
- •4.10. Оператор contіnue
- •4.11. Оператор return
- •4.12. Оператор goto
- •Директиви Препроцесора
- •8.1. Директива #іnclude
- •8.2. Директива #defіne
- •8.3. Директива #undef
- •Лекція 3. "Процедури і функції"
- •Лекція 4. "Покажчики і Рекурсія"
- •12. Рекурсія
- •Лекція 13. Покажчики в c
- •Іспит На кінець місяця студенти повинні знати:
- •Уміти вирішувати завдання:
- •Лекція №14 "Символьних рядків"
- •Іспит На іспит студенти повинні знати:
- •Уміти вирішувати завдання:
- •Іспит На іспит студенти повинні знати:
- •Уміти вирішувати завдання:
- •Тиждень 3
- •Тиждень 4
- •Тиждень 1
- •Тиждень 2
- •Іспит На іспит студенти повинні знати:
- •Уміти вирішувати завдання:
Іспит На кінець місяця студенти повинні знати:
- перехід від запису алгоритму у вигляді блок-схеми, до запису на мові Сі;
- принцип організації двовимірних і багатовимірних масивів, способи введення-виводу;
- способи сортування масивів і пошуку елементів масиву;
- принципи організації процедур і функцій, передачі ним параметрів і зони видимості змінних;
- принципи роботи рекурсивних підпрограм;
Уміти вирішувати завдання:
- створення і сортування багатовимірних масивів за певним законом;
- видалення елементів з масиву;
- модифікації двовимірних масивів;
- створення покажчиків на змінні і масиви, встановлювати і набувати їх значень;
- складання тексту програми з використанням процедур і функцій;
- написання рекурсивних підпрограм
3-й місяць "Файли"
Практика. «Вдосконалення роботи з масивами і функціями»
Описати рекурсивну функцію Fib1(N) цілого типу, обчислюючи N -й елемент послідовності чисел Фібоначчі (N — ціле число) :
F1 = F2 = 1, FK = FK - 2 + FK - 1, K = 3, 4, .
За допомогою цієї функції знайти п'ять чисел Фібоначчі з цими номерами, і вивести ці числа разом з кількістю рекурсивних викликів функції Fib1, що знадобилися для їх знаходження.
Описати процедуру Split1(A, NA, B, NB, C, NC), що формує по речовому масиву A розміру NA два речові масиви B і C розміру NB і NC відповідно; при цьому масив B містить усі елементи масиву A з непарними порядковими номерами (1, 3, .), а масив C — усі елементи масиву A з парними номерами (2, 4, ...). Масиви B і C і числа NB і NC є вихідними параметрами. Застосувати цю процедуру до цього масиву A розміру NA і вивести розмір і вміст отриманих масивів B і C.
Описати рекурсивну функцію MaxElem(A, N) цілого типу, яка знаходить максимальний елемент цілочисельного масиву A розміру N (1 < N < 10), не використовуючи оператор циклу. За допомогою цієї функції знайти максимальні елементи масивів A, B, C розміру NA, NB, NC відповідно.
Дана матриця розміру M х N. Упорядкувати її рядки так, щоб їх перші елементи утворювали зростаючу послідовність.
Лекція 1. "Символьні рядки"
що таке символьний рядок
уведення-виведення символьних рядків
операції над рядками
рядки у функціях і процедурах
Лекція №14 "Символьних рядків"
План
- вступ (суть лекції)
- що таке символьний рядок
- уведення-виведення символьних рядків
- операції над рядками
- рядки у функціях і процедурах
Завдання. Заміна усіх маленьких англійських букв в рядку відповідними великими
#include <stdio.h>
#include <stdlib.h>
long int leng (char *S){
int i;
for (i=0;S[i]!='';i++){}
return i;
}
void upcase (char *S){
int dist = 'a '-' A';
int i, N=leng(S);
printf ("%i", N);
for ( i=0;i<N;i++){
if (S[i]>'a' && S[i] <'z') S[i]=S[i]- dist;
printf ("S[%i]= %c %i", i, S[i],S[i]);
}
}
int main(int argc, char *argv[])
{char S[1000];
int N, i;
scanf ("%s", S);
upcase (S);
printf ("%s", S);
system("PAUSE");
return 0;
}
Практика.
Даний символ C. Вивести два символи, перший з яких передує символу C в кодовій таблиці, а другою йде за символом C.
Дано парне число N (> 0) і символи C1 і C2. Вивести рядок довжини N, яка складається з символів C1 і C2, що чергуються, починаючи з C1.
Даний рядок. Підрахувати кількість цифр, що містяться в ній.
Даний рядок, що містить цифри і дужки трьох видів : «() », «[]», «{}». Якщо дужки розставлені правильно (тобто кожною відкриває відповідає закриваюча дужка того ж виду), то вивести число 0. Інакше вивести або номер позиції, в якій розташована перша помилкова дужка, або, якщо закриваючих дужок бракує, число - 1.
Лекція 2. "Текстові файли"
типи файлів
дескриптори файлів
нижній рівень введення-виводу
системні виклики
текстові файли
Практика.
Дано ім'я файлу і цілі позитивні числа N і K. Створити текстовий файл з вказаним ім'ям і записати в нього N рядків, кожна з яких складається з K символів «*» (зірочка).
Дано ім'я файлу і ціле число N (0 < N < 27). Створити текстовий файл з вказаним ім'ям і записати в нього N рядків : перший рядок повинен містити рядкову (тобто маленьку) латинську букву «a», друга, — букви «ab», третя, — букви «abc» і т. д.; останній рядок повинен містити N початкових рядкових латинських букв в алфавітному порядку.
Дано ціле число K і текстовий файл. Видалити з кожного рядка файлу перші K символів (якщо довжина рядка менше K, то видалити з неї усі символи).
Дано два текстові файли. Додати в кінець першого файлу вміст другого файлу.
Даний текстовий файл. Замінити в нім усі пропуски, що підряд йдуть, на один пропуск.
Лекція 3. "Файли з довільним доступом".
бінарні файли
довільний доступ
покажчик поточної позиції
переміщення покажчика по файлу
читання і виведення бінарних файлів
Практика.
Дано ім'я бінарного файлу і ціле число N (> 1). Створити файл цілих чисел
цим ім'ям і записати в нього N перших позитивних парних чисел (2, 4, ...:).
Дано ім'я файлу цілих чисел. Знайти кількість елементів, що містяться в цьому файлі. Якщо файлу з таким ім'ям не існує, то вивести - 1.