- •Антонюк в.А., Задорожный с.С.
- •Первая программа на с. История языка программирования с.
- •Среда программирования «Microsoft Visual Studio.Net».
- •Структура программы.
- •Пример простейшей программы:
- •Представление данных.
- •Операции.
- •Ввод и вывод алфавитно-цифровой информации.
- •Математические функции.
- •Практическое задание №1.
- •Условия в вычислениях. Ветвящиеся и итерационные алгоритмы Условная операция присваивания. Операторы if ... Else и switch.
- •Ветвящиеся алгоритмы.
- •Циклические и рекурсивные алгоритмы. Операторы циклов for, do, while.
- •Практическое задание №2.
- •Функции.
- •Определение функции.
- •Прототипы функций.
- •Вызов по значению и вызов по ссылке.
- •Вычисление функций путем разложения в ряд.
- •Поиск корней функции методом деления отрезка пополам.
- •Поиск корней функции методом касательных.
- •Практическое задание №3.
- •Массивы и указатели. Работа с файлами. Объявления массивов и указателей.
- •Доступ к элементам массива.
- •Передача массивов функциям.
- •Указатели.
- •Динамическое выделение и освобождение памяти.
- •Практическое задание.
- •Потоковые функции.
- •Низкоуровневый ввод и вывод.
- •Ввод и вывод символов, строк, слов.
- •Форматированный ввод и вывод.
- •Потоки cin, cout, cerr.
- •Практическое задание №4.
- •Структуры и объединения. Синтаксис структур.
- •Доступ к элементам структуры.
- •Передача структур в функции.
- •Структуры и битовые поля.
- •Объединения.
- •Дополнительные средства (typedef и enum).
- •Введение в объектно-ориентированное программирование. Принципы объектно-ориентированного программирования.
- •Терминология объектно-ориентированного программирования.
- •Структура как простейший класс.
- •Inline методы.
- •Указатель this.
- •Конструкторы и деструкторы.
- •Перегрузка методов класса.
- •Перегрузка операций.
- •Практическое задание.
- •Производные классы. Полиморфизм
- •Виртуальные функции
- •Использование дружественных функций.
- •Практическое задание.
- •Работа в объектно-ориентированной среде.
- •Объектно-ориентированные стековые операции.
- •Объектно-ориентированные связанные списки.
- •Практическое задание.
- •Классы iostream.
- •Потоковый ввод-вывод.
- •Буферизованные потоки.
- •Строковые потоки.
- •Двоичные файлы.
- •Вычисления в интерактивном режиме.
- •Графика в системе matlab.
- •3. Программирование m-функций.
- •4. Создание законченных приложений на основе графического интерфейса пользователя.
- •4. Создание законченных приложений на основе графического интерфейса пользователя.
- •Глава 7. Дополнительные возможности системы matlab Объекты и классы. Переопределение операций.
- •Написание расширений matlab на языке c
- •Программные интерфейсы
- •Настройка среды для сборки проекта
- •Пример программы
- •Вызов команд среды matlab из mex-файла
Практическое задание №4.
При выполнении этого задания студенты должны продемонстрировать знания и основные приемы работы с указателями и массивами, функциями файлового ввода-вывода, динамического распределения памяти и работы со строками литер. Процедуры ввода-вывода и счетные функции должны быть разнесены.
Для работы с файлами и прочими процедурами ввода-вывода используйте функции библиотеки stdio.h (fopen, fclose, (f)printf, (f)scanf, feof), для динамического распределения памяти - операторы new и delete, для операций со строками - функции библиотеки STRING (strcpy, strcat, strlen, strcmp).
Вариант 1.
Дан текстовый файл. Определите длину файла, количество строк в файле и количество пробелов в файле. Имя файла введите с консоли.
Вариант 2.
Распечатайте и запишите в файл таблицу значений полинома, заданного своими коэффициентами. Коэффициенты прочтите из файла. Файл состоит из строк, которые содержат одно действительное число в каждой строке. Число строк, а следовательно и количество чисел в файле, заранее неизвестно. Коэффициенты полинома записаны в файле, начиная с коэффициентов при младшем члене полинома. Имя файла с коэффициентами полинома, имя файла с таблицей значений, а также диапазон значений и шаг таблицы введите с консоли.
Контрольные примеры:
Вариант 3.
Напишите программу обработки статистических данных. Определите:
а) объем статистической выборки .
б) среднее арифметическое выборки
в) дисперсию
г) среднеквадратичное отклонение
Имя файла введите с консоли.
Файл состоит из строк, которые содержат одно действительное число в каждой строке. Число строк, а следовательно и количество чисел в файле, заранее неизвестно.
Вариант 4.
Дан файл, содержащий пары действительных чисел . Напишите программу, которая бы упорядочивала этот ряд в порядке возрастания x. Упорядоченный ряд запишите в файл. Имена входного и выходного файлов введите с консоли. Файл состоит из строк. Каждая строка содержит два действительных числа, разделенных пробелами или знаками табуляции. Количество строк в файле, а следовательно и количество пар чисел, заранее неизвестно.
Контрольные примеры:
Вариант 5.
Дан текстовый файл. Распечатайте и запишите в файл все слова, содержащие заданную подстроку. Имя входного и выходного файлов, а также подстроку введите с консоли.
Вариант 6.
Дан файл, содержащий записи, состоящие из двух полей - числового и текстового (подробно структуру файла см. приложение 5). Упорядочите записи в порядке возрастания числового поля. Упорядоченный список запишите в файл. Имена входного и выходного файлов вводите с консоли.
Файл состоит из строк. Каждая строка содержит единственную запись. Запись состоит из целого числа и единственного слова, разделенных пробелами ( целое число идет первым ). Число строк, а следовательно число записей заранее не известно.
Вариант 7.
Вычислите методом треугольника Паскаля.
, .
Полученные вектора запишите в файл построчно. Имя файла и количество строк n вводите с консоли.
Вариант 8.
Дан файл, содержащий список слов. Упорядочите список в алфавитном порядке и запишите упорядоченный список в файл. Имена входного и выходного файлов вводите с клавиатуры.
Файл состоит из строк. Каждая строка содержит единственное слово. Число строк в файле заранее не известно.