Семинары
1-го курса Работы на ЭВМ
02.09.21
Введение.
Работа со связкой Far +
gcc.
Компиляция, сборка, запуск программы. Все, необходимое для написания программы,
ввода двух чисел и вывода их на экран:
#include
<stdio.h>
#include
<stdlib.h>
#include
<math.h>
int main(void)
{int a,b,c;
printf("a="); scanf("%d",&a);
printf("b="); scanf("%d",&b);
c=a+b;
printf("%d+%d=c=%d\n",a,b,c);
return
0;
}
Пожелания
к следующему разу :
-
установить у себя Far и
gcc (с моего сайта),
-
прочитать/прослушать информацию для первокурсников с сайта (в частности, как
создать командный файл wgcc),
-
создать, скомпилировать, создать и запустить простой пример программы на языке
С.
21.09.21
Массивы.
Работа с массивами фиксированного размера и размера, задаваемого в некоторой
переменной. Стек и куча. Понятие системного стека Операции со стеком.
Ввод
массива из файла, в котором размер массива задан явно, с отведением под него
памяти. Видео.
23.09.21
Циклы.
Оператор switch и случаи оправданности его
использования. Использование break, continue,
goto.
Логические операции и, или, не.
Немного про использование точки с запятой. Операторы ++. Видео.
30.09.21
Макроопределения.
Оператор #define. Использование IN и OUT. Неявные преобразования типов.
Все базовые типы. Что можно и что нельзя помещать в include-файлы. Видео.
05.10.21
Массивы
и указатели. Отличия. Символьные переменные. Строки. Строковые константы. Видео.
07.10.21
Время
жизни и область видимости переменных. Глобальные и локальные переменные в языке
C.
Пример функции определения простоты целого числа. Видео.
14.10.21
Обоснование
запрета на массивы (в виде локальных автоматических переменных), размер которых
задается в виде переменной. Процесс выполнения программы. Простейший вариант
цикла выполнения программы. Видео.
19.10.21
Работа с
массивами. Модельная задача на работу с массивами. Реализация ввода массива,
заданного в одном из двух возможных форматов, из файла. Видео.
22.10.21
Работа с
простыми двумерными массивами. Вычисление детерминанта матрицы из целых чисел. Видео.
28.10.21
Кеш-память. Представление целых чисел в
ЭВМ (Little/Big-endian, дополнительный код). Видео.
02.11.21
Работа с
битовыми операциями. Подходы к решению пары принципиальных задач. Видео.
11.11.21
Сортировки.
Сортировки пузырьком и слиянием с рекурсией. Теоремы о времени работы и
пространственной сложности. Разница математического и программистского подходов
к теоремам о пространственной сложности алгоритмов. Видео.
30.11.21
Вещественные
числа с плавающей точкой (примитивный подход). Точность представления
вещественных чисел с плавающей точкой. Как правильно интерпретировать равенство
вещественных чисел? Основные элементарные концепции вычислительной геометрии. Видео.