Разработать программу для работы с типизированным файлом. Программа должна сделать следующее:
При любых операциях содержимое как текстового, так и типизированного файла не должно записываться в массив. Для перестановки элементов типизированного файла необходимо использовать средства прямого доступа к файлу.
При перестановке найденного элемента в начало файла, элементы от первого до предшествующего найденному должны смещаться на одну позицию назад (к концу файла). При перестановке найденного элемента в конец файла, элементы от следующего после найденного до последнего должны смещаться на одну позицию вперёд (к началу файла). При перестановке найденного элемента в позицию после k-го элемента, элементы между найденным и k-м должны смещаться на одну позицию вперёд или назад в зависимости от взаимного расположения найденного и k-го элемента.
№ | Тип данных в файле | Диапазон | Условие | Позиция для перемещения |
---|---|---|---|---|
1. | целые числа | от -20 до +60 | первый элемент, кратный 5 | в конец файла |
2. | вещественные числа | от -19,9 до +59,9 | последний отрицательный элемент | в конец файла |
3. | символы | от а до я | первая гласная буква | в конец файла |
4. | целые числа | от -100 до +100 | последний чётный элемент | в начало файла |
5. | вещественные числа | от -99,9 до +99,9 | первый положительный элемент | в начало файла |
6. | символы | от A до Z | последний символ, больший D | в начало файла |
7. | целые числа | от -20 до +60 | последний элемент, больший 15 | после k-го элемента |
8. | вещественные числа | от -19,9 до +59,9 | последний элемент, больший 28,6 | после k-го элемента |
9. | символы | от #33 до #94 | первый знак препинания | после k-го элемента |
10. | целые числа | от -150 до +150 | последний элемент, модуль которого больше 100 | в конец файла |
11. | вещественные числа | от -19,9 до +19,9 | последний элемент, модуль которого больше 10 | в конец файла |
12. | символы | от А до Я | последний символ Д или Е | в конец файла |
13. | целые числа | от -15 до +25 | последний нечётный элемент | в начало файла |
14. | вещественные числа | от -39,9 до +9,9 | последний положительный элемент | в начало файла |
15. | символы | от a до z | последний символ b или r | в начало файла |
16. | целые числа | от -20 до +50 | первый элемент, попадающий в диапазон -10..+30 | после k-го элемента |
17. | вещественные числа | от -4,99 до +14,99 | первый элемент, попадающий в диапазон -1,5..+8,6 | после k-го элемента |
18. | символы | от a до z | последняя гласная буква | после k-го элемента |
19. | целые числа | от +10 до +1000 | последний элемент, кратный 3 | в конец файла |
20. | вещественные числа | от -4,9 до +1,9 | последний отрицательный элемент | в конец файла |
21. | символы | от #65 до #250 | первый символ кириллицы | в конец файла |
22. | целые числа | от -30 до +50 | первый элемент, больший 12 | в начало файла |
23. | вещественные числа | от -9,9 до +49,9 | первый элемент, больший 27,8 | в начало файла |
24. | символы | от А до Я | первый элемент, больший Ж | в начало файла |
25. | целые числа | от -100 до +100 | последний элемент, попадающий в диапазон -15..+43 | после k-го элемента |
26. | вещественные числа | от -99,9 до +99,9 | последний элемент, попадающий в диапазон -50,6..+71,2 | после k-го элемента |
27. | символы | от A до Z | последний элемент, попадающий в диапазон F..Q | после k-го элемента |
28. | целые числа | от -20 до +50 | первый нечётный элемент | в конец файла |
29. | вещественные числа | от -24,99 до +34,99 | последний элемент, модуль которого больше 7 | в конец файла |
30. | символы | от a до z | первый элемент, попадающий в диапазон d..n | в конец файла |
31. | целые числа | от -50 до +50 | последний чётный элемент | в начало файла |
32. | вещественные числа | от -9,9 до +9,9 | последний положительный элемент | в начало файла |
33. | символы | от A до Z | последний символ, меньший F | в начало файла |
34. | целые числа | от -10 до +90 | последний элемент, больший 15 | после k-го элемента |
35. | вещественные числа | от -59,9 до +89,9 | последний элемент, больший -15,8 | после k-го элемента |
36. | символы | от #65 до #126 | первый символ, отличный от буквы | после k-го элемента |