Федеральное агентство связи
О.И.Моренкова
Л.Ф.Лебеденко
Т.И.Парначева
информатика
программирование на языке С++
Методические указания
к лабораторным работам
Часть 2
Новосибирск
2012
Федеральное агентство связи
Федеральное государственное образовательное бюджетное
учреждение высшего профессионального образования
"Сибирский государственный университет
телекоммуникаций и информатики"
О.И. Моренкова
Л.Ф. Лебеденко
Т.И. Парначева
информатика
программирование на языке с++
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
к лабораторным работам
Часть 2
Новосибирск
2012
УДК
О.И. Моренкова, Л.Ф.Лебеденко, Т.И. Парначева
В методических указаниях описан цикл лабораторных работ по дисциплине «Информатика» для специальностей 230100 и 210700 подготовки бакалавров, а также подготовки специалистов по направлению 090302 . Учебные материалы указаний будут полезны студентам и магистрантам соответствующих специальностей очного, заочного и дистанционного обучения для приобретения профессиональных навыков работы с современными языками программирования
Лабораторные работы ориентированы на работу в среде Visual Studio.
Кафедра телекоммуникационных средств и вычислительных систем
Таблиц - 6, литературы - 3.
Рецензент – к.т.н., доцент Е.В.Кокорева
Утверждено редакционно-издательским советом СибГУТИ в качестве методических указаний.
© Сибирский государственный университет
телекоммуникаций и информатики, 2012
Введение
Настоящие методические указания предназначены для использования в процессе лабораторного практикума по дисциплине «Информатика» студентами специальностей 230100 и 210700 подготовки бакалавров, а также подготовки специалистов по направлению 090302.
В ходе выполнения лабораторных работ студенты должны приобрести теоретические знания в области программирования и навыки разработки несложного программного обеспечения на конкретном алгоритмическом языке. В процессе решения задач студенты должны правильно выбирать и описывать типы данных, изучить синтаксис и правильно использовать операторы алгоритмического языка, освоить работу с такими структурами данных, как массивы, разрабатывать программы с использованием базовых вычислительных структур.
В данном руководстве предлагается 12 лабораторных работ, посвященных изучению базовых конструкций языка Си (условия, циклы и функции) и способов хранения и обработки данных (массивы, структуры, рекурсия).
Лабораторная работа № 13 обработка текстовых файлов
Цель работы: Получить навыки обработки текстовых файлов средствами языка C++.
Подготовка к лабораторной работе
При подготовке к лабораторной работе:
Повторить назначения основных этапов обработки программы в интегрированной среде Visual Studio;
Повторить основные шаги работы с файлами. Изучить стандартные функции для работы с текстовыми файлами.
Изучить разделы учебного пособия «ОСНОВЫ ПРОГРАММИРОВАНИЯ НА С++», стр. 130-139.
Порядок выполнения работы:
Получить допуск у преподавателя.
Создать исходный файл с программой на языке С++.
Провести отладку программы.
Выполнить программу.
После проверки правильности результатов решения показать их преподавателю.
Содержание отчета:
Номер, тема и цель лабораторной работы
Задание к лабораторной работе.
Схема алгоритма.
Программа на языке С++.
Результаты решения.
Задание к лабораторной работе
Написать программу на языке С++ для обработки текстового файла. В соответствии с вариантом задания. Варианты заданий приведены в таблице 1.
Варианты заданий
Таблица 1
Вариант
|
Условие задачи
|
I |
Создать файл, содержащий массив целых чисел. Найти наименьшее из модулей отклонения чисел от их среднего значения. |
2 |
Создать текстовый файл с произвольным числом строк. В самой длинной строке поменять местами первое и последнее слово. |
3 |
Создать текстовый файл с произвольным числом строк. Подсчитать общее количество символов в каждой строке. |
4 |
Создать текстовый файл с произвольным числом строк. Заменить самое длинное слово каждой строки на ваше имя. |
5 |
Создать текстовый файл с произвольным числом строк. Записать слова в обратном порядке. |
6 |
Создать файл, содержащий произвольные текстовые строки. Подсчитать количество строк, начинающихся с буквы 'А'. |
7 |
Создать файл, содержащий текстовые строки произвольной длины. Дополнить все строки символом 'X' до самой длинной строки. |
8 |
Создать текстовый файл с произвольным числом строк. Самую длинную строку записать в обратном порядке. |
9 |
Переписать в файл выходных данных таблицу значений функций: у = sinx и z = tgx, рассчитанных для всех х на отрезке [0, 3] с шагом 0.1. Значения х записать в файле с одной цифрой в дробной части, значения у - с двумя цифрами в дробной части, значения z - в форме числа с порядком. |
10 |
Создать файл, содержащий текстовые строки произвольной длины. Вывести строки с наименьшей длиной. |
11 |
Создать текстовый файл с произвольным числом строк. После каждого слова вставить точку. |
12 |
Создать текстовый файл с произвольным числом строк. В тексте должны встречаться цифры. Вычислить сумму цифр и добавить ее файл. |
13 |
Создать файл, содержащий произвольные текстовые строки. Подсчитать количество строк, начинающихся и заканчивающиеся буквой 'Я'. |
14 |
Создать файл, содержащий массив вещественных чисел. Определить количество чисел, меньших среднего арифметического значения всех чисел массива. |
15 |
Создать текстовый файл с произвольным числом строк. Поменять местами первое и последнее слово. |
16 |
Создать текстовый файл с произвольным числом строк. Заменить заданное слово на ваше имя. |
17 |
Создать текстовый файл с произвольным числом строк. Все строки переписать в обратном порядке.
|
18 |
Создать текстовый файл с произвольным числом строк. Буквы в каждом слове записать в обратном порядке. |
19 |
Заменить начальные буквы всех слов на прописные буквы и записать результирующий текст в новый файл. |
20 |
Создать текстовый файл с произвольным числом строк. Все большие буквы заменить на маленькие. |
21 |
Определить количество слов в текстовом файле. Учесть, что слова могут разделяться между собой как одним, так несколькими пробелами. |
22 |
Перезаписать текстовый файл на диск с заменой всех строчных букв на прописные. |
23 |
Создать текстовый файл с произвольным числом строк. В тексте должны встречаться числа. Определить количество чисел и добавить его файл. |
24 |
Разработать программу шифрования текстового файла |
25 |
Создать файл, содержащий текстовые строки произвольной длины. Вывести строки с наибольшей длиной. |
Лабораторная работа № 14
СОЗДАНИЕ И ОБРАБОТКА БИНАРНЫХ ФАЙЛОВ
Цель работы: Приобрети навыков разработки алгоритмов обработки файлов. Закрепление понятий базовых структур цикл, разветвление.
Подготовка к лабораторной работе
При подготовке к лабораторной работе следует повторить следующие вопросы:
понятие файла, описание файла, типы файлов;
описание структурных типов;
стандартные процедуры для работы с файлами: fopen( ), fscanf( ), fprintf( ), fclose( ), feof( ).
Изучить разделы учебного пособия «ОСНОВЫ ПРОГРАММИРОВАНИЯ НА С++», стр. 130-142.
Варианты заданий
В соответствии с вариантом задания разработать программу создания и программу обработки бинарного файла.
Вариант
|
Условие задачи
|
I |
Создать файл, содержащий массив целых чисел. Найти наименьшее из модулей отклонения чисел от их среднего значения. |
2 |
Создать файл, содержащий массив вещественных чисел. Определить количество чисел, меньших среднего арифметического значения всех чисел массива. |
3 |
1.Создать файл Spravra.dat, содержащий 8 записей следующей структуры: название пункта назначения; номер поезда; время отправления. 2.Написать программу, выполняющую следующую обработку файла Spravra.dat:
|
4. |
1.Создать файл Spravra.dat, содержащий 10 записей следующей структуры: название начального пункта маршрута; название конечного пункта маршрута; номер маршрута; 2.Написать программу, выполняющую следующую обработку файла Spravra.dat:
|
5 |
1.Создать файл Wedomost.dat, содержащий 10 записей следующей структуры: фамилия и инициалы студента; номер группы; успеваемость по трем предметам; 2.Написать программу, выполняющую следующую обработку файла Wedomost.dat:
|
6 |
1.Создать файл Spravra.dat, содержащий 10 записей следующей структуры: название пункта назначения; номер рейса; тип самолета. 2.Написать программу, выполняющую следующую обработку файла Spravra.dat:
|
7 |
Создать файл, содержащий записи следующей структуры: фамилия и инициалы студента; номер группы; успеваемость по пяти предметам; Написать программу, выполняющую следующие действия:
|
8 |
Создать файл, содержащий записи следующей структуры: фамилия и инициалы студента; номер группы; успеваемость по пяти предметам; Написать программу, выполняющую следующие действия:
|
9 |
Переписать в файл выходных данных таблицу значений функций: у = sinx и z = tgx, рассчитанных для всех х на отрезке [0, 3] с шагом 0.1. Значения х записать в файле с одной цифрой в дробной части, значения у - с двумя цифрами в дробной части, значения z - в форме числа с порядком. |
10 |
Создать файл, содержащий записи следующей структуры: название пункта назначения; номер поезда; время отправления; Написать программу, выполняющую следующие действия:
|
11 |
Создать файл, содержащий записи следующей структуры: фамилия и инициалы; номер телефона; день рождения (массив из трех чисел); Написать программу, выполняющую следующие действия:
|
12 |
Создать файл, содержащий ФИО студентов и их экзаменационные оценки по трем дисциплинам. Выбрать студентов, имеющих хотя бы одну задолженности. Вывести ФИО этих студентов и количество несданных экзаменов. |
13 |
Создать файл F1, содержащий ФИО студентов. Переписать его в файл F2 таким образом, чтобы перед ФИО студента стоял его порядковый номер. |
14 |
Создать файл, содержащий записи следующей структуры: фамилия и инициалы; знак Зодиака; день рождения (массив из трех чисел); Написать программу, выполняющую следующие действия:
|
15 |
Создать файл, содержащий ФИО рабочих и их среднемесячный заработок. Вывести ФИО рабочих, имеющих наибольший заработок. |
16 |
Создать файл, содержащий записи следующей структуры: фамилия и инициалы; номер телефона; день рождения (массив из трех чисел); Написать программу, выполняющую следующие действия:
|
17 |
Создать файл, содержащий ФИО абонентов и их номера телефонов. Составить программу, которая по ФИО абонента выводит его номер телефона. |
18 |
Создать файл, содержащий номер рейса самолета и количество свободных мест. Составить программу, которая по вводимому номеру рейса выводит сведения о количестве свободных мест на этот рейс. |
19 |
Создать файл, содержащий названия детских игрушек и их стоимость. Вывести наименование и стоимость самой дорогой игрушки. |
20 |
Создать файл, содержащий массив целых чисел произвольного размера. Определить количество элементов массива. Переменной L присвоить значение TRUE, если в массиве нечетное число элементов, и значение FALSE - в противном случае. |
21 |
Создать файл, содержащий записи следующей структуры: название товара; название магазина, в котором он продается; стоимость; Написать программу, выполняющую следующие действия:
|
22 |
Создать файл, содержащий записи следующей структуры: название товара; название магазина, в котором он продается; стоимость; Написать программу, выполняющую следующие действия:
|
23 |
Создать файл, содержащий записи следующей структуры: название товара; название магазина, в котором он продается; стоимость; Написать программу, выполняющую следующие действия:
|
24 |
Создать файл, содержащий записи следующей структуры: название товара; название магазина, в котором он продается; стоимость; Написать программу, выполняющую следующие действия:
|
|
|