Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь 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; просмотров: 726; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.184.207 (0.012 с.) |