Занятие 3. Самостоятельное решение задач
I Выберите с учителем одну из предложенных ниже задач (тип Integer, real)
1. Создайте файл f целых чисел от А до В (значения вводятся с клавиатуры). Проанализировав в программе созданный файл, создайте еще 3 файла:
- содержащий отрицательные числа,
- содержащий положительные числа,
- содержащий нуль.
Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
2. Создайте файл f целых чисел от А до В (значения вводятся с клавиатуры). Проанализировав в программе созданный файл, создайте еще 3 файла:
- содержащий неположительные числа,
- содержащий четные числа,
- содержащий нечетные числа.
Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
3. Вводя числа с клавиатуры и анализируя их в программе создайте два файла: файл положительных чисел и файл неотрицательных чисел. Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в каком либо файле не оказалось.
4. Создайте файл f целых чисел (значения вводятся с клавиатуры). Проанализировав в программе созданный файл, создайте файл, содержащий суммы первого и (k div 2)-го числа, второго и (k div 2+1)-го числа, третьего и (k div 2+2)-го числа и так далее. Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
5. Создайте файл f целых чисел (значения вводятся с клавиатуры). Проанализировав в программе созданный файл, создайте файл, содержащий произведение первого и k-го числа, второго и (k-1)-го числа, третьего и (k-2)-го числа и так далее. Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
6. Создайте файл f целых чисел (числа вводятся с клавиатуры). Проанализировав в программе созданный файл, создайте отсортированый файл:
- по возрастанию,
- по убыванию,
- по невозрастанию,
- по неубыванию.
Выведите на экран содержимое файлов. Предусмотрите в программе вывод сообщения, если файл уже был упорядочен.
7. Создайте файл f действительных чисел от А до В с шагом х (значения вводятся с клавиатуры). Проанализировав в программе созданный файл, создайте еще 3 файла:
- содержащий неположительные числа,
- содержащий числа с нулевой дробной частью,
- содержащий модули чисел.
Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
8. Создайте файл f действительных чисел от А до В с шагом х (значения вводятся с клавиатуры). Проанализировав в программе созданный файл, создайте два файла:
- содержащий целые части числа,
- содержащий дробные части чисел.
Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
9. Создайте два файла действительных чисел. Проанализировав в программе созданные файлы, создайте файл, содержащий суммы соответствующих чисел файлов.
Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
10*. Создайте два файла действительных чисел. Проанализировав в программе созданные файлы, создайте файл строкового типа, содержащий суммы соответствующих чисел файлов в виде 2.5+3.4=5.9.
Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
II Выберите с учителем одну из предложенных ниже задач (тип char)
1. Создать файл произвольных символов. Удалить из файла каждый второй символ. Вывести на экран начальное и конечное содержимое файла. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
2. Создать файл произвольных символов. Вывести на экран содержимое файла. Каждую пятерку символов вывести перевернутой в другой файл. Вывести на экран содержимое полученного файла.
3. Создать файл произвольных символов. Вывести в один файл цифры, содержащиеся в файле, а в другой файл литеры, сохранив первоначальный порядок. Вывести на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если нужных символов в файле не оказалось.
4. Создать файл произвольных символов. Вывести в один файл цифры в порядке возрастания, а в другой файл литеры в алфавитном порядке. В файлах не должно быть повторений цифр и литер. Вывести на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если нужных символов в файле не оказалось.
5. Создать файл произвольных символов. Создать файл символов, встречающихся в заданном файле один раз. Вывести на экран содержимое файлов.
6. Создать файл произвольных символов. Проанализировав файл в программе, переписать в конец исходного файла все знаки препинания и посчитать их количество. Вывести на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если нужных символов в файле не оказалось.
7. Создать файл произвольных символов. Удалить из файла элементы, находящиеся между первой и второй точками. Выведите на экран содержимое файла. Предусмотрите в программе вывод соответствующего сообщения, если элементов в файле не оказалось.
8. Создать файл произвольных символов. Заменить в нем каждую из групп стоящих рядом точек одной звездочкой. Дополнительный файл не создавать. Выведите на экран содержимое файла. Предусмотрите в программе вывод соответствующего сообщения, если ни одной группы точек в файле не оказалось.
9. Создать файл произвольных символов. Найти длину наибольшей последовательности упорядоченных по возрастанию символов и скопировать эту последовательность в другой файл. Выведите на экран содержимое файла.
10. Создать файл произвольных символов. Все найденные программой буквы русского алфавита перенести в начало файла, а цифры – в конец. Все символы, не являющиеся буквой русского алфавита или цифрой, переписать в другой файл. Выведите на экран содержимое файлов. Предусмотрите в программе вывод соответствующего сообщения, если нужных символов в файле не оказалось.
III Выберите с учителем одну из предложенных ниже задач (тип string)
1. По введенной дате рождения (день и месяц, форма ввода в файл произвольная) дополнить файл строками соответствующего знака Зодиака:
20.01-18.02 – Водолей 23.07-22.08 – Лев
19.02-20.03 - Рыбы 23.08-22.09 – Дева
21.03-19.04 – Овен 23.09-22.10 – Весы
20.04-20.05 – Телец 23.10-22.11 – Скорпион
21.05-21.06 – Близнецы 23.11-21.12 – Стрелец
22.06-22.07 – Рак 22.12-19.01 – Козерог
2. Создать файл, содержащий произвольные строки. Обработать строки таким образом, чтобы между словами не было больше одного пробела и выполнить правое выравнивание строк файла. Обработанный текст записать в новый файл. Вывести на экран его содержимое.
3. Создать файл, содержащий произвольные строки. Запросите произвольное слово, посчитайте количество таких слов в файле и замените их на другое введенное пользователем слово. Вывести на экран содержимое первоначального и измененного файлов.
4. Создать файл, содержащий произвольные строки. Поменяйте строки файла так, чтобы их порядок был следующим:
1,к,2,к-1,3,к-2,4,к-3,5,к-4,...к/2.
Вывести на экран содержимое первоначального и измененного файлов.
5. Создать файл, содержащий произвольные строки. Поменяйте строки файла так, чтобы их порядок был следующим:
2,1,4,3,6,5,...
Вывести на экран содержимое первоначального и измененного файлов.
6. Создать файл, содержащий произвольные строки. Поменяйте строки файла так, чтобы их порядок был следующим:
к-1,к,к-3,к-2,к-5,к-4,...
7. Создать файл, содержащий строки, представляющие собой арифметические выражения, состоящие из чисел, знаков арифметических действий{+,-,*,/} и открывающихся и закрывающихся круглых скобок. Проверьте его корректность.
8. Создать файл, содержащий произвольные строки. Отсортируйте файл по возрастанию длин строк. Вывести на экран содержимое первоначального и измененного файлов.
9. Создать файл, содержащий произвольные строки. Отсортируйте файл по возрастанию длин строк и каждую строку по возрастанию длин слов. Вывести на экран содержимое первоначального и измененного файлов.
10. Создать файл, содержащий произвольные строки. Проверить правописание сочетаний жи-ши, ча-ща, чу-щу. Если найдены ошибки, исправить их и подчеркнуть исправленный слог. Вывести на экран содержимое первоначального и измененного файлов.
IV Выберите с учителем одну из предложенных ниже задач (тип record)
1. Составьте список группы спортсменов, участвовавших в гонках на спортивных машинах, включающей N человек. Для каждого гонщика укажите фамилию, имя, название страны, номер автомашины, наличие наград на предыдущих состязаниях, результаты гонки. Информацию о каждом спортсмене оформите в программе в виде записи. Совокупность записей объединить в файл. Составьте программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатайте анкетные данные спортсменов,
а) показавших лучший результат;
б) показавших три лучших результата,
в) не получивших ни одного призового места.
2. Составьте прайс-лист магазина "Техника", включающий в себя наименования товара, марку предприятия-производителя, страну-производитель, его цену, количество единиц товара на складе. Информацию о каждом виде товара оформите в программе в виде записи. Совокупность записей объедините в файл. Составьте программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы. Выведите на экран меню, а затем информацию о товаре в зависимости от запроса покупателя.
3. Составить список учебной группы, включающей N человек. Для каждого учащегося указать дату рождения, год поступления в техникум, курс, группу, оценки каждого года обучения. Информацию о каждом учащемся оформить в программе в виде записи. Совокупность записей объединить в файл. Составить программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатать список студентов, фамилии которых начинаются на буквы Б и В, и их оценки за последнюю сессию.
4. Составьте список учебной группы, включающей N человек. Для каждого учащегося укажите фамилию, имя, отчество, дату рождения, год поступления в ВУЗ, факультет, отделение, курс, группу. Информацию о каждом учащемся оформите в программе в виде записи. Совокупность записей объедините в файл. Составьте программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатать по выбору пользователя анкетные данные студентов нужного курса.
5. Составьте список учебной группы, включающей N человек. Для каждого учащегося укажите фамилию, имя, отчество, дату рождения, год поступления в ВУЗ, факультет, отделение, курс, группу. Информацию о каждом учащемся оформите в программе в виде записи. Совокупность записей объедините в файл. Составьте программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатайте по выбору пользователя анкетные данные студентов нужного факультета.
6. Составьте список учебной группы школы юного программиста, включающей N человек. Для каждого учащегося укажите фамилию, имя, отчество, название общеобразовательной школы, класс, год поступления в школу, количество сданных зачетов. Информацию о каждом учащемся оформите в программе в виде записи. Совокупность записей объединить в файл. Составьте программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатайте по выбору пользователя анкетные данные учащихся, сдавших нужное количество зачетов.
7. Составьте список учебной группы школы юного программиста, включающей N человек. Для каждого учащегося укажите фамилию, имя, название общеобразовательной школы, класс, количество сданных зачетов, оценку за итоговый экзамен. Информацию о каждом учащемся оформите в программе в виде записи. Совокупность записей объединить в файл. Составьте программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатайте анкетные данные учащихся, успешно сдавших экзамен.
8. Составьте список группы спортсменов, занимающихся легкой атлетикой, включающей N человек. Для каждого спортсмена укажите фамилию, имя, название общеобразовательной школы, класс, результаты по следующим дисциплинам:
- бег 100м,
- бег 3000м,
- прыжки в высоту,
- прыжки в длину,
- прыжки с шестом,
- метание ядра,
- метание копья,
- метание диска.
Информацию о каждом спортсмене оформить в программе в виде записи. Совокупность записей объединить в файл. Составить программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатать анкетные данные спортсменов, занявших 1 место по каждой дисциплине.
9. Составьте список группы спортсменов, участвовавших в соревнованиях по плаванию, включающей N человек. Для каждого пловца укажите фамилию, имя, название общеобразовательной школы, класс, результаты по следующим дисциплинам:
- кроль на груди,
- кроль на спине,
- баттерфляй,
- комплексное плавание.
Информацию о каждом спортсмене оформите в программе в виде записи. Совокупность записей объедините в файл. Составьте программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатайте анкетные данные спортсменов,
а) занявших 1 место по каждому стилю плавания;
б) показавших лучшее время по всем видам плавания,
в) не получивших ни одного призового места.
10. Составьте список группы спортсменов, участвовавших в соревнованиях по спортивной гимнастике, включающей N человек. Для каждого гимнаста указажите фамилию, имя, название общеобразовательной школы, класс, результаты по следующим видам:
- кольца,
- брусья,
- перекладина,
- вольные упражнения,
- прыжки на дорожке,
- прыжки через коня.
Информацию о каждом спортсмене оформить в программе в виде записи. Совокупность записей объединить в файл. Составьте программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатать анкетные данные спортсменов,
а) показавших лучший результат по каждому виду;
б) показавших лучший результат по всем видам многоборья,
в) не получивших ни одного призового места.
Задание. (на усмотрение учителя) Познакомившись с содержанием предыдущих задач придумайте свою интересную задачу и решите ее.
Дата добавления: 2015-05-16; просмотров: 864;