Презентация Операции для работы с файлами онлайн

На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Операции для работы с файлами абсолютно бесплатно. Урок-презентация на эту тему содержит всего 123 слайда. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » Операции для работы с файлами



Оцените!
Оцените презентацию от 1 до 5 баллов!
  • Тип файла:
    ppt / pptx (powerpoint)
  • Всего слайдов:
    123 слайда
  • Для класса:
    1,2,3,4,5,6,7,8,9,10,11
  • Размер файла:
    1.52 MB
  • Просмотров:
    171
  • Скачиваний:
    0
  • Автор:
    неизвестен



Слайды и текст к этой презентации:

№1 слайд
Содержание слайда:

№2 слайд
Тема Операции для работы с
Содержание слайда: Тема: Операции для работы с файлами План урока: Основные сведения о файлах. Виды файлов. Операции над файлами. Домашнее задание.

№3 слайд
Ранее мы рассматривали
Содержание слайда: Ранее мы рассматривали задачи, в которых во время выполнения программ данные поступали с клавиатуры, а результаты выводились на экран дисплея. Поэтому ни исходные данные, ни результаты не сохранялись. Всякий раз при выполнении одной и той же программы, особенно во время ее отладки, приходится заново вводить исходные данные. А если их очень много? В языке Qbasic и Turbo Pascal 7.0 есть возможность записать их на диск. Для этого необходимо оформить исходные данные и результаты в виде файлов, которые хранятся на диске точно так же, как и программа. Ранее мы рассматривали задачи, в которых во время выполнения программ данные поступали с клавиатуры, а результаты выводились на экран дисплея. Поэтому ни исходные данные, ни результаты не сохранялись. Всякий раз при выполнении одной и той же программы, особенно во время ее отладки, приходится заново вводить исходные данные. А если их очень много? В языке Qbasic и Turbo Pascal 7.0 есть возможность записать их на диск. Для этого необходимо оформить исходные данные и результаты в виде файлов, которые хранятся на диске точно так же, как и программа.

№4 слайд
У понятия файл есть две
Содержание слайда: У понятия файл есть две стороны. У понятия файл есть две стороны. С одной стороны, файл — это область памяти на внешнем носителе, в которой хранится некоторая информация. В него можно поместить данные или извлечь их оттуда. Файл в таком понимании называют физическим файлом, то есть существующим физически на некотором материальном носителе информации. С другой стороны, файл – это одна из многих структур данных, используемых в программировании. Файл в таком понимании называют логическим файлом, то есть существующим только в нашем логическом представлении при написании программы.

№5 слайд
Структура физического файла
Содержание слайда: Структура физического файла представляет собой простую последовательность байт памяти носителя информации – ЖМД или ГМД. Структура физического файла представляет собой простую последовательность байт памяти носителя информации – ЖМД или ГМД.

№6 слайд
Структура логического файла
Содержание слайда: Структура логического файла – это способ восприятия файла в программе. Образно говоря, это “шаблон” (“окно”), через который мы смотрим на физическую структуру файла. В языках программирования таким “шаблонам” соответствуют типы данных, допустимые в качестве компонент файлов. Например: Структура логического файла – это способ восприятия файла в программе. Образно говоря, это “шаблон” (“окно”), через который мы смотрим на физическую структуру файла. В языках программирования таким “шаблонам” соответствуют типы данных, допустимые в качестве компонент файлов. Например:

№7 слайд
FILE OF BYTE FILE OF BYTE
Содержание слайда: FILE OF BYTE FILE OF BYTE FILE OF CHAR FILE OF INTEGER

№8 слайд
Логическая структура файла в
Содержание слайда: Логическая структура файла в принципе очень похожа на структуру массива. Различия между массивом и файлом: Логическая структура файла в принципе очень похожа на структуру массива. Различия между массивом и файлом: У массива количество элементов фиксируется в момент распределения памяти, и он целиком располагается в оперативной памяти. Нумерация элементов массива выполняется соответственно нижней и верхней границам при его объявлении.

№9 слайд
Содержание слайда:

№10 слайд
КЛАССИФИКАЦИЯ ФАЙЛОВ Файлы
Содержание слайда: КЛАССИФИКАЦИЯ ФАЙЛОВ Файлы классифицируются по двум признакам: По методу доступа – последовательный, прямой доступ (Turbo Pascal 7.0, в Qbasic) По типу (логической структуре) (Turbo Pascal 7.0) – типизированные, текстовые, нетипизированные.

№11 слайд
Файл последовательного
Содержание слайда: Файл последовательного доступа можно сравнить с довольно длинной магнитофонной лентой в кассете, на которой записаны песни (или какая-то информация). Для того, чтобы найти конкретную песню, надо перемотать кассету на начало и прослушивать песню за песней до тех пор, пока не будет найдена нужная. Файл последовательного доступа можно сравнить с довольно длинной магнитофонной лентой в кассете, на которой записаны песни (или какая-то информация). Для того, чтобы найти конкретную песню, надо перемотать кассету на начало и прослушивать песню за песней до тех пор, пока не будет найдена нужная. Зачем нужны файлы? Дело в том, что количество элементов файла может быть любым: число компонент файла может изменяться (увеличиваться или уменьшаться), то есть заранее не фиксируется. Поэтому в нем можно хранить достаточно большое количество данных. После каждого элемента автоматически ставится признак конца элемента, а в конце файла ставится признак конца файла.

№12 слайд
Переменные файлового типа
Содержание слайда: Переменные файлового типа могут быть описаны в программе либо явно в разделе переменных Var, либо с использованием раздела типов Type. Переменные файлового типа могут быть описаны в программе либо явно в разделе переменных Var, либо с использованием раздела типов Type. Объявление файлов в разделе переменных имеет вид: Var <имя файла>: File Of <базовый тип элементов>; Например, Var Ft: File Of Integer; {файл целых данных} М: File Of Char; {файл символьных данных}

№13 слайд
Содержание слайда:

№14 слайд
ОПЕРАЦИИ НАД ФАЙЛАМИ В QBASIC
Содержание слайда: ОПЕРАЦИИ НАД ФАЙЛАМИ В QBASIC Любые действия с файлами, выполняемыми в программе, включают в себя следующие обязательные шаги: - открытие файла; - чтение и запись обрабатываемых данных; - закрытие файлов. Можно открыть несколько файлов одновременно, чтобы читать информацию из одного файла, обрабатывать ее и затем сохранять в другом. Но нельзя использовать открытый файл и для чтения, и для записи одновременно, потому что эти действия связаны с различными режимами открытия файла.

№15 слайд
Содержание слайда:

№16 слайд
ИМЯ ФАЙЛА ИМЯ ФАЙЛА Имя файла
Содержание слайда: ИМЯ ФАЙЛА ИМЯ ФАЙЛА Имя файла должно включать не только непосредственно название, но и наименование дискового устройства и директории, где находится или будет создан файл. Например "a:\fiele.bas" "c:\DOS\fiele.bas" "c:\DOS\QRUS\fiele.bas" Простейший способ работы с файлами - сделать текущей ту поддиректорию, в которой находятся интересующие нас файлы, а затем просто указывать их имена. В качестве параметра ФАЙЛ$ можно использовать переменную текстового типа, которой присвоено имя файла. Например: a$="имя файла" OPEN a$ FOR INPUT AS #1

№17 слайд
РЕЖИМЫ РАБОТЫ С ФАЙЛАМИ
Содержание слайда: РЕЖИМЫ РАБОТЫ С ФАЙЛАМИ РЕЖИМЫ РАБОТЫ С ФАЙЛАМИ Параметр «режим» определяет режим работы с файлом:. указывает, как вы собираетесь этот файл использовать: для чтения или записи в него информации. Этот параметр может иметь одно из следующих значений: OUTPUT - открывает новый файл для записи в него информации, (если вы открываете в этом режиме уже существующий файл, его содержимое будет стерто) APPEND - открывает существующий файл для добавления в него новой информации. В таком режиме новая информация всегда помещается в конец файла, после последней записи. Если Вы указали имя файла, которого еще не существует, то будет открыт новый файл, как это делается в режиме OUTPUT. INPUT - открывает существующий файл для чтения хранимой в нем информации.

