Теоретический материал по теме: «Массивы»

Автор работы: Пользователь скрыл имя, 29 Октября 2013 в 15:08, курсовая работа

Описание

Массив - упорядоченные данные одного типа. Массивом часто обозначают характеристики объектов одного типа, имеющих одинаковые единицы измерения. Массив состоит из элементов, имеющих порядковые номера, т. е. элементы массива упорядочены. Таким образом, если объекты одного типа обозначить именем, например "A", то элементы объекта будут A[1], A[2] и т. д. В квадратных скобках указан номер элемента

Содержание

I ЧАСТЬ
• Теоретический материал по теме: «Массивы»………………………………………
• Постановка задачи…………………………………………………………………….
• Таблица соответствия обозначений………………………………………………….
• Построение алгоритма. Схема алгоритма главной программы и подпрограммы..
• Описание программы…………………………………………………………………
• Процедуры и функции языка программирования Паскаль, используемые
в программе……………………………………………………………………………
•Программа на языке Паскаль…………………………………………………………
• Тестирование и отладка программы………………………………………………….
II ЧАСТЬ
• Теоретический материал по теме: «Записи и файлы»……………………………….
• Таблицу соответствия полей записи………………………………………………….
• Таблица с исходными данными……………………………………………………….
• Схему алгоритма создания файла……………………………………………………..
• Таблицу с исходными данными для создания файла………………………………..
• Программы создания файла……………………………………………………………
• Схему алгоритма обработки файла……………………………………………………
• Программу обработки файла…………………………………………………………..
• Таблицу с результатами обработки файла……………………………………………
• Список литературы………………………………

Работа состоит из  1 файл

Вариант 16.doc

— 307.50 Кб (Скачать документ)

 

СХЕМА АЛГОРИТМА  СОЗДАНИЯ ФАЙЛА

На  рисунке 3 приведена схема алгоритма создания файла. В схеме сначала выполняется открытие файла. Затем организуется цикл ввода 30 записей. В этом цикле вводятся поля записи, которые, в свою очередь, записываются в файл. После выхода из цикла файл закрывается.

 

 

 

 


 

 

 

 


 

 

 

 

 

 

 

Рисунок. 3. Схема алгоритма создания файла

ПРОГРАММА СОЗДАНИЯ ФАЙЛА

PROGRAM sozdan_16_2;

TYPE

zap=record

    indgr:integer;

    famstud:string [20];

    oc1,oc2,oc3,oc4,oc5,rabota:integer;

    end;

VAR f:file of zap; x:zap; I:integer;

BEGIN

ASSIGN(f,'stud.dat');

REWRITE(f);

WRITELN('Введите сведения  о 30 студентах:');

FOR I:=1 TO 30 DO

BEGIN

WRITE ('Индекс группы=');

READLN (x.indgr);

WRITE ('Фамилия студента=');

READLN (x.famstud);

WRITE ('оценка 1-ый предмет=');

READLN (x.oc1);

WRITE ('оценка 2-ой предмет=');

READLN (x.oc2);

WRITE ('оценка 3-ий предмет=');

READLN (x.oc3);

WRITE ('оценка 4-ый предмет=');

READLN (x.oc4);

WRITE ('оценка 5-ый предмет=');

READLN (x.oc5);

WRITE ('Участие в общественной  работе=');

READLN(x.rabota);

WRITE (f,x);

END;

CLOSE (f);

END.

 

 

 

 

 

СХЕМА АЛГОРИТМА  ОБРАБОТКИ ДАННЫХ

По индивидуальному  заданию требуется начислить  студентам всех трех групп по ведомости стипендию и вывести эти ведомости. Студент, получивший все оценки «5» и активно участвующий в общественной работе, получает повышенную стипендию- доплата 50 %, не активно участвует – 25 %. Студенты , получившие «4» и «5» , зачисляются на обычную стипендию. Студент получивший одну оценку «3», но активно-занимающийся общественной работой, также зачисляется на стипендию, в противном случае начисление стипендии не производится. Определить группу , получающую в сумме максимальную стипендию.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Алгоритм представлен  на рисунке 4.



 



 



 


 

 


 

 

 

 

 



 

 

 

 



 

 



 


 



 

 


 


 




 


Рисунок. 4. Алгоритм программы обработки данных

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРОГРАММА ОБРАБОТКИ  ФАЙЛА

PROGRAM obrab_16_2;

USES crt;

TYPE

    zap = record

          indgr:integer;

          famstud:string[20];

          oc1,oc2,oc3,oc4,oc5,rabota:integer;

          end;

   mas=array[1..3] of real;

