![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Вычисление суммы, произведения, количества элементов массива.Содержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Вычисление суммы элементов. Summa:= 0; For i:=1 to 3 do For о:=1 to 4 do Summa:= summa + a[i,j]; Вычисление произведения элементов. proiz:= 1; For i:=1 to 3 do For о:=1 to 4 do Proiz:= Proiz * a[i,j]; Вычисление суммы (произведения) элементов, удовлетворяющих заданному условию. Summa:= 0; For i:=1 to n do For j:=1 to m do If a[i,j] >0 Then Summa:= summa + a[i,j]; Нахождение количества элементов, удовлетворяющих заданному условию. найти количество положительных элементов в каждой строке массива. For i:=1 to n do Begin Коlich:=0; For j:=1 to m do If a[i,j] > 0 Then kolich:= kolich + 1; Writeln(‘Колич. Положит. Знач. в’,i,‘строке =’,kolich); End; найти количество чётных элементов массива. Коlich:=0; For i:=1 to n do For j:=1 to m do If a[i,j] mod 2 = 0 Then kolich:= kolich + 1; Writeln(‘ Положит. Знач. ’,kolich); Поиск минимального (максимального) элемента массива Алгоритм поиска минимального (максимального) элемента в неупорядоченном массиве довольно очевиден: делается предположение, что первый элемент массива является минимальным (максимальным), затем остальные элементы массива последовательно сравниваются с этим элементом. Если во время очередной проверки обнаруживается, что проверяемый элемент меньше (больше) принятого за минимальный (максимальный), то этот элемент принимается за минимальный (максимальный) и продолжается проверка оставшихся элементов. Найти максимальный (минимальный) элемент массива и его индекс.
max:= а[1,1]; { max - максимальный, элемент} Nmax: = 1; { Nmax- номер макс. элемента} For i:=1 to 3 do For j:=1 to 4 do If a[i,j] > max Then (If a[i] < min Then) Begin max:= a[i,j]; Nmax: = [i, j]; end; writeln (‘макс. значение =’,max,’индекс макс. элемента’,Nmax);
1)если в условии знак > то мы находим максимальный элемент, если знак < то минимальный. 2) если неравенство строгое (> или <) то мы находим первый максимальный или минимальный элемент, а если нестрогое (>= или <=) то последний.
Сортировка двумерного массива.
по строкам: for i:=1 to 3 do for j:=1 to 4 do if a[i,j]<a[i,j+1] then begin tmp:=a[i,j]; a[i,j]:=a[i,j+1]; a[i,j+1]:=tmp; end;
по столбцам: for j:=1 to 4 do for i:=1 to 2 do if a[i,j]<a[i+1,j] then begin tmp:=a[i,j]; a[i,j]:=a[i+1,j]; a[i+1,j]:=tmp; end;
Работа с файлами Язык Pascal позволяет вводить исходные данные для программы не только с клавиатуры, но и из текстового файла. А также позволяет выводить результат выполненной программы не только на экран монитора, это не всегда удобно, но и можно сохранить результаты в файле, на диске компьютера.
1) На диске больше места, чем в оперативной памяти. 2) В файл можно записывать данные разного типа. Файл, с точки зрения программы на языке Pascal, — это именованная структура данных, представляющая собой последовательность элементов одного типа. Количество элементов файла практически не ограничено, размеры файла не фиксированы.
Описание (объявление) файла Как и любая переменная программы, файл должен быть объявлен в разделе описания переменных. При объявлении файла указывается тип элементов файла. В общем виде объявление файла выглядит так:
Имя: file of Тип элементов Примеры: r es: file of char; { файл символов } koef: file of real; { файл вещественных чисел } f: file of integer; { файл целых чисел } Файл, компонентами которого являются данные символьного типа (char) называется текстовым. Описание file of char может быть заменено на text, т.е. описание r es: file of char равнозначно r es: text.
Назначение файла (Процедура Assign) Описание (объявление) файловой переменной задает только тип компонентов файла. Чтобы программа могла выводить данные в файл или читать данные из файла, необходимо указать конкретный файл, т. е. задать имя файла. Имя файла задается вызовом процедуры assign, связывающей файловую переменную с конкретным файлом. Описание процедуры assign: assign (var f: text; имя файла: string) Примеры: assign (f,’a:\result.text’); assign (f,’\uchahiisj\ivanov\korni.text’); (f- файловая переменная; ’a:\result.txt’- полное имя файла.) или fname:=’otchet.txt’; assign(f,fname);
Имя файла задается согласно принятым в MS-DOS правилам (8 букв латинского алфавита, цифр, а расширение состоит из трёх латинских букв, например: ’otchet.txt’). Оно может быть полным, т. е. состоять не только непосредственно из имени файла, но и включать путь к файлу. Файл может быть открыт для чтения из файла или для записи в файл.
Ввод данных из файла Чтобы вводить исходные данные для программы из текстового файла, нужно: объявить файловую переменную типа text, назначить ей при помощи инструкции assign имя файла, из которого будут читаться данные, открыть файл для чтения (ввода из файла) и прочитать данные (ввести данные в программу), используя инструкцию read или readln.
Открытие файла для чтения Процедура Reset, открывает существующий файл данных, имя которого перед этим было связано при помощи процедуры assign с некоторой файловой переменной, указанной в процедуре Reset как параметр. Например, пара операторов assign(f, ‘c:\data.txt’); reset(f); открывает файл data.txt.
Чтение из файла Чтение из файла выполняется при помощи инструкций read и readln, которые в общем виде записываются так: read (Файловая Переменная, Список Переменных); readln (Файловая Переменная, Список Переменных);
где Файловая Переменная – перееменная типа text; Список Переменных - имена переменных, разделенные запятыми. read (f,a,b,c); readln (f,b);
program chtenieizfaila;__ var f: file of integer; a,b,c: integer; begin assign(f,’data.dat’); reset(f); read(a,b,c); end. Чтение до конца файла Функцией EOF Чтобы прочитать весь файл, считать все данные. Другими словами, достигнуть при чтении конца файла. Нужно воспользоваться функцией eof (End Of File - конец файла). Пример: while not eof (f) do{пока не достигнут конец файла f } read(f,n) {чтение из файла f, данных }
Данный цикл будет выполнять считывание порций данных из файла, связанного с файловой переменной f, до тех пор, пока не будут считаны все данные program chtenie iz faila do konca faila; var f: text; a,b,c: integer; begin assign(f,’data.txt’); while not eof (f) do{пока не достигнут конец файла f } read(f,n) {чтение из строки, данных } end.
Чтение до конца файла Функцией EOLN Что бы прочитать строку в текстовом файле, считать данные только из этой строки используется функция eoln признак конца строки в текстовом файле. Пример: while not eoln (f) do{пока не достигнут конец строки} read(f,n) {чтение из файла f данных }
Данный цикл будет выполнять считывание порций данных из строки, до тех пор, пока не будут считаны все данные этой строки.
Вывод (запись) в файл
Инструкция вывода в файл Непосредственный вывод в файл осуществляется при помощи Инструкции write или writeln, у которой список выводимых значений начинается с переменной типа text, идентифицирующей файл для вывода. Например, если переменная f имеет тип text, то инструкция вывода в файл может быть такой: Write (f,’Корни уравнения’,x1,x2); Однако для того чтобы инструкция Write записала (вывела) данные в файл, не достаточно назначить имя файловой переменной. Нужно еще открыть файл для записи (вывода в файл).
Открытие файла для записи (вывода в файл) Перед выводом в файл необходимо открыть файл. Если программа, формирующая выходной файл, уже использовалась, то возможно, что файл с результатами работы программы уже есть на диске. Поэтому программист должен решить, как поступить со старым файлом: заменить старые данные новыми или добавить новые данные к старым. Это определяется во время открытия файла. Возможны следующие режимы (варианты) открытия файла для записи в него данных: · Перезапись (запись нового файла поверх существующего или создание нового файла); · Добавление в существующий файл. Создание нового файла или замена существующего файла Процедура rewrite. Чтобы открыть файл в режиме создания нового файла или замены существующего, необходимо вызвать процедуру rewrite, указав в качестве параметра файловую переменную. Процедуру Rewrite применяют, если при открытии файла старое его содержимое необходимо уничтожить, а на его место записать новое. Пример: Открыть файл в режиме создания нового файла и записывает в него 5 раз слово Информатика.
Program new_fail; var f: text; { текстовый файл } i: integer; Begin assign (f,’test.txt’); reset (f); { открыть в режиме записи } For i:=1 to 5 do Writeln (f, ' Информатика ', i); Close(f); { закрыть файл } В результате выполнения программы на диске появляется файл test.txt. Распечатка файла test.txt.:
Информатика 1 Информатика 2 Информатика 3 Информатика 4 Информатика 5 Текст программы, которая открывает уже ранее существующий файл test.txt. и записывает в него две новые строки удаляя прежние.
Program replace_fail; var f: text; { текстовый файл } i: integer; Begin assign (f, ’test.txt’); rewrite (f); { открыть в режиме перезаписи } For i:=6 to 7 do Writeln (f, ' Информатика ', i); Close(f); { закрыть файл }
В результате выполнения программы содержимое файла test.txt изменяется. Распечатка файла: Информатика 6 Информатика 7
|
|||||||
Последнее изменение этой страницы: 2016-04-08; просмотров: 734; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.117.184.55 (0.008 с.) |