№18 слайд
НОМЕР ФАЙЛА НОМЕР ФАЙЛА
Содержание слайда: НОМЕР ФАЙЛА НОМЕР ФАЙЛА Последний параметр в операторе OPEN присваивает открываемому файлу определенный номер для более удобного использования в программе, например: OPEN "имя" FOR OUTPUT AS #3 Этот оператор присваивает файлу номер 3. Теперь данный номер нельзя будет присвоить никакому другому файлу, пока то будет открыт. Номер файла - любое число от 1 до 255. Как много файлов можно открыть? Это зависит от операционной системы, в которой задается максимальное число одновременно открываемых файлов. Для избежания хаоса, не открывайте слишком много файлов одновременно. Закончили работу с файлом - закройте его. ЗАКРЫТИЕ ФАЙЛА Для закрытия файла используется простой оператор CLOSE [#номер файла] Если вы указываете номер файла, то будет закрыт именно этот файл. Оператор CLOSE без параметра закрывает все файлы, открытые в данный момент в программе.

№19 слайд
ОПЕРАЦИИ НАД ФАЙЛАМИ В TURBO
Содержание слайда: ОПЕРАЦИИ НАД ФАЙЛАМИ В TURBO PASCAL 7.0. 1. Связь переменной файлового типа с конкретным внешним файлом В Turbo Pascal 7.0 файл - некоторая переменная, как и любая другая переменная, поэтому ему можно присвоить имя. С другой стороны, существует операционная система, которая в свою очередь использует имена файлов, например А: ММ.Dat, В: Test.Pas. Для установления связи между переменной-файлом в Turbo Pascal 7.0 и именем файла, присваиваемого операционной системой, имеется стандартная процедура Assign. Общий вид: Assign(<uмя переменной-файла>,'<имя внешнего файла>'); Процедура устанавливает соответствие между файловой переменной и внешним файлом. Например, Assign(F1,'a:int.dat'); Такое соответствие обозначает, что все операции, выполняемые над переменной F1, будут выполняться над файлом, хранящимся на диске А и имеющим имя 'Int.dat'.

№20 слайд
. Открытие, чтение, запись .
Содержание слайда: 2. Открытие, чтение, запись 2. Открытие, чтение, запись Перед выполнением каких-либо операций чтения и записи в файлах, эти файлы должны быть открыты. Открытие файлов выполняется процедурами RESET(f) и REWRITЕ(f), а закрытие – процедурой CLOSE(f). Процедура RESET(f) открывает существующий физический файл, который был связан с файловой переменной f. Если f – текстовый файл, то он доступен только для чтения при последовательном доступе к элементам. Если f – типизированный файл, то он будет открыт и для чтения, и для записи как при последовательном доступе, так и при прямом. При открытии указатель текущей позиции файла устанавливается в его начало. Процедура REWRITЕ(f) создает новый физический файл, имя которого связано с файловой переменной f. Если такой файл уже существует, то он удаляется, и на этом месте создается новый пустой файл. При открытии указатель текущей позиции в файле устанавливается в его начало.

№21 слайд
ОПЕРАЦИИ НАД ФАЙЛАМИ В TURBO
Содержание слайда: ОПЕРАЦИИ НАД ФАЙЛАМИ В TURBO PASCAL 7.0. Под чтением файла понимается ввод данных из внешнего файла, находящегося на диске, в оперативную память машины. Данные внешнего файла становятся доступными программе. Чтение из типизированных файлов выполняется только процедурой READ (<имя переменной-файла>, <элемент>), а запись только процедурой WRITЕ(<имя переменной-файла>, <элемент >). Элемент должен быть того же типа, что и компоненты файла. Выполняя запись в файл следует помнить, что при записи каждой переменной указатель текущей позиции в файле, так же как и при чтении, перемещается на следующий элемент, если указатель текущей позиции файла находится за последним элементом, то есть в конце файла, то при выполнении процедуры WRITE файл расширяется.

№22 слайд
Содержание слайда:

№23 слайд
Признак конца файла . Так
Содержание слайда: Признак конца файла 4. Так как, по определению, число элементов файла не задается заранее, то в языке Turbo Pascal 7.0 введен признак конца файла. Это логическая функция: ЕОF(<имя переменной-файла>). Она используется для определения, достигнут ли конец файла или еще нет (принимает истинное значение (TRUE), если достигнут конец файла, и ложное (FALSE) — в противном случае). Для определения конца файла используется оператор цикла, например, (пока не достигнут конец файла...): While Not ЕОF(<имя переменной-файла>) Do...

№24 слайд
Содержание слайда:

№25 слайд
Текстовые файлы Текстовые
Содержание слайда: Текстовые файлы Текстовые файлы — это файлы, содержащие символы, разделенные на строки. Причем в конце каждой строки стоит признак конца строки. Для их описания используется служебное слово Text. Var A: Text. Надо заметить, что этот тип не равен типу File Of Char, который является типизированным. Отличия текстовых файлов от типизированных: 1. Элементами этих переменных являются символы, и они имеют строковую структуру. 2. При чтении и записи числа преобразуются автоматически. 3. Текстовые файлы не имеют прямого доступа. 4. Наличия признаков конца строки. 5. К ним применима процедура Аррепd (<имя переменной текстового файла>). Она открывает внешний файл, с которым связана данная переменная, текущий указатель помещает в конец для добавления новой информации

№26 слайд
Нетипизированные файлы При
Содержание слайда: Нетипизированные файлы При объявлении нетипизированного файла указывается только ключевое слово, например: Var f:file Нетипизированные файловые переменные предназначены для низкоуровневой работы с файлами. С их помощью можно обратиться к файлу любого типа и логической структуры. Необходимо только учитывать, что нетипизированные файлы не имеет жестко установленной единицы чтения/записи, как типизированные файлы.

№27 слайд
Содержание слайда:

№28 слайд
Обработка текстовых файлов
Содержание слайда: Обработка текстовых файлов Для текстовых файлов применимы те же процедуры и функции, что и для обычных файлов. Сначала они должны быть связаны с конкретным внешним файлом при помощи процедуры Assign. Затем они могут быть открыты для чтения процедурой ReSet или для записи процедурой ReWrite. Кроме этих процедур так же применяется процедура Read, которая считывает очередной элемент строки, но если необходимо прочитать и перейти на следующую строку, то применяется процедура Readln (<имя переменной текстового файла>,<элемент>). Если просто перейти к следующей строке, то используется процедура Readln (<имя переменной текстового файла>), которая переносит текущий указатель на первый элемент следующей строки.

№29 слайд
Содержание слайда:

№30 слайд
program fil program fil uses
Содержание слайда: program fil86; program fil86; uses crt; var f:file of integer; DEFINT M-N,I,S n,m,i,S:integer; DEFSTR A a:string begin CLS clrscr; A=”D:\UROKI\F86.TXT” a:= 'd:\uroki\f86.txt' Открываем файл А для записи Связываем переменную f с как 2. внешним файлом и открываем файл для записи. OPEN A FOR OUTPUT AS #2 assign(f,a); rewrite(f); RANDOMIZE TIMER randomize; Вводим с клавиатуры N – число элементов в файле. INPUT”N=”:N write('n=');readln(n); FOR I=1 TO N for i:=1 to n do begin

№31 слайд
Содержание слайда:

№32 слайд
Продолжение программы
Содержание слайда: Продолжение программы

№33 слайд
Домашнее задание Ответить на
Содержание слайда: Домашнее задание Ответить на вопросы. 1. Формат открытия файла 2. Какие операции возможны над файлами последовательного доступа. 3. Роль оператора CLOSE? 4. Что показывает функция EOF? 5. В чем различие между структурой логического и структурой физического файла. 6. В чем сходство и различие между массивом и файлом?

