О САЙТЕ
Добро пожаловать!

Теперь вы можете поделиться своей работой!

Просто нажмите на значок
O2 Design Template

ФЭА / Информатика / КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА» РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК PASCAL НА ТЕМУ: «РАЗРАБОТКА В СРЕДЕ TURBO PASCAL ПРОГРАММЫ СОЗДАНИЯ ДВУХ МАССИВОВ ИЗ ОДНОГО»

(автор - student, добавлено - 29-05-2014, 17:47)

СКАЧАТЬ:  222.zip [35,56 Kb] (cкачиваний: 21)

 

 

 

КУРСОВАЯ РАБОТА

 ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА»

РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК 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.

 

 


Ключевые слова -
Похожие статьи:
  • КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА» РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК PASCAL НА ТЕМУ: «РАЗРАБОТКА В СРЕДЕ TURBO PASCAL ПРОГРАММЫ ПОИСКА МИНИМАЛЬНОГО И МАКСИМАЛЬНОГО ЭЛЕМЕНТОВ МАССИВА»
  • КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА» РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК PASCAL НА ТЕМУ: Разработка в среде Turbo Pascal программы, реализующей транспонирование матрицы
  • КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА» РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК PASCAL НА ТЕМУ: «РАЗРАБОТКА В СРЕДЕ TURBO PASCAL ПРОГРАММЫ ВЫЧИСЛЕНИЯ СУММЫ ОПРЕДЕЛЕННЫХ ЭЛЕМЕНТОВ МАССИВА»
  • КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА» РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК PASCAL НА ТЕМУ: «РАЗРАБОТКА В СРЕДЕ TURBO PASCAL ПРОГРАММЫ УДАЛЕНИЯ ИЗ МАССИВА НУЛЕВЫХ ЭЛЕМЕНТОВ»
  • КУРСОВАЯ РАБОТА ПО ДИСЦИПЛИНЕ «ИНФОРМАТИКА» РАЗДЕЛ: АЛГОРИТМИЧЕСКИЙ ЯЗЫК PASCAL НА ТЕМУ: РАЗРАБОТКА В СРЕДЕ TURBO PASCAL ПРОГРАММЫ «ХИТРАЯ СОРТИРОВКА».


  • ФНГ ФИМ ФЭА ФЭУ Яндекс.Метрика
    Copyright 2021. Для правильного отображения сайта рекомендуем обновить Ваш браузер до последней версии!