VAR

F:file of zap; C:mas; i:integer; y:zap; step,gr1,gr2,gr3,k1:integer;

  k,max:real; bul1,bul2:boolean;

BEGIN

ASSIGN (f,'stud.dat');

RESET (f);

step:=1500;

C[1]:=0;

C[2]:=0;

C[3]:=0;

WRITELN ('Ведомость на  степендию:');

WRITELN (' __________________________________________________________');

WRITELN ('|Индекс группы | Фамилия студента      | стипендия|');

WHILE  not eof (f) DO

BEGIN

READ(f,y);

if (y.oc1=5) and (y.oc2=5) and (y.oc3=5) and (y.oc4=5) and (y.oc1=5) and (y.rabota=1)

   THEN BEGIN

        k:=step*0.5;

        WRITELN ('|', y.indgr,'|', y.famstud,'|', k,'|');

        end;

if (y.oc1=5) and (y.oc2=5) and (y.oc3=5) and (y.oc4=5) and (y.oc1=5) and (y.rabota=0)

   THEN BEGIN

        k:=step*0.25;

        WRITELN ('|', y.indgr,'|', y.famstud,'|', k,'|');

        end;

bul1:=((y.oc1=5) or (y.oc1=4)) and ((y.oc2=5) or (y.oc2=4));

bul2:=((y.oc3=5) or (y.oc3=4)) and ((y.oc4=5) or (y.oc4=4)) and ((y.oc5=5) or (y.oc5=4));

if (bul1 and bul2) or (((y.oc1=3) or (y.oc2=3) or (y.oc3=3) or (y.oc4=3) or (y.oc5=3)) and (y.rabota=1))

   THEN BEGIN

        k:=step;

        WRITELN ('|', y.indgr,'|', y.famstud,'|', k,'|');

        end;

if y.indgr=1

   then C[1]:=C[1]+k;

if y.indgr=2

   then C[2]:=C[2]+k;

if y.indgr=3

   then C[3]:=C[3]+k;

END;

WRITELN ('|__________________________________________|');

max:=C[1];

for i:=1 to 3 do

begin

if C[i]>max

    then begin

          max:=C[i];

          k1:=i;

         end;

end;

WRITELN ('Группа с максимальной  степендией:',k,'Размер степендии:',C[k1]);

CLOSE (f);

END.

 

Результаты обработки для рабочих цеха №1 и №2 приведены в Таблице 4.

 

ТАБЛИЦА 4. РЕЗУЛЬТАТЫ ОБРАБОТКИ ФАЙЛА

Фамилия студента

Индекс  группы

Оценка I – ый предмет

Оценка II – ый предмет

Оценка III – ый предмет

Оценка IV – ый предмет

Оценка V – ый предмет

Rabota

Стипендия

Андреев А.А.

1

3

4

5

5

5

1

1500

Афанасьев А.В.

1

4

4

4

4

4

1

1500

Воробьёв И.А.

1

3

4

4

5

5

1

1500

Загузин Н.В.

1

4

5

4

5

4

0

1500

Иванов Н.В.

1

5

5

5

5

4

0

1875

Каперский Е.О.

1

4

4

4

4

4

0

1500

Коноваленко Е.П.

2

3

3

3

3

3

0

1500

Михайлов Н.В.

2

3

4

4

5

5

0

1500

Петренко А.Б.

2

3

4

5

5

5

1

1500

Пержаков Д.Б.

2

4

4

4

4

4

1

1500

Савельев В.Н.

2

3

4

4

5

5

0

1500

Табутаров Н.Г.

3

4

5

4

5

4

0

1500

Хандиров С.Ю.

3

4

4

4

5

5

0

1500

Цыремпилов Б.Ц.

3

4

4

4

4

4

0

1500


Группа с максимальной стипендией: 1; Размер стипендии: 1562

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

СПИСОК ЛИТЕРАТУРЫ

 

    1. Ершов Е.П. Основы информатики. М.: Просвещение ,1985г

 

    1. Фигурнов В.Э. IBM-PC для пользователя. М.: Инфра-М, 1995г.
    2. Попов В.Б. TURBO PASCAL для школьников. М.: ”Финансы и статистика”1996г.
    3. В.С. Зубов Программирование на языке  TURBO PASCAL. Москва, 1997г.
    4. С. Симонович. WINDOWS 98. Учебный курс. 1999г. 

 


Информация о работе Теоретический материал по теме: «Массивы»