№34 слайд
Содержание слайда:

№35 слайд
Тема Операции для работы с
Содержание слайда: Тема: Операции для работы с файлами. План урока: Проверка домашнего задания. Заполнение файлов Чтение из файлов. Нахождение максимальных элементов. Домашнее задание.

№36 слайд
Проверка домашнего задания
Содержание слайда: Проверка домашнего задания Ответить на вопросы. 1. Формат открытия файла. 2. Какие операции возможны над файлами последовательного доступа. 3. Роль оператора CLOSE? 4. Что показывает функция EOF? 5. В чем различие между структурой логического и структурой физического файла. 6. В чем сходство и различие между массивом и файлом?

№37 слайд
Создать файл, элементы
Содержание слайда: Создать файл, элементы которого вычисляются по формуле m:=i*i+4*i; i=1..N Определить число элементов файла, делящихся на 4. program fil87; uses crt; var f:file of integer; DEFINT N,M,I,K n,m,i,k:integer; DEFSTR A a:string; begin CLS clrscr; A=”D:\UROKI\file\FIL87.TXT a:='d:\uroki\fiele\fil87.txt';

№38 слайд
Содержание слайда:

№39 слайд
Продолжение программы
Содержание слайда: Продолжение программы Открываем файл А для чтения Связываем переменную f с как 1 внешним файлом и открываем файл для чтения OPEN A FOR INPUT AS #1 assign(f,a);reset(f); Пока не достигнут конец файла. WHILE NOT EOF(1) while not eof(f) do Begin Считываем очередное число. INPUT #1, M read(f,m); Проверяем его на кратность 4 и считаем их количество. IF M MOD 4 =0 THEN K=K+1 if m mod 4 =0 then k:=k+1; Выводим его на печать PRINT M;” “; write(m,' '); WEND end; CLOSE close(f); Печатаем число элементов кратных 4. PRINT”K=”;K writeln('кратных четырем =',k); readln; END end.

№40 слайд
Самостоятельно решите
Содержание слайда: Самостоятельно решите следующие задания: А) определить число четных элементов в файле; Б) определить число нечетных элементов в файле; В) определить число элементов в файле, которые больше 32; Г) определить число элементов в файле, которые меньше 32.

№41 слайд
Создать файл F, элементы
Содержание слайда: Создать файл F, элементы которого вычисляются по формуле m:=3*i*i-2*i+6. Получить два новых файла G, H, в один из них поместить четные элементы файла F, в другой нечетные. Убедитесь, что у вас это получилось. program fil88; uses crt; var f:file of integer; fg:file of integer; fh:file of integer; DEFINT M-N,I,K n,m,i,k:integer; DEFSTR A,G,H a,g,h:string; begin CLS clrscr; A=”FIL88.DAN” a:='fil88.dan';

№42 слайд
Содержание слайда:

№43 слайд
G FIL G.DAN g fil g.dan G FIL
Содержание слайда: G=”FIL88G.DAN” g:='fil88g.dan'; G=”FIL88G.DAN” g:='fil88g.dan'; H=”FIL88H.DAN” h:='fil88h.dan'; Открываем файлы G, H Связываем переменные для записи как 2,3 fg и fh с внешним файлом и открываем файлы для записи. OPEN G FOR OUTPUT AS #2 assign(fg,g); rewrite(fg); OPEN H FOR OUTPUT AS#3 assign(fh,h); rewrite(fh); Открываем файл А для чтения Связываем переменную f как 1. с внешним файлом и открываем файл для чтения OPEN A FOR INPUT AS #1 assign(f,a);reset(f);

№44 слайд
Содержание слайда:

№45 слайд
Открываем файл G для чтения
Содержание слайда: Открываем файл G для чтения Связываем переменную как 2. fg с внешним файлом G Открываем файл G для чтения Связываем переменную как 2. fg с внешним файлом G и открываем файл для чтения OPEN G FOR INPUT AS #2 assign(fg,g);reset(fg); WHILE NOT EOF(2) while not eof(fg) do Begin Считываем очередное число и выводим на экран. INPUT #2,N read(fg,n); PRINT N;” “; write(n,' '); NEXT end; CLOSE close(fg); PRINT writeln;

№46 слайд
Содержание слайда:

№47 слайд
В предыдущем примере, среди
Содержание слайда: В предыдущем примере, среди нечетных элементов в файле Н, найдите наибольший. Так как мы определили тип элементов в файлах как INTEGER, следовательно наименьшее значение, которое может находиться в файлах это - 32768. Зададим начальное значение МАХ =-32768 перед считыванием из файла Н и сравнивая с каждым элементом найдем максимальное значение. Самостоятельно в предыдущую программу добавьте строки: DEFINT MAX max:integer; МАХ =-32768 max:=-32768; IF MAX<= N THEN MAX=N if max<=N then max:=n; PRINT”MAX=”;MAX writeln(‘max=’,max);

№48 слайд
Домашнее задание. Найдите
Содержание слайда: Домашнее задание. Найдите первый (последний) максимальный элемент, среди элементов кратных трем.

№49 слайд
Содержание слайда:

№50 слайд
Тема языки программирования
Содержание слайда: Тема: языки программирования Qbasic и Turbo Pascal 7.0. Операции для работы с файлами. План урока: Проверка домашнего задания. Использование процедур и файлов. Домашнее задание.

