ФЭА / Информатика / КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА» РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК PASCAL НА ТЕМУ: «РАЗРАБОТКА В СРЕДЕ TURBO PASCAL ПРОГРАММЫ СОЗДАНИЯ ДВУХ МАССИВОВ ИЗ ОДНОГО»
(автор - student, добавлено - 29-05-2014, 17:47)
СКАЧАТЬ:
КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА» РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК PASCAL НА ТЕМУ: «РАЗРАБОТКА В СРЕДЕ TURBO PASCAL ПРОГРАММЫ СОЗДАНИЯ ДВУХ МАССИВОВ ИЗ ОДНОГО»
Модули и операторы.. 3 Блок-схема. 8 Паскаль программа. 9 Список литературы.. 12 Приложение. 13
Модуль Crt – обеспечивает управление дисплеем (текстовым режимом экрана и звука) и клавиатурой компьютера. Раздел описания переменных начинается зарезервированным словом var, за которым следует список переменных, двоеточие и тип данных. Блок операторов В программе на Паскале этот блок является самым основным, т.к. именно здесь с предварительно описанными величинами выполняются действия, позволяющие получить результат, ради которого составлялась вся программа. Раздел операторов начинается зарезервированным словом BEGIN затем следуют операторы, отделенные друг от друга точкой с запятой завершает раздел зарезервированное слово END с точкой. Слова BEGIN и END – аналог открывающей и закрывающей скобок в арифметических выражениях and логическое и (умножение) – принимает истинное значение, только если оба операнда истины or логическое или (сложение) – принимает истинное значение, если хотя бы одно из операндов истинно
Функция random(диапазон) возвращает случайное число, удовлетворяющее условию 0<=x<=диапазон. Тип аргумента и результата – word. Если необходимы случайные числа из диапазона a<=x<b - используется выражение random(b-a)+a. Если параметр диапазон не указан, то random возвращает число в диапазоне 0<=x<1. Тип результата – real (см. п.3.2). Если нам необходимы вещественные числа из диапазона a<=x<b, мы можем задать его при помощи random*b+a. Перед первым обращением к функции random необходимо с помощью вызова процедуры Randomize инициализировать программный генератор случайных чисел, иначе при каждом запуске программы датчик будет выдавать одни и те же числа.
Процедура чтения Read обеспечивает ввод числовых данных, символов, строк для их последующей обработки. Процедура чтения Readln аналогична Read. Единственное отличие состоит в том, что если в программе несколько процедур Readln, то после считывания значений переменных для одной процедуры Readln, данные для следующей процедуры будут считываться с начала новой строки. Инструкция Readln при вводе с клавиатуры предпочтительней Read, т.к. полностью освобождает буфер клавиатуры – рабочую область памяти, в которой временно хранятся введенные с клавиатуры символы. Инструкция Read оставляет в буфере клавиатуры код клавиши Enter, которой завершает процесс. Процедура Readln без переменных обычно записывается в конце программы и служит для создания паузы, которая длится до нажатия клавиши Enter. В противном случае по окончании программы окно с текстом программы закроет экран с полученным результатом. Инструкции Write и Writeln предназначены для вывода констант различных типов, значений переменных или выражений. Число параметров – произвольное. Данные выводятся на экран. Из констант наиболее часто выводятся строки текста (строковые константы заключаются в апострофы). Если в конструкции вывода записано выражение, оно сначала будет вычислено, а затем выполнен вывод полученного результата. Процедура Writeln аналогична Write, отличие заключается в том, что после вывода последней переменной из списка, курсор автоматически переходит в начало новой строки. Инструкция Writeln без параметров переводит курсор в начало следующей строки, что позволяет, например, отделять результаты работы программы друг от друга пустыми строками. Write(y1:n:m, y2:n:m, …); Writeln(y1:n:m, y2:n:m, …); где y1, y2,… - выражение, переменная или константа; n – определяет общую ширину поля вывода; m – определяет место под дробную часть.
Оператор присваивания можно считать основным оператором языка Паскаль, т. к. именно в нем выполняются практически все действия по обработке данных. Оператор присваивания используется для изменения значений переменных, в том числе и для вычислений по формулам — оператор предписывает выполнить выражение, заданное в его правой части, и присвоить результат переменной, стоящей в левой части. идентификатор := выражение; Составной оператор представляет собой группу из произвольного числа операторов, отделенных друг от друга точкой с запятой и ограниченную операторными скобками begin и end.
Условный оператор позволяет проверить некоторое условие и в зависимости от результата выполнить тот или иной оператор или группу операторов. <оператор2>. Условный оператор if
Формат: if <условие> then < оператор1> else < оператор2>; где if, then, else – зарезервированные слова (обозначают если, то, иначе соответственно); <условие> - произвольное выражение логического типа; <оператор1>, <оператор2> - любые операторы языка Паскаль.
Условный оператор работает по следующему алгоритму: вначале вычисляется выражение <условие>. Если результат - true (истина), то выполняется <оператор1>, а <оператор2> пропускается. Если результат - false (ложь), наоборот <оператор1> пропускается, а выполняется Часть оператора, стоящая после служебного слова else, может отсутствовать. Тогда при значении true условного выражения выполняется <оператор1>, в противном случае этот оператор пропускается. В условном операторе логические выражения могут содержать несколько отношений и/или логических переменных, связанных операциями and, or, not. Каждое простое условие в логическом выражении обязательно заключается в скобки. Операторы повторения (циклы) предусматривают выполнение некоторых операторов несколько раз. Оператор повтора for часто называют оператором цикла с параметром, так как число повторений задается переменной, называемой параметром цикла, или управляющей переменной, которая на каждом шаге цикла автоматически изменяет свое значение ровно на единицу – поэтому ее и называют счетчиком. Оператор повтора for состоит из заголовка (строка, содержащая for…do ) и тела цикла. Если требуется выполнить после do несколько операторов, они обрамляются операторными скобками begin и end, образуя тем самым составной оператор. Массив - это упорядоченная последовательность величин, имеющих один и тот же тип и объединённых одним именем. Число элементов массива задаётся при описании и в процессе выполнения программы не меняется. Имя массива образуется аналогично имени любой другой величины. Отдельные величины, составляющие массив, называются элементами массива. При обращении к элементу массива, необходимо указывать его имя, а в квадратных скобках его индексы. Для работы с массивами как единым целым используется имя массива без указания индекса в квадратных скобках. Массив может участвовать только в операциях отношения "равно и не равно" и в операторе присваивания. Массивы, участвующие в этих действиях, должны быть тождественны по структуре или иметь одинаковые типы индексов и одинаковые типы компонентов. Элементы массива могут быть использованы так же, как и простые переменные. Например, они могут находиться в выражениях в качестве операндов, использоваться в операторах for, while, repeat, входить в качестве параметров в операторы Read, Write, им можно присваивать любые значения, соответствующие их типу. Индексы массива должны быть целого типа, и индексы могут иметь как положительные, так и отрицательные значения, а также индексы могут быть нулями. Если элемент массива имеет только один индекс, массив называется одномерным, если два индекса - двухмерным.
начало i:=1..10 j:=1..5 a[i]:=random(10)+1 a[j]
i:=2..10 - i mod 2=0 + j:=10..i
b[i]=a[i] - b[j-1]<b[j] +
a[i] x:=a[j-1] i=1..10 a[j-1]:=a[j] a[j]:=a[j-1] - a[i]=b[i] + j:=1..5 j:=1..5 a[i]=0 a[i] конец
i:=2..10
j:=10..i
- a[j-1]<a[j] +
x:=a[j-1] a[j-1]:=a[j] a[j]:=a[j-1] program fathutdinov; uses Crt; var a:array[1..10] of integer;b:array[1..10] of integer; i,j,x,k:integer; begin ClrScr;Randomize; writeln('исходный массив:'); for i:=1 to 10 do begin a[i]:=random(10)+1; if i mod 2=0 then b[i]:=a[i]; write(a[i]:3); end; writeln; writeln('четные элементы массива '); for i:=1 to 10 do write(b[i]:3); writeln; writeln(''нечетные элементы массива '); for i:=1 to 10 do begin if a[i]=b[i] then a[i]:=0; write(a[i]:3);end; writeln; writeln('массив четных элементов'); for i:=2 to 10 do begin for j:=10 downto i do if a[j-1]<a[j] then begin x:=a[j-1];a[j-1]:=a[j];a[j]:=x;end;end; for j:=1 to 5 do Write(a[j]:3); writeln; writeln('массив нечетных элементов'); for i:=2 to 10 do begin for j:=10 downto i do if b[j-1]<b[j] then begin x:=b[j-1];b[j-1]:=b[j];b[j]:=x;end;end; for j:=1 to 5 do Write(b[j]:3); ReadLn;end.
1. А.И. Гусева Учимся программировать:Pascal 7.0 2. А.И. Гусева Учимся программировать:Pascal 7.0. Задачи и методы их решения. 3. Алаев Ю.А., Гладков В.П., Козлов О.А. Практикум по алгоритмизации и программированию на языке Паскаль. М.:Финансы и статистика, 2004. 4. Глинский Я.Н., Анохин В.Е., Ряжская В.А. Turbo Pascal 7.0 и Delphi. СПб.:ДиаСофтЮП, 2003. 5. Культин Н. Turbo Pascal в задачах и примерах. СПб.: БХВ - Петербург, 2003.
Похожие статьи:
|
|