Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Inf-kaSbkDomZad_A5_Vse1.doc
Скачиваний:
0
Добавлен:
14.04.2019
Размер:
314.37 Кб
Скачать

1. Предусмотреть режимы ввода/вывода: только экран и клавиатура, ввод из текстового файла и вывод в текстовый файл с отображением диалога на экране.

2. Предусмотреть ввод символа-признака окончания входного текста и числовых констант из текстового файла.

Задача 1.44. "ЧИСЛА В СИ". Написать программу, осуществляющую отбор из входного текста последовательностей символов, удовлетворяющих правилам задания числовой константы типа int в языке Си (отбор лексем-чисел типа int). Вводится последовательность не более 7 строк длиной не более 57 символов. Окончание входного текста - ввод строки, начинающейся символом "/". На выходе формируется следующая информация:

(c) <имя автора, версия и название задачи>

Входной текст:

(последовательность входных строк)

Введено N1 строк, всего N2 символов,

Минимальная длина строки N3 символов,

Максимальная длина строки N4 символов.

Выходной текст (с выделенными другим цветом лексемами-числами):

Строка 1: физика 123 матан 0x1FDA информатика

--- ------ <-- выделено цветом

Строка К: фикус 0794 while -945 end of text

---- <-- выделено цветом

Чаще всех встретилась лексема-число "123": N6 раз

УКАЗАНИЯ: Предусмотреть обработку ошибочных ситуаций и легкую замену в тексте программы числовых и символьных констант. Обратите внимание на функции из <STRING.H>.

РАЗВИТИЕ:

1. Предусмотреть режимы ввода/вывода: только экран и клавиатура, ввод из текстового файла и вывод в текстовые файлы (входной текст с удаленными лексемами-числами и файл с лексемами-числами с указанием номера строки, где они были обнаружены) с отображением диалога на экране.

2. Предусмотреть ввод символа-признака окончания входного текста и числовых констант из текстового файла.

Задача 1.45. "СКОБКИ В СИ". Написать программу, осуществляющую подсчет количества пар круглых и фигурных скобок, а также минимальной и максимальной вложенности скобок каждого типа в текстовом файле, содержащем синтаксически правильную программу на Си. Вводится имя входного файла, затем после обработки на экране и в выходном файле OUTFILE.DAT формируется следующая информация:

(c) <имя автора, версия и название задачи>

Входной файл: INFILEN.AME содержит К1 строк, К2 символов.

Пар круглых скобок = N1, минимальная вложенность = N2, максимальная вложенность = N3

Пар фигурных скобок = N4, минимальная вложенность = N5, максимальная вложенность = N6

УКАЗАНИЯ: Предусмотреть обработку ошибочных ситуаций. Обратите внимание на функции из <STRING.H>. Хорошим тестом является исходный текст самой этой программы.

РАЗВИТИЕ:

1. Расширить эту задачу формированием дополнительного выходного файла SMART.FIL, содержащего текст исходной программы, НО с удаленной избыточностью фигурных скобок.

Задача 1.46. "КОММЕНТАРИИ В СИ". Написать программу, осуществляющую подсчет количества комментариев и строк с комментариями, а также минимальной и максимальной длины комментария (в строках) в текстовом файле, содержащем синтаксически правильную программу на Си. Вводится имя входного файла, затем после обработки на экране и в выходном файле OUTFILE.DAT формируется следующая информация:

(c) <имя автора, версия и название задачи>

Входной файл: INFILEN.AME содержит К1 строк, К2 символов.

Комментариев = N1, мин. длина, строк = N2,

макс. длина, строк = N3

Строк с комментариями = N4, мин. длина, символов = N5,

макс. длина, символов = N6

УКАЗАНИЯ: Предусмотреть обработку ошибочных ситуаций. Обратите внимание на функции из <STRING.H>. Хорошим тестом является исходный текст самой этой программы.

РАЗВИТИЕ:

1. Расширить эту задачу подсчетом общего количества строк, содержащих только комментарии, а также их минимальной и максимальной длины в строках и символах.

Задача 1.47. "ВЕДОМОСТЬ УСПЕВАЕМОСТИ". Написать программу, обрабатывающую успеваемость студентов академической группы. Вводятся одна за другой пары значений - Фамилия И.О. студента и индекс его оценки на экзамене (0 - академический отпуск, 1 - неявка по неизвестной причине, 2 - неудовлетворительно, 3 - удовлетворительно, 4 - хорошо, 5 - отлично, 6 - не допущен, 7 - нет в группе, 8 - сессия продлена, 9 - неявка по уважительной причине). Процедура ввода завершается при вводе индекса оценки меньше 0 или больше 9. Затем после обработки выводятся средний балл по группе (учитываются только индексы 2, 3, 4, 5), для каждого индекса оценки с его названием общее количество студентов, их относительная доля в процентах и их Фамилии И.О., а в конце общее количество студентов.

УКАЗАНИЯ: Предусмотреть обработку ошибочных ситуаций и наглядную форму диалога.

РАЗВИТИЕ:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]