№51 слайд
Проверка домашнего задания.
Содержание слайда: Проверка домашнего задания. Найдите первый (последний) максимальный элемент, среди элементов кратных трем. Самостоятельно в предыдущую программу добавьте строки: DEFINT MAX max:integer; МАХ =-32768 МАХ:=-32768; IF MAX< N AND N MOD 3 =0 if (max<N) and THEN MAX=N (n mod 3 =0 then max:=n; PRINT”MAX=”;MAX writeln(‘max=’,max);

№52 слайд
Напишите программу, которая
Содержание слайда: Напишите программу, которая обрабатывает файл, содержащий имена друзей, их адреса, номера телефонов и другую дополнительную информацию. Программа должна предоставить пользователю следующие возможности: - создание файла, содержащего эту информацию. - просмотр всей информации, содержащейся в файле - поиск информации об отдельных людях - добавление в файл новых данных - уничтожение записей изменение информации Все эти действия независимы друг от друга и могут быть оформлены в виде отдельных подпрограмм (процедур). Выбор режима работы, т.е. вызов конкретной процедуры, оставим в основной программе.

№53 слайд
Составим процедуру создания
Содержание слайда: Составим процедуру создания файла, содержащего информацию. SUB REWRITE (A AS STRING) procedure rewrit(a:string); DEFSTR A,D,I,T,W var w, im, adr, tel, dop:string; ‘ begin Открываем файл А для записи. Связываем переменную f с как 2 внешним файлом и открываем файл для записи. OPEN A FOR OUTPUT AS #2 assign(f,a);rewrite(f); DO repeat INPUT” Для выхода введите 0”;W write('Для выхода введите 0 ');readln(w); IF W=”0” THEN EXIT DO if w='0' then break;

№54 слайд
Содержание слайда:

№55 слайд
Составим процедуру считывания
Содержание слайда: Составим процедуру считывания информации из файла. SUB PRINTT (A AS STRING) procedure print(a:string); DEFSTR A,D,I,T var im,adr,tel, dop:string; begin Открываем файл А Связываем переменную f для чтения как 2. с внешним файлом и открываем файл для чтения. OPEN A FOR INPUT AS #2 assign(f,a);reset(f); WHILE NOT EOF(2) while not eof(f) do Begin

№56 слайд
Содержание слайда:

№57 слайд
Составим процедуру поиска
Содержание слайда: Составим процедуру поиска информации об отдельных людях SUB POISK(A AS STRING) procedure poisk(a:string); DEFSTR A,D,F,I,P,T var p,im,adr,tel, dop, fl:string; label 40; begin Открываем файл А Связываем переменную f для чтения как 2. с внешним файлом и открываем файл для чтения. 40 OPEN A FOR INPUT AS #2 40: assign(f,a);reset(f); INPUT” Введите имя ”;P write('Введите имя ');readln(p); WHILE NOT EOF(2) while not eof (f) do begin INPUT#2,IM,ADR,TEL,DOP read(f,im,adr,tel,dop);

№58 слайд
Содержание слайда:

№59 слайд
Составим процедуру добавление
Содержание слайда: Составим процедуру добавление в файл новых данных SUB APP(A AS STRING) procedure app(a:string); DEFSTR A,D,I,T,W var im,adr,tel, dop,w:string; begin Открываем файл А для добавления Связываем переменную f как 2. с внешним файлом и открываем файл для записи. Почему использовали reset а не append. OPEN A FOR APPEND AS #2 assign(f,a);reset(f); {Устанавливаем указатель на конец файла} while not eof(f) do read(f,im,adr,tel,dop); DO repeat

№60 слайд
Содержание слайда:

№61 слайд
Содержание слайда:

№62 слайд
Составить процедуру
Содержание слайда: Составить процедуру уничтожение отдельных записей. SUB DEL(A AS STRING) procedure del(a:string); DEFSTR A-B,D,I,T var b, im,adr,tel, dop:string; DEFINT C,K c,k:integer; label 20; label30; begin В файл В будем записывать оставшуюся информацию. Можно было бы записать и в старый файл (смотри следующий пример). Мы это сделали только для демонстрации такого подхода. B=”FIL90B.TXT” b:='fil90b.txt'; 20: 20:

№63 слайд
Содержание слайда:

№64 слайд
Продолжение программы INPUT
Содержание слайда: Продолжение программы 30: 30: INPUT”номер удаляемой записи ”;C write('номер удаляемой записи'); readln(c); IF C<0 THEN PRINT”C<0”:GOTO if c<0 then begin write 30 ('C <0 ');goto 30;end; IF C=0 THEN if c=0 then CLOSE:CALL PRINTT(A):GOTO 20 begin close(f); print(a); goto 20; END IF end; K=1 k:=1; WHILE NOT EOF(2) while not eof(f) do begin

№65 слайд
Содержание слайда:

№66 слайд
Составить процедуру изменения
Содержание слайда: Составить процедуру изменения информации в файле. SUB RED(A AS STRING) procedure red(a:string); DIM IM(15) AS STRING Type massiv=array[1..15] of string; DIM ADR(15) AS STRING Var im, adr, tel, dop: massiv; DIM TEL(15) AS STRING c,i:integer; DIM DOP(15) AS STRING fl:string DEFINT C,I label 50; DEFSTR F begin OPEN A FOR INPUT AS #2 assign(f,a);reset(f); C=1 c:=1; WHILE NOT EOF(2) while not eof(f) do begin

№67 слайд
Содержание слайда:

№68 слайд
Продолжение программы INPUT
Содержание слайда: Продолжение программы INPUT”Введите новое имя ”;FL write('Введите новое имя '); readln(fl); IF FL<>”” THEN IM(C)=FL if fl<>'' then im[c]:=fl; INPUT” Введите новый адрес ”;FL write('Введите новый адрес'); readln(fl); IF FL<>”” THEN ADR(C)=FL if fl<>'' then adr[c]:=fl; INPUT”новый номер телефона ”;FL write(' новый номер телефона '); readln(fl); IF FL<>”” THEN TEL(C)=FL if fl<>'' then tel[c]:=fl; INPUT”Новая доп write('Новая доп информация”;FL информация '); readln(fl); IF FL<>”” THEN DOP(C)=FL if fl<>'' then dop[c]:=fl;

№69 слайд
Содержание слайда:

№70 слайд
Основная программа примера
Содержание слайда: Основная программа примера Место декларации процедур program fil90; uses crt; DEFSTR A,F var a, fl, flag:string; f:file of string; f1:file of string; begin CLS clrscr; A=”FIL90,TXT” ‘A=”FIL90B.TXT” a:='fil90.txt'; {a:='fil90b.txt';} DO repeat INPUT “Продолжим Y/N-выход ”; write('Продолжим Y/N-выход ?'); FLAG readln(flag); IF UCASE(FLAG)<>”N” THEN if (upcase(flag[1])<>'N') then EXIT DO exit;

№71 слайд
Содержание слайда:

№72 слайд
Продолжение программы. INPUT
Содержание слайда: Продолжение программы. INPUT”Удаление информации write('Удаление информации Y/N ?”;fl Y/N ? '); readln(fl); IF UCASE(FL)=”Y” THEN if (upcase(fl[1])='Y') then del(a); CALL DEL(A) INPUT” Поиск информации write('Поиск информации Y/N ?”;FL Y/N ? '); readln(fl); IF UCASE(FL)=”Y” THEN if (upcase(fl[1])='Y') then poisk(a); CALL POISK(A) INPUT “ Редактирование write('Редактирование информации информации Y/N ?”;FL Y/N?'); readln(fl); IF UCASE(FL)=”Y” THEN if (upcase(fl[1])='Y') then red(a); CALL RED(A) LOOP UNTIL UCASE(FLAG)=”N” until (upcase(flag[1])='N'); END end.

№73 слайд
Содержание слайда:

№74 слайд
Тема Операции для работы с
Содержание слайда: Тема: Операции для работы с файлами

№75 слайд
Проверка домашнего задания. А
Содержание слайда: Проверка домашнего задания. А) Как можно уничтожить отдельные записи в файле? Записать в новый или старый файл всю информацию, кроме уничтожаемой. Б) Как изменить информацию в файле? Считать информацию в массив, изменить информацию и записать элементы массива в старый или новый файл В) Как производиться поиск информации в файле? Считываем информацию из файла и сравниваем считанную запись (часть записи) с данной информацией.

№76 слайд
Qbasic. Файлы с произвольным
Содержание слайда: Qbasic. Файлы с произвольным доступом Файлы с произвольным доступом состоят из записей, доступ к которым может быть осуществлен в любой последовательности. Данные хранятся точно в таком виде, в котором они представляются в памяти, обеспечивая, таким образом экономию времени при обработке (поскольку не требуется никакого преобразования), как при записи в файл, так и при чтении из него. Файлы с произвольным доступом - лучшее решение задачи организации базы данных, чем последовательные файлы, хотя и они не свободны от недостатков. Одним из них является то, что файлы с произвольным доступом не являются особо переносимыми. Вы не можете проникнуть внутрь них с помощью редактора или распечатать их в осмысленном виде на экране. Действительно, перенесение файла с произвольным доступом, созданного в Qbasic, на другой компьютер или язык, возможно, потребует того, чтобы вы написали программу-транслятор для чтения информации из файла с произвольным доступом и вывода ее в текстовый (последовательный) файл.

№77 слайд
Ниже перечислены операторы и
Содержание слайда: Ниже перечислены операторы и функции Qbasic, которые управляют чтением и записью в файлы с произвольным доступом: Ниже перечислены операторы и функции Qbasic, которые управляют чтением и записью в файлы с произвольным доступом: _____________________________________________________ Оператор/Функция Действие _____________________________________________________ CLOSE Закрывает файл. FIELD Определяет переменные поля. GET Считывает запись. LOC Определяет номер последней считанной записи. LSET, RSET Присваивают значения переменным поля. MKI$, MKL$, MKS$, MKD$ Преобразуют числа заданного типа в формат, в котором они могут быть присвоены переменным поля. CVI, CVD, CVS Специальные функции преобразования из символьной форме в числовую при считывание с диска OPEN Открывает файл с произвольным доступом. PUT Записывает запись в файл. _____________________________________________________

№78 слайд
Содержание слайда:

№79 слайд
Последовательность шагов по
Содержание слайда: Последовательность шагов по созданию, записи и чтению файлов с произвольным доступом 1. Открыть файл оператором OPEN и задать длину каждой записи. OPEN имя файла FOR RANDOM AS #№% LEN = длина Параметр LEN показывает для Qbasic, что это файл с произвольным доступом. В отличие от последовательных файлов, в данном случае не надо объявлять, открываете ли вы файл для ввода или для вывода, т.к. в файл с произвольным доступом вы можете одновременно и писать и читать. 2. Выполнить оператор FIELD, чтобы определить соответствие между рядом символьных переменных (после выполнения этого оператора они становятся "переменными полей") и "буфером файла".

№80 слайд
FIELD имя файла, ширина AS
Содержание слайда: FIELD имя файла, ширина AS симв-пер [ширина AS симв-пер]... FIELD имя файла, ширина AS симв-пер [ширина AS симв-пер]... Этот буфер является приемником для данных, записываемых или считываемых из данного конкретного файла. Оператор FIELD должен быть выполнен по крайней мере один раз для данного файла с произвольным доступом. 3. Чтобы записать запись в файл, используйте операторы LSET и RSET для загрузки переменных полей с данными, которые должны быть записаны. Числа должны быть преобразованы в символьную форму посредством соответствующей функции (например, MKS$ для обычной точности), а потом уже могут быть использованы операторы LSET и RSET. Наконец, используйте оператор PUT, чтобы записать запись в файл на место, которое вы укажете.

№81 слайд
Содержание слайда:

№82 слайд
СВОДНАЯ ТАБЛИЦА ОПИСАНИЯ
Содержание слайда: СВОДНАЯ ТАБЛИЦА ОПИСАНИЯ ТИПОВ ДАННЫХ

№83 слайд
Покажем несколько программ,
Содержание слайда: Покажем несколько программ, использующей файлы с произвольным доступом. Покажем несколько программ, использующей файлы с произвольным доступом. В Turbo Pascal 7.0 все файлы, кроме текстового, могут рассматриваться как файлы с произвольном доступом. Установка указателя позиции. SEEK #1, N Seek(F1,N) Процедура Seek устанавливает текущий указатель на N-й элемент. Qbasic N >0 Turbo Pascal 7.0 N>=0 Определение номера элемента, элемента, на который "смотрит" текущий указатель. LOC(Номер файла) FilePos(<имя переменной-файла>)

№84 слайд
Содержание слайда:

№85 слайд
Создайте файл прямого
Содержание слайда: Создайте файл прямого доступа, элементами которого являются целые случайные числа в диапазоне от -35 до 30. Число элементов в файле нечетно. Установив указатель позиции на первый, средний и последний элемент считайте данные из файла и найдите их сумму. program fil97; uses crt; var f:file of integer; DEFINT I, M-N,S s,n,m,i:integer; DEFSTR A a:string; begin CLS clrscr; A=”d:\fil97.txt” a:= 'd:\fil97.txt';

№86 слайд
Содержание слайда:

№87 слайд
Продолжение программы
Содержание слайда: Продолжение программы Открываем файлы произвольного доступа. FOR A FOR RANDOM assign(f,a);reset(f); AS #1 LEN=2 MAX=LOF(1)\2 PRINT”число записей =”; writeln('число записей=', MAX filesize(f)); Считываем из файла первый элемент и суммируем значения. SEEK#1,1:GET#1 seek(f,0);read(f,n); ,,N:PRINT N:S=S+N write(n:4);s:=s+n; Считываем из файла средний элемент и суммируем значения. SEEK#1,MAX\2+1:GET#1, seek(f, filesize(f) div , N: PRINT N:S=S+N 2);read(f,n);write(n:4); s:=s+n;

№88 слайд
Содержание слайда:

№89 слайд
Создать файл элементами
Содержание слайда: Создать файл элементами которого являются целые случайные числа. Упорядочить по убыванию, возрастанию элементы файла. program fil98; uses crt; var f:file of integer; DEFINT I-J,M-N,X-Y n,m,i,j,x,y:integer; DEFSTR A a:string; begin CLS clrscr; A=”FIL98.DAN” a:='fil98.dan';

№90 слайд
Содержание слайда:

№91 слайд
Считываем данные из файла.
Содержание слайда: Считываем данные из файла. Считываем данные из файла. OPEN A FOR RANDOM AS #1 LEN=2 assign(f,a);reset(f); Определяем число записей в файле. MAX=LOF(1)\2 PRINT”число записей =”;MAX writeln('число записей=', filesize(f)); FOR I=1 TO MAX for i:=1 to filesize(f) do begin GET#1, I, N Read(f,n); PRINT N;” “; write(n,' '); NEXT end; CLOSE close(f); OPEN A FOR RANDOM AS #1 LEN=2 reset(f); FOR I=MAX TO 1 STEP-1 for i:=filesize(f)-1 downto 1 do FOR J=1 TO I-1 for j:=0 to i-1 do begin

№92 слайд
Содержание слайда:

№93 слайд
Открываем файл и считываем
Содержание слайда: Открываем файл и считываем данные из файла. Открываем файл и считываем данные из файла. OPEN A FOR RANDOM AS #1 LEN=2 reset(f); MAX=LOF(1)\2 writeln('размер=',filesize(f)); FOR I=1 TO MAX for i:=1 to filesize(f) do begin GET#1,I, X read(f,x); PRINT X;” “; write(x,' '); NEXT end; CLOSE #1 close(f); readln; END end. Домашнее задание. 1. Назовите типы переменных. 2. Способ описания переменных. 3. Что производит процедура Seek в файлах прямого доступа? 4. Как объявляется нетипизированный файл? 5. В чем отличие типизированного файла от нетипизированного?

№94 слайд
Содержание слайда:

№95 слайд
Проверка домашнего задания
Содержание слайда: Проверка домашнего задания План урока: 1. Проверка домашнего задания. 2. Файлы с произвольным доступом. 3. Упорядочение элементов файлов. 4. Домашнее задание.

№96 слайд
Текстовые файлы Текстовые
Содержание слайда: Текстовые файлы Текстовые файлы — это файлы, содержащие символы, разделенные на строки. Причем в конце каждой строки стоит признак конца строки. Для их описания используется служебное слово Text. Var A: Text. Так как в Qbasic нет полной аналогии текстовым файлам в Turbo Pascal 7.0, то в данной задаче мы воспользуемся файлами последовательного доступа. Затем в каждой строке найдем количество пробелов и определим число элементов в каждой строке.

№97 слайд
Создать текстовый файл,
Содержание слайда: Создать текстовый файл, содержащий только целые числа, в каждой строке может быть несколько чисел, которые разделяются пробелами. Вывести на экран все числа с учетом разбиения на строки и подсчитать количество элементов в каждой строке. Пусть в файле содержится следующая информация: 1 2 3 4 5 6 7 -1 -2 -3 -4 -1 -2 Этот файл можно создать: 1. В среде Qbasic или в Turbo Pascal таким образом: - создайте новый файл (команда New меню File); - записать все числа в строках через пробелы; - сохранить его, например, “d:\fil99.txt” или 'd: fil99.txt'. 2. Или составить программу для создания текстового файлаю Мы создадим в Turbo Pascal 7.0 первым способом, а в Qbasic пойдем вторым путем.

№98 слайд
FIL .TXTprogram fil FIL
Содержание слайда: FIL99.TXT program fil99; FIL99.TXT program fil99; CONST N=3 const n=3; uses crt; DEFSTR A, M var a,m;string; DEFINT I, K, X i,k,x:integer; F:text; begin CLS clrscr; A = "d:\fil99.txt" a = "d:\fil99.txt" Открываем файл А последовательного доступа для записи как 1. OPEN A FOR OUTPUT AS #1 DO LINE INPUT "Введите строку="; m IF UCASE$(m) = "N" THEN EXIT DO Записываем в файл данные. PRINT #1, m LOOP UNTIL UCASE$(m) = "N" Закрываем файл CLOSE #1 PRINT Теперь этот текстовый файл будем использовать в программе.

№99 слайд
Открываем файл А для чтения
Содержание слайда: Открываем файл А для чтения как 1 Связываем с внешним файлом, открываем для чтения Открываем файл А для чтения как 1 Связываем с внешним файлом, открываем для чтения OPEN A FOR INPUT AS #1 Assign(F, 'a: int1.dan'); Reset(F); Пока не конец файла WHILE NOT EOF(1) While Not Eof(F) Do Begin Начальное количество элементов строки K=0 k:=0; Считываем всю строку пока не конец строки LINE INPUT #1, М While Not Eoln(F) Do begin

№100 слайд
Содержание слайда:

№101 слайд
Структурированный тип данных,
Содержание слайда: Структурированный тип данных, так называемые записи (RECORD), позволяющие хранить вместе переменные, имеющие различные типы данных. Структурированный тип данных, так называемые записи (RECORD), позволяющие хранить вместе переменные, имеющие различные типы данных. Тип данных RECORD представляет программисту возможность объединить в одну связную структуру различные по типу и смыслу элементы (поля). В качестве примера можно привести запись представляющую информацию о работнике: его табельный номер, фамилию и тарифную ставку. Определим тип данных RECORD с помощью оператора TYPE TYPE RABOTNIK TYPE rabotnik=record TABNOMER AS INTEGER Tabnomer:integer; FAMILY AS STRING*15 Family:strind[22]; STAWKA AS SINGLE Stawka:real; END TYPE End; DIM R AS RABOTNIK Var R: rabotnik Запись занимает в памяти столько байт, сколько занимают в сумме каждый из составляющих его элементов. У нас 2+15+4=19 Обращение к полям записи выполняется с помощью указания имени всей записи и имени отдельного поля, причем они должны быть разделены точкой. Например: R.TABNOMER или R.stawka Для сокращения длины идентификаторов в Turbo Pascal 7.0 обеспечивает оператор WITH … DO

№102 слайд
Дан список данных о группе
Содержание слайда: Дан список данных о группе баскетболистов с указанием имени, роста, числа забитых мячей. Создайте файл, содержащий информацию о баскетболистах. Проверьте, что вам это удалось. Определите число записей в файле. ‘FIL100 program fil100; uses crt; CONST N=3 const n=3; TYPE BASK type bask=record IM AS STRING*50 im : string[50]; ROST AS STRING rost : real; GOL AS INTEGER gol : integer; END TYPE end; DIM B(N) AS BASK var b:array [1..n] of bask; f:file of bask; DEFINT I,R i,R:integer; DEFSTR A a:string; DEFSNG S s,s1:single; begin CLS clrscr; A=”D:\F100.DAT” a:='d:\f100.dat'; Открываем файл произвольного доступа. OPEN A FOR RANDOM AS #1 LEN=LEN(B(N)) assign(f,a);rewrite(f);

№103 слайд
FOR I TO N for i to n do
Содержание слайда: FOR I=1 TO N for i:=1 to n do Begin FOR I=1 TO N for i:=1 to n do Begin Вводим данные о баскетболистах с клавиатуры. INPUT”Введите имя “;B(I).IM write(' Введите имя '); readln(b[i].im); INPUT”Введите рост”;B(I).ROST write(' Введите рост '); readln(b[i].rost); INPUT” Введите число голов”;B(I).GOL write(' Введите число голов '); readln(b[i].gol); Записываем в файл данные. PUT #1,I, B(I) write(f,b[i]); NEXT end; CLOSE(1) close(f); PRINT writeln; Открываем файл произвольного доступа. OPEN A FOR RANDOM AS #1 assign(f,'d:\f100.dat'); reset(f); LEN=LEN(B(N)) Определяем число записей в файле. R= LOF(1)\LEN(B(N)) r:=filesize(f)); PRINT”Число записей “;R writeln('Число записей=',r;

№104 слайд
FOR I TO Rfor i to r do Begin
Содержание слайда: FOR I=1 TO R for i:= 1 to r do Begin FOR I=1 TO R for i:= 1 to r do Begin Считываем из файла. GET#1,I,B(I) read(f,b[i]); PRINT I,B(I).IM,B(I),ROST,B(I),GOL write(b[i].im,' ',b[i].rost:5:2,' ',b[i].gol); Находим сумму. S=S+B(I).ROST:S1=S1+B(I).GOL s:=s+b[i].rost;s1:=s1+b[i].gol; PRINT writeln; NEXT end; CLOSE(1) close(f); PRINT”SR ROST=”;USING”##.##”;S/R writeln('sr rost=',s/r:5:2) PRINT” SR GOL=”;USING”##.##”; writeln(' sr gol=',s1/r:5:2); S1/R readln; END end.

№105 слайд
Домашнее задание. Что
Содержание слайда: Домашнее задание. Что показывает функция EOF? Каков результат действия операторов PUT, GET ? Что производит процедура Seek в файлах прямого доступа? В чем сходство и различие между массивом и файлом?

№106 слайд
Контрольная работа. Вариант .
Содержание слайда: Контрольная работа. Вариант 1. 1. Дан файл F, компоненты которого являются действительными числами. Найти сумму компонент файла. 2. Дан файл F, компоненты которого являются действительными числами. Найти наибольшее из значений компонент с нечетными номерами. 3. Даны символьный файлы F и G. Записать в файл Н все начальные совпадающие компоненты файлов F и G. Вариант 2. 1. Дан файл F, компоненты которого являются действительными числами. Найти произведение компонент файла; 2. Дан файл F, компоненты которого являются действительными числами. Найти наименьшее из значений компонент с четными номерами. 3. Дан символьный файл F. Записать в файл Н с сохранением порядка следования те символы файла F, которым в этом файле предшествует буква "а".

№107 слайд
Контрольная работа Вариант .
Содержание слайда: Контрольная работа Вариант 3. 1. Дан файл F, компоненты которого являются действительными числами. Найти сумму квадратов компонент файла; 2. Дан файл F, компоненты которого являются действительными числами. Найти сумму наибольшего и наименьшего из значений компонент. 3. Дан символьный файл F. Записать в файл Н с сохранением порядка следования те символы файла F вслед за которым в этом файле идет буква "а". Вариант 4. 1. Дан файл F, компоненты которого являются действительными числами. Найти модуль суммы и квадрат произведения компонент файла; 2. Дан файл F, компоненты которого являются действительными числами. Найти наибольшее из значений компонент. 3. Определить количество слов в символьном файле.

№108 слайд
Ответить на вопросы. Qbasic .
Содержание слайда: Ответить на вопросы. Qbasic 1.1 Формат открытия файла 1.2 Какие операции возможны над файлами последовательного доступа. (открытие, чтение и\или запись, закрытие) 1.3 Приведите примеры имени файла. 1.4 Режимы работы с файлами (OUTPUT, APPEND, INPUT) 1.5 Для чего служит номер файла? 1.6 Чем отличаются операторы WRITE#, PRINT#? 1.7 Как редактируются последовательные файлы? 1.8 Роль оператора CLOSE? 1.9 Что показывает функция EOF? 1.10 Какие бывают методы доступа к информации в файлах? 1.11 Пример открытия файла. 1.12 Сколько файлов можно открыть? 1.13 Какова последовательность работы с файлами прямого доступа? 1.14 Формат оператора OPEN? 1.15 Каков результат действия операторов PUT, GET? 1.16 Назовите типы переменных. 1.17 Способ описания переменных. 1.18 Способ объявления переменных. 1.19 Занимаемый объем памяти переменными. 1.20 Какие переменные относятся к пользовательскому типу данных.

№109 слайд
Ответить на вопросы. TPascal
Содержание слайда: Ответить на вопросы. TPascal 7.0 Что называется файлом? В чем различие между структурой логического и структурой физического файла. В чем сходство и различие между массивом и файлом? По каким признакам классифицируют файла в Turbo Pascal 7.0? Что необходимо выполнит для открытия файла? Какие процедуры предназначены для открытия файла и как они работают? Для чего предназначена процедура Close? Каких типов допускаются описание типизированных файлов? Как нумеруются элементы типизированных файлов? По каким правилам выполняется чтение из типизированных файлов? Каков формат имеет процедура WRITE для типизированных файлов? Что возвращает функция Filepos в файле прямого доступа? Что возвращает функция Filesize в файлах прямого доступа? Что производит процедура Seek в файлах прямого доступа? В чем состоят особенности текстовых файлов? В чем отличие текстового файла от file of Char? Как работает процедура Readln в текстовом файле? Как работает процедура Writeln в текстовом файле? Как объявляется нетипизированный файл? В чем отличие типизированного файла от нетипизированного?

№110 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 1. Дан файл F, компоненты которого являются действительными числами. Найти: а) Сумму компонент файла; б) Произведение компонент файла; в) Сумму квадратов компонент файла; г) Модуль суммы и квадрат произведения компонент файла; д) Последнюю компоненту файла; е) Два самых маленьких элемента; ж) Среднее арифметическое элементов; з) Среднее арифметическое для чисел, стоящих с М по К место в файле; и) Сумму чисел, стоящих на четных и нечетных местах. 2. Дан файл F, компоненты которого являются действительными числами. Найти: а) Наибольшее из значений компонент; б) Наименьшее из значений компонент с четными номерами; в) Наибольшее из значений компонент с нечетными номерами; г) Сумму наибольшего и наименьшего из значений компонент; д) Разность первой и последней компонент файла; е) минимальное из чисел, стоящих с М по К место в файле; ж) максимальное среди чисел, стоящих на 3, 6,9,…3к… местах; з) два самых больших элемента; и) сумму, для чисел находящихся в диапазоне от А до В.

№111 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 3. Дан файл F, компоненты которого являются целыми числами. Найти: а) Количество четных чисел среди компонент; б) Количество удвоенных нечетных чисел среди компонент; в) Количество квадратов нечетных чисел среди компонент; г) Минимальное среди чисел кратных трем; д) Количество простых чисел в файле; е) Каких чисел больше: четных или нечетн; ж) Количество чисел с двумя и тремя нулями в конце числа; и) Произведение чисел кратных 3 и не превосходящих числа В. 4. Дано натуральное N. Записать в файл целые числа В1, В2, ..., Вn, определенные ниже: а) I I=1,2,3,...,N б) I! в) I2 г) 2I 5. Дан символьный файл. Добавить в файл символы E,N,D.

№112 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 6. Дан символьный файл F. а) Подсчитать число вхождений в файл сочетаний АВ. б) Определить входит ли в файл сочетание abcdef? в) Подсчитать число вхождений в файл каждой из букв a, b, c, d? 7. Даны символьный файлы F,G. Определить совпадают ли компоненты файла F с компонентами файла G. Если файлы F и G отличаются друг от друга, то получить номер первой компоненты, в которой файлы F и G отличаются друг от друга. В случае, когда один из файлов имеет N компонент (n>=0) и повторяет начало другого (более длинного файла), ответом должно служить число N+1. 8. Даны символьный файлы F и G. Записать в файл Н все начальные совпадающие компоненты файлов F и G. 9. Дан символьный файл F. Записать в файл Н с сохранением порядка следования те символы файла F: а) которым в этом файле предшествует буква "а"; б) вслед за которым в этом файле идет буква "а". 10. Дан символьный файл F. Группы символов, разделенные пробелами (одним или несколькими) и не содержащих пробелы внутри себя, будем называть словами. Удалить из файла однобуквенные слова и лишние пробелы. Результат занести в файл Н.

№113 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 11. Дан символьный файл F. Найти самое длинное слово среди слов, вторая буква которых есть "е". Если слов с наибольшей длиной несколько, то найти последнее. Если таких слов нет вообще, то сообщить об этом. Решить задачу: а) полагая, что слова состоят не более чем из 10 символов; б) без ограничения на число символов в слове. 12. Определить, сколько в файле имеется слов состоящих из 1-го, 2-х, 3-х и т.д. символов. Полагаем, что количество символов в слове не превосходит 20. 13. Определить количество слов в символьном файле. 14. Дан символьный файл. Предполагается, что длина одного слова не более 10. Подготовить файл Н для печати слов в две колонки. 15. Прямая на плоскости задается уравнением Ax+By+C=0, где А и В одновременно не равны нулю. Пусть коэффициенты А,В,С целые числа. Пусть файл F содержит коэффициенты некоторых прямых (не менее трех). Переписать из файла F в файл Н коэффициенты тех прямых, которые а) параллельные первой прямой, заданной в файле F; б) указаны в а), но дополнительно требуется, чтобы все прямые были различны; в) пересекали первую из прямых, заданных в файле F.

№114 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения. 16. Багаж пассажира характеризуется количеством вещей и общим весом вещей. Дан файл, содержащий информацию о багаже несколько пассажиров. (т.е. соответствующую пару чисел) а) Найти багаж, средней вес одной вещи в котором отличается не более чем на 0,3кг от общего среднего веса вещи. б) Найти число пассажиров, имеющих более двух вещей, и число пассажиров, количество вещей которых превосходят среднее число вещей. в) Определить имеются ли два пассажира, багажи которых совпадают по числу вещей и различаются по весу не более чем на 0,5кг. г) Выяснить, имеется ли пассажир, багаж которого превышает багаж каждого из остальных пассажиров и по числу вещей, и по весу. д) Выяснить, имеется ли пассажир, багаж которого состоит из одной вещи весом не менее 30кг. е) Дать сведения о багаже, число вещей в котором не меньше, чем в любом другом багаже с этим же числом вещей. 17. Сведения об ученике состоят из его имени и фамилии и названия класса, в котором он учится. Дан файл Н, содержащий сведения об учениках школы. а) Выяснить, имеются ли в школе однофамильцы. б) Выяснить, имеются ли однофамильцы в каких-либо параллельных классах. в) Выяснить, имеются ли однофамильцы в каком-нибудь классе. г) Ответить на вопросы а)-в), но в отношении учеников, у которых совпадают и имя и фамилия.

№115 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения. д) Выяснить, в каких классах насчитывается более 35 учеников. е) Выяснить, на сколько человек в восьмых классах больше, чем в десятых. ж) Собрать в файле G сведения об учениках 9-х и 10-х классов, поместив в начале сведения об учениках класса 9а, затем 9б т.д., затем 10а, 10б и т.д. з) Получить список учеников данного класса по следующим образцам: фамилия имя фамилия и. и. Фамилия 18. Дан файл F, содержащий те же самые сведения об учениках школы, что и в предыдущей задаче, и дополнительно отметки, полученные учениками в последней четверти. а) Выяснить, сколько учеников школы не имеют отметок ниже четырех б) Собрать в файле G сведения о лучших учениках школы, т.е. об учениках, не имеющих отметок ниже четырех и по сумме баллов не уступающих другим ученикам своего и параллельных классов. 19. Сведения об автомобиле состоят из его марки, номера и фамилии владельца. Дан файл F, содержащий сведения о нескольких автомобилях. Найти: а) фамилии владельцев и номера автомобилей данной марки; б) количество автомобилей каждой марки.

№116 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 20. Дан файл F, содержащий различные даты. Каждая дата - это число, месяц, год. Найти: а) год с наименьшим номером; б) все весенние даты; в) самую позднюю дату. 21. Дан файл F, содержащий сведения о книгах. Сведения о каждой из книг - это фамилия автора, название и год издания. а) Найти названия книг данного автора, изданных с 1960 г. б) Определить, имеется ли книга с названием "Информатика". Если да, то сообщить фамилию автора и год издания. Если таких книг несколько, то сообщить имеющиеся сведения обо всех этих книгах. 22. Дан файл F, который содержит номера телефонов сотрудников учреждения: указывается фамилия сотрудника, его инициалы и номер телефона. Найти телефон сотрудника по его фамилии и инициалам. 23. Дан файл F, содержащий сведения о веществах; указывается название вещества, его удельный вес и проводимость (проводник, полупроводник, изолятор). а) Найти удельные веса и названия всех полупроводников. б) Выбрать данные о проводниках и упорядочить их по убыванию удельных весов.

№117 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 24. Дан файл F, содержащий сведения об экспортируемых товарах: указывается наименование товара, страна, импортирующая товар, и объем поставляемой партии в штуках. Найти страны, в которые экспортируется данный товар, и общий объем его экспорта. 25. Дан файл F, содержащий сведения об игрушках: указывается название игрушки (например, кукла, кубики, мяч, конструктор и т.д.), ее стоимость в копейках и возрастные границы детей, для которых игрушка предназначена ( например, для детей от двух до пяти лет). Получить следующие сведения: а) названия игрушек, цена которых не превышает 4 руб. и которые подходят детям 5 лет; б) цену самого дорогого конструктора, оформленную по образцу ...руб. ...коп.; в) названия наиболее дорогих игрушек (цена которых отличается от цены самой дорогой игрушки не более чем на 1 руб.); г) названия игрушек, которые подходят как детям 4-х лет, так и детям 10 лет. д) цены всех кубиков, оформленные по образцу, указанному в б); е) можно ли подобрать игрушку, любую, кроме мяча, подходящую ребенку 3 лет, и дополнительно мяч так, чтобы суммарная стоимость игрушек не превосходила 5 руб.? ж) имеется ли мяч ценой 2 руб. 50 коп., предназначенный детям от 3 до 8 лет?; если нет, занести сведения об этой игрушке в файл f.

№118 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 26. Дан файл F, компоненты которого являются натуральными числами. Число компонент файла кратно четырем. Каждые две компоненты определяют координаты двух точек. а) Считая, что заданы координаты концов отрезков, построить все такие отрезки. б) Считая, что заданы координаты противоположных углов прямоугольника, построить все такие прямоугольники. в) Считая, что заданы координаты центра окружности и одной из ее точек, построить все такие окружности. 27. Продумайте структуру файла, содержащую информацию о нападающих хоккейной команды, в которой каждому игроку соответствует одна запись. Напишите программу, извлекающего в буфер из файла данные о числе забитых голов восьмым игроком. 28. Напишите программу, которая облегчила бы зубному врачу учет пациентов. Информацию по каждому пациенту - имя, число поставленных ему пломб и сумму задолженности за лечение - храните отдельных логических записях в файлах прямого доступа. Запустите программу и введите условные данные по нескольким пациентам. 29. Напишите программу, которая позволила бы бухгалтеру задать идентификационный номер клиента, заставляет ЭВМ выдать нужную запись и выдать сумму задолженности клиента за телефон (квартиру и др.) Номер клиента совпадает с номером записи. Пусть программа учитывает уже уплаченную сумму и корректирует величину задолженности в записи.

№119 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 30. Создайте файл прямого доступа, содержащий вещественные значения последовательно от 1.0 до 12.0. а) Покажите, что вам это удалось. б) Замените в файле записи под номерами 4, 7, 11 словами Оля, Коля, Ира. в) Покажите, что вам это удалось. 31. Запишите имена и коды всех служащих банка в файл прямого доступа. а) Покажите, что вам это удалось. б) Пусть ЭВМ помогает служащему охраны проверять прибывающих на работу. Когда служащий вводит имя вновь прибывшего, компьютер должен печатать соответствующий код. 32. Организуйте с помощью компьютера информацию об ассортименте дамских туфель в обувном магазине. В файле прямого доступа запишите артикул и число пар каждой модели обуви. Всего будет N моделей от 1001 до 1001+N. Проделайте следующее: а) сначала введите в файл исходное число пар обуви каждой модели; б) содержимое файла увяжите с работой кассового аппарата, чтобы учитывать оставшийся товар всякий раз после продажи очередной пары туфель; в) напечатать ассортиментный список с указанием артикула и имеющегося в наличии числа пар каждой модели.

№120 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения 33. Допустим вы - член оргкомитета Олимпийских игр. Зимняя олимпиада финишировала, и результаты соревнований записаны в файле прямого доступа. Ваша задача - прочитать данные о призерах и напечатать таблицу вида: ЛЫЖНЫЕ ГОНКИ СРЕДИ МУЖЧИН. Золотая медаль: СЕРГЕЙ ТОЛСТОЙ СССР Серебряная медаль ИГГИ ПИГГИ США Бронзовая медаль: Альфредо Минчини ИТАЛ и т.д. для шести олимпийских дисциплин. Отведите 26 байт на название дисциплины, 30 байт на имя каждого призера и 4 байта на название страны. Напишите программу, которая запрашивала бы по каждой олимпийской дисциплине сведения о медалистах. Разделите эту задачу на три части: а) напишите программу для ввода данных имен призеров с указанием ими страны - каждой дисциплине: б) Напишите программу для выдачи на печать списка призеров с указанием имени и представляемой страны для каждого из них; в) напишите программу для обработки запросов по любой дисциплине.

№121 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения. 34. Воспользуйтесь файлом прямого доступа для хранения библиографической информации. В начальном блоке (размером 512 байт) поддерживайте индекс указателей на остальную часть файла. В последующих блоках разместите 64-байтовые записи, по восемь в блоке, хранящие полные библиографические данные по каждому материалу (статье). Индекс каждой статьи образуется из ее сокращенного (в 12 символов) названия и двух целых чисел, указывающих соответственно номер блока и номер библиографической записи внутри блока. Напишите четыре программы: а) начальная установка файла. Вероятно, будет удобно в каждом индексе заранее указать номера блока и записи; б) занесение очередной статьи. Запросите у библиотекаря сокращенное название статьи и запищите ее в индекс. Затем запросите полное библиографическое описание и заносите его в нужный блок; в) печать индексов и полных библиографических справок по всем статьям; г) поиск и выдачу информации о любой статье по ее индексу.

№122 слайд
Задачи для самостоятельного
Содержание слайда: Задачи для самостоятельного решения Текстовые файлы — это файлы, содержащие символы, разделенные на строки. Причем в конце каждой строки стоит признак конца строки. 35. Дан текстовый файл, содержащий целые числа. Найти: a) максимальный элемент в каждой строке; b) номер данного числа, если такого нет в данной строке, то сообщить об этом. 36. Дан текстовый файл, содержащий строки. Найти: a) количество строк; b) количество строк, начинающихся и заканчивающихся одинаковыми символами; c) самые короткие строки; а) симметричные строки. 37. Дан текстовый файл. Вставить в начало каждой строки ее номер и записать преобразованные строки в новый файл. 38. Даны два текстовых файла. Записать в третий только те строки, которые есть и в первом и во втором файлах. 39. Дан текстовый файл. Дописать в его конце следующие данные: количество строк, количество символов в каждой строке, количество элементов в каждой строке.

№123 слайд
Используемая литература
Содержание слайда: Используемая литература Абрамов С.А., Гнездилов Г.Г. и др. Задачи по программированию. - М.: НАУКА, 1988г. Гейн А.Г. и др. Основы информатики и вычислительной техники. - М., ПРОСВЕЩЕНИЕ, 1993г. Лепехин Ю.В Сорок пять минут с компьютером. Волгоград: ПЕРЕМЕНА,1996г Филиппов С.В. Занимательный BASIC. - М.:изд-во ЭКОМ, 1997г. Мельникова О.И., Бенюшкина А.Ю. Начала программирования на языке QBASIC. – М.:Издательство ЭКОМ,1998г Вострикова З.П., Вострикова Щ.Ю., Туева С.С. Программирование на языке «Бейсик» для персональных ЭВМ. Зельдер Г.А. Программируем на языке QUICK BASIC 4. - М. ABF 1997г. Марченко А.И., Марченко Л.А Тurbo PASCAL. - Киев:ВЕК, 1999г. 7. Окулов С.М. Турбо ПАСКАЛЬ 7.0.- Киев: издательская группа BHV, 2000г.

Скачать все slide презентации Операции для работы с файлами одним архивом: