Разработка алгоритма и написание программы на языке Turbo Pascal

Автор работы: Пользователь скрыл имя, 24 Марта 2013 в 11:44, курсовая работа

Краткое описание

Разработать алгоритм и написать программу на языке Turbo Pascal.
Задана матрица (двумерный массив) A размером N x М , состоящая из действительных элементов. Числа M и N вводятся с клавиатуры. Для задания исходной матрицы предусмотреть ввод с клавиатуры или ввод с помощью датчика случайных чисел. Где это необходимо ввести квадратную матрицу. Во всех вариантах вывести исходную матрицу в общепринятом виде и необходимые результаты работы программы.
Сформировать вектор из разностей наибольших и наименьших значений элементов строк. В исходной матрице удалить К-й столбец. К вводится с клавиатуры. Вывести на экран полученную матрицу и вектор.

Прикрепленные файлы: 1 файл

Курсовая вар №6.doc

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

ФЕДЕРАЛЬНОЕ ОБРАЗОВАТЕЛЬНОЕ  УЧРЕЖДЕНИЕ ВЫСШЕГО 

ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ "ГОСУДАРСТВЕННЫЙ 

УНИВЕРСИТЕТ - УЧЕБНО-НАУЧНО-ПРОИЗВОДСТВЕННЫЙ

КОМПЛЕКС"

 

 

Кафедра: «Прикладная  математика и информатика»

 

 

 

Курсовая работа

по дисциплине «Информатика»

 

 

 

 

Работу выполнил студент Кондакова Галина Игоревна

Шифр 120794 Группа 11-ТУ Факультет ПБиТ

Специальность туризм

Курсовая работа защищена с оценкой _________________________

Руководитель ______________             _________________________

подпись                                                                                Ф.И.О.

 

 

 

 

 

 

 

Орел 2012 

МИНЕСТЕРСТВО ОБРАЗОВАНИЯ И  НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственный университет  – учебно-научно-производственный комплекс

 

Кафедра: «Прикладная  математика и информатика»

 

Задание на курсовую работу

 

 

Работу выполнил студент  Кондакова Галина Игоревна

Шифр 120794  Группа 11-ТУ  Факультет  ФПБиТ 

Специальность  Туризм 100400.62

Задание. Вариант №6

1. Разработать алгоритм  и написать программу на языке  Turbo Pascal.

Сформировать вектор из разностей наибольших и наименьших значений элементов строк. В исходной матрице удалить К-й столбец, К вводится с клавиатуры. Вывести на экран полученную матрицу и вектор.

 

2.Построить электронную  таблицу в EXCEL.

По 4-5 адресам находится не менее 15 фирм-арендаторов. Построить для фирм таблицу, отражающую     расчёты за услуги. Вывести на печать с использованием фильтра фирмы, оплатившие услуги не в полном объеме.

Используя имеющиеся  или специально созданные таблицы, построить столбиковую   гистограмму по всем адресам, отражающую итоговые начисления и переплату.

 

3. Вычислить значение функций и начертить их графики в Excel в одной системе координат:

   с шагом 0,2   и  

4. Создать двухтабличную БД и обработать данные в ней посредством выборки и  сортировки; создать запросы и отчеты. Тема для составления БД: Автобусы - Маршруты.

 

5.Разработать три-четыре Web-страницы, посвящённые общей тематике  Турбаза  "Орлиный приют".

 

 

Руководитель____________                        __Демина Е.Г. 

                               подпись                                                     Ф.И.О.

 

 Задание принял к исполнению  «_17_»      Октября   2012 г.

 

 Подпись студента_______________ 

Оглавление

 

 

Задание №1

Разработать алгоритм и написать программу на языке  Turbo Pascal.

Задана матрица (двумерный массив) A размером N x М ,  состоящая из действительных элементов. Числа M и N вводятся с клавиатуры. Для задания исходной матрицы предусмотреть ввод с клавиатуры или ввод с помощью датчика случайных чисел. Где это необходимо ввести квадратную матрицу.  Во всех вариантах вывести исходную матрицу в общепринятом виде и необходимые результаты работы программы.

Сформировать вектор из разностей наибольших и наименьших значений элементов строк. В исходной матрице удалить К-й столбец. К вводится с клавиатуры. Вывести на экран полученную матрицу и вектор.

 

Блок-схема

 

 
 
Листинг программы

program stolb;

var

j,i,n,m,k,d,variant:Integer;

max,min:real;

A:array[1..50,1..50] of integer;

C:array[1..50] of real;

begin

Randomize;

Write('Wwedite kol strok n: ');Readln(n);

Write('Wwedite kol stolbcov m: ');Readln(m);

Write('Wwedite 1(randon) ili 2(vruchnuj): ');Readln(variant);

 

if (variant=1) then

begin

for i:=1 to n do

for j:=1 to m do

A[i,j]:=50-random(100);

end

else

begin

for i:=1 to n do

for j:=1 to m do

begin

write('A[',i,',',j,']=');Read(A[i,j]);

end;

end;

Writeln('Write matrix:');

for i:=1 to n do

Begin

for j:=1 to m do

Write(A[i,j],'   ');

writeln;

end;

Write('Wwedite nomer udaljemogo stolbca k: ');Readln(k);

for i:=1 to n do

Begin

max:=A[i,1]; min:=A[i,1];

for j:=1 to m do

if (A[i,j]>max) then max:=A[i,j]

else if (A[i,j]<min) then min:=A[i,j];

C[i]:=max-min;

end;

Writeln('Polucennij vector:');

for i:=1 to n do

Write(C[i]:2:2,'   ');

Writeln;

for i:=1 to n do

for j:=1 to m do

Begin

if(j>=k)then d:=j+1

else d:=j;

A[i,j]:=A[i,d];

end;

Writeln('Poluchennaj matrix:');

for i:=1 to n do

Begin

for j:=1 to m-1 do

Write(A[i,j],'   ');

writeln;

end;

Readln;

end.

Примеры работы программы

 

 

Задание №2

 

Построение электронных  таблиц.

По 4-5 адресам находится  не менее 15 фирм-арендаторов. Постройте для фирм таблицу, отражающую расчеты за услуги.

Расчет ячеек:

- В графе Начисления: аренда, коммун. платежи, тех. обслуживание рассчитываются как произведение площади аренды на соответствующий коэффициент. Коэффициент берется из таблицы коэффициентов.

- Процент НДС берется  из таблицы коэффициентов и  составляет 10-20%.

Таблица коэффициентов:

С помощью функции  итоги посчитать итоговые суммы по каждому адресу аренды.

Вывести на экран список фирм с использованием фильтра:

Фирмы, оплатившие услуги не в полном объеме.

Построить столбиковую гистограмму по всем адресам, отражающую итоговые начисления и проплату.

 

 

 

 

Таблица фирм-арендаторов

N

Фирма-арендатор

Адрес

Занимаемая площадь

На начало месяца

Начислено

Итого начислено

Проплачено

Итого проплачено

На конец  месяца

Статус

задолженность

переплата

аренда

НДС аренды

коммун. платежи

НДС

тех. обслуживание

аренда

коммун. платежи

тех. обслуживание

задолженность

переплата

                                     

1

Магазин № 1

ул. Гуртьева, 16

10

20,00р.

 

83,00р.

14,94р.

65,00р.

11,70р.

39,00р.

213,64р.

100,00р.

80,00р.

40,00р.

220,00р.

13,64р.

0,00р.

Долг

2

Магазин № 2

ул. Пасадская, 2а

8

205,00р.

 

66,40р.

11,95р.

52,00р.

9,36р.

31,20р.

170,91р.

70,00р.

62,00р.

35,00р.

167,00р.

208,91р.

0,00р.

Долг

3

Магазин № 3

ул. Щепная, 52

6

15,00р.

 

49,80р.

8,96р.

39,00р.

7,02р.

23,40р.

128,18р.

60,00р.

46,00р.

27,00р.

133,00р.

10,18р.

0,00р.

Долг

4

Магазин № 4

ул. Пушкина, 16

4

13,00р.

 

33,20р.

5,98р.

26,00р.

4,68р.

15,60р.

85,46р.

40,00р.

31,00р.

20,00р.

91,00р.

7,46р.

0,00р.

Долг

5

Магазин № 5

ул. Пасадская, 2а

3

5,00р.

 

24,90р.

4,48р.

19,50р.

3,51р.

11,70р.

64,09р.

30,00р.

25,00р.

15,00р.

70,00р.

0,00р.

0,91р.

 

6

Магазин № 6

ул. Щепная, 52

10

 

40,00р.

83,00р.

14,94р.

65,00р.

11,70р.

39,00р.

213,64р.

100,00р.

80,00р.

40,00р.

220,00р.

0,00р.

46,36р.

 

7

Магазин № 7

ул. Гуртьева, 16

9

 

27,00р.

74,70р.

13,45р.

58,50р.

10,53р.

35,10р.

192,28р.

85,00р.

70,00р.

40,00р.

195,00р.

0,00р.

29,72р.

 

8

Магазин № 8

ул. Щепная, 52

8

 

28,00р.

66,40р.

11,95р.

52,00р.

9,36р.

31,20р.

170,91р.

80,00р.

62,00р.

30,00р.

172,00р.

0,00р.

29,09р.

 

9

Магазин № 9

ул. Пушкина, 16

11

 

23,60р.

91,30р.

16,43р.

71,50р.

12,87р.

42,90р.

235,00р.

105,00р.

85,00р.

48,00р.

238,00р.

0,00р.

26,60р.

 

10

Магазин № 10

ул. Щепная, 52

13

 

24,30р.

107,90р.

19,42р.

84,50р.

15,21р.

50,70р.

277,73р.

130,00р.

100,00р.

60,00р.

290,00р.

0,00р.

36,57р.

 

11

Магазин № 11

ул. Гуртьева, 16

12

15,00р.

 

99,60р.

17,93р.

78,00р.

14,04р.

46,80р.

256,37р.

120,00р.

95,00р.

55,00р.

270,00р.

1,37р.

0,00р.

Долг

12

Магазин № 12

ул. Пушкина, 16

13

39,00р.

 

107,90р.

19,42р.

84,50р.

15,21р.

50,70р.

277,73р.

130,00р.

100,00р.

50,00р.

280,00р.

36,73р.

0,00р.

Долг

13

Магазин № 13

ул. Пушкина, 16

10

0,30р.

 

83,00р.

14,94р.

65,00р.

11,70р.

39,00р.

213,64р.

100,00р.

79,00р.

45,00р.

224,00р.

0,00р.

10,06р.

 

14

Магазин № 14

ул. Гуртьева, 16

9

28,00р.

 

74,70р.

13,45р.

58,50р.

10,53р.

35,10р.

192,28р.

90,00р.

70,00р.

40,00р.

200,00р.

20,28р.

0,00р.

Долг

15

Магазин № 15

ул. Пасадская, 2а

4

 

15,40р.

33,20р.

5,98р.

26,00р.

4,68р.

15,60р.

85,46р.

40,00р.

31,00р.

22,22р.

93,22р.

0,00р.

23,16р.

 

16

Магазин № 16

ул. Щепная, 52

7

 

14,30р.

58,10р.

10,46р.

45,50р.

8,19р.

27,30р.

149,55р.

69,00р.

53,00р.

0,00р.

122,00р.

13,25р.

0,00р.

Долг

17

Магазин № 17

ул. Пушкина, 16

15

 

20,00р.

124,50р.

22,41р.

97,50р.

17,55р.

58,50р.

320,46р.

150,00р.

120,00р.

60,00р.

330,00р.

0,00р.

29,54р.

 

Итого

 

340,30р.

192,60р.

1 261,60р.

227,09р.

988,00р.

177,84р.

592,80р.

3 247,33р.

1 499,00р.

1 189,00р.

627,22р.

3 315,22р.

311,82р.

232,01р.

8


 

По данным таблицы 17 фирм-арендаторов, из которых статус «Долг» имеют 8.

Фирмы арендую помещения  по 4 адресам: ул. Гуртьева, 16; ул. Пушкина, 16; ул. Щепная, 52 и ул. Пасадская, 2а.

 

 

Таблица в формульном виде:

N

Фирма-арендатор

Адрес

Занимаемая площадь

На начало месяца

Начислено

Итого начислено

задолженность

переплата

аренда

НДС аренды

коммун. платежи

НДС

тех. обслуживание

                       

1

Магазин № 1

ул. Гуртьева, 16

10

20

 

=D4*$C$29

=G4*$C$32

=D4*$C$30

=I4*$C$32

=D4*$C$31

=G4+H4+I4+K4+J4

2

Магазин № 2

ул. Пасадская, 2а

8

205

 

=D5*$C$29

=G5*$C$32

=D5*$C$30

=I5*$C$32

=D5*$C$31

=G5+H5+I5+K5+J5

3

Магазин № 3

ул. Щепная, 52

6

15

 

=D6*$C$29

=G6*$C$32

=D6*$C$30

=I6*$C$32

=D6*$C$31

=G6+H6+I6+K6+J6

4

Магазин № 4

ул. Пушкина, 16

4

13

 

=D7*$C$29

=G7*$C$32

=D7*$C$30

=I7*$C$32

=D7*$C$31

=G7+H7+I7+K7+J7

5

Магазин № 5

ул. Пасадская, 2а

3

5

 

=D8*$C$29

=G8*$C$32

=D8*$C$30

=I8*$C$32

=D8*$C$31

=G8+H8+I8+K8+J8

6

Магазин № 6

ул. Щепная, 52

10

 

40

=D9*$C$29

=G9*$C$32

=D9*$C$30

=I9*$C$32

=D9*$C$31

=G9+H9+I9+K9+J9

7

Магазин № 7

ул. Гуртьева, 16

9

 

27

=D10*$C$29

=G10*$C$32

=D10*$C$30

=I10*$C$32

=D10*$C$31

=G10+H10+I10+K10+J10

8

Магазин № 8

ул. Щепная, 52

8

 

28

=D11*$C$29

=G11*$C$32

=D11*$C$30

=I11*$C$32

=D11*$C$31

=G11+H11+I11+K11+J11

9

Магазин № 9

ул. Пушкина, 16

11

 

23,6

=D12*$C$29

=G12*$C$32

=D12*$C$30

=I12*$C$32

=D12*$C$31

=G12+H12+I12+K12+J12

10

Магазин № 10

ул. Щепная, 52

13

 

24,3

=D13*$C$29

=G13*$C$32

=D13*$C$30

=I13*$C$32

=D13*$C$31

=G13+H13+I13+K13+J13

11

Магазин № 11

ул. Гуртьева, 16

12

15

 

=D14*$C$29

=G14*$C$32

=D14*$C$30

=I14*$C$32

=D14*$C$31

=G14+H14+I14+K14+J14

12

Магазин № 12

ул. Пушкина, 16

13

39

 

=D15*$C$29

=G15*$C$32

=D15*$C$30

=I15*$C$32

=D15*$C$31

=G15+H15+I15+K15+J15

13

Магазин № 13

ул. Пушкина, 16

10

0,3

 

=D16*$C$29

=G16*$C$32

=D16*$C$30

=I16*$C$32

=D16*$C$31

=G16+H16+I16+K16+J16

14

Магазин № 14

ул. Гуртьева, 16

9

28

 

=D17*$C$29

=G17*$C$32

=D17*$C$30

=I17*$C$32

=D17*$C$31

=G17+H17+I17+K17+J17

15

Магазин № 15

ул. Пасадская, 2а

4

 

15,4

=D18*$C$29

=G18*$C$32

=D18*$C$30

=I18*$C$32

=D18*$C$31

=G18+H18+I18+K18+J18

16

Магазин № 16

ул. Щепная, 52

7

 

14,3

=D19*$C$29

=G19*$C$32

=D19*$C$30

=I19*$C$32

=D19*$C$31

=G19+H19+I19+K19+J19

17

Магазин № 17

ул. Пушкина, 16

15

 

20

=D20*$C$29

=G20*$C$32

=D20*$C$30

=I20*$C$32

=D20*$C$31

=G20+H20+I20+K20+J20

Итого

 

=СУММ(E4:E24)

=СУММ(F4:F24)

=СУММ(G4:G24)

=СУММ(H4:H24)

=СУММ(I4:I24)

=СУММ(J4:J24)

=СУММ(K4:K24)

=СУММ(L4:L24)


 

 

 

Продолжение таблицы  в формульном виде:

Проплачено

Итого проплачено

На конец  месяца

Статус

аренда

коммун. платежи

тех. обслуживание

задолженность

переплата

             

100

80

40

=M4+N4+O4

=ЕСЛИ(E4+L4-F4-P4>0;E4+L4-F4-P4;0)

=ЕСЛИ(F4+P4-E4-L4>0;F4+P4-E4-L4;0)

=ЕСЛИ(Q4>0;"Долг";"")

70

62

35

=M5+N5+O5

=ЕСЛИ(E5+L5-F5-P5>0;E5+L5-F5-P5;0)

=ЕСЛИ(F5+P5-E5-L5>0;F5+P5-E5-L5;0)

=ЕСЛИ(Q5>0;"Долг";"")

60

46

27

=M6+N6+O6

=ЕСЛИ(E6+L6-F6-P6>0;E6+L6-F6-P6;0)

=ЕСЛИ(F6+P6-E6-L6>0;F6+P6-E6-L6;0)

=ЕСЛИ(Q6>0;"Долг";"")

40

31

20

=M7+N7+O7

=ЕСЛИ(E7+L7-F7-P7>0;E7+L7-F7-P7;0)

=ЕСЛИ(F7+P7-E7-L7>0;F7+P7-E7-L7;0)

=ЕСЛИ(Q7>0;"Долг";"")

30

25

15

=M8+N8+O8

=ЕСЛИ(E8+L8-F8-P8>0;E8+L8-F8-P8;0)

=ЕСЛИ(F8+P8-E8-L8>0;F8+P8-E8-L8;0)

=ЕСЛИ(Q8>0;"Долг";"")

100

80

40

=M9+N9+O9

=ЕСЛИ(E9+L9-F9-P9>0;E9+L9-F9-P9;0)

=ЕСЛИ(F9+P9-E9-L9>0;F9+P9-E9-L9;0)

=ЕСЛИ(Q9>0;"Долг";"")

85

70

40

=M10+N10+O10

=ЕСЛИ(E10+L10-F10-P10>0;E10+L10-F10-P10;0)

=ЕСЛИ(F10+P10-E10-L10>0;F10+P10-E10-L10;0)

=ЕСЛИ(Q10>0;"Долг";"")

80

62

30

=M11+N11+O11

=ЕСЛИ(E11+L11-F11-P11>0;E11+L11-F11-P11;0)

=ЕСЛИ(F11+P11-E11-L11>0;F11+P11-E11-L11;0)

=ЕСЛИ(Q11>0;"Долг";"")

105

85

48

=M12+N12+O12

=ЕСЛИ(E12+L12-F12-P12>0;E12+L12-F12-P12;0)

=ЕСЛИ(F12+P12-E12-L12>0;F12+P12-E12-L12;0)

=ЕСЛИ(Q12>0;"Долг";"")

130

100

60

=M13+N13+O13

=ЕСЛИ(E13+L13-F13-P13>0;E13+L13-F13-P13;0)

=ЕСЛИ(F13+P13-E13-L13>0;F13+P13-E13-L13;0)

=ЕСЛИ(Q13>0;"Долг";"")

120

95

55

=M14+N14+O14

=ЕСЛИ(E14+L14-F14-P14>0;E14+L14-F14-P14;0)

=ЕСЛИ(F14+P14-E14-L14>0;F14+P14-E14-L14;0)

=ЕСЛИ(Q14>0;"Долг";"")

130

100

50

=M15+N15+O15

=ЕСЛИ(E15+L15-F15-P15>0;E15+L15-F15-P15;0)

=ЕСЛИ(F15+P15-E15-L15>0;F15+P15-E15-L15;0)

=ЕСЛИ(Q15>0;"Долг";"")

100

79

45

=M16+N16+O16

=ЕСЛИ(E16+L16-F16-P16>0;E16+L16-F16-P16;0)

=ЕСЛИ(F16+P16-E16-L16>0;F16+P16-E16-L16;0)

=ЕСЛИ(Q16>0;"Долг";"")

90

70

40

=M17+N17+O17

=ЕСЛИ(E17+L17-F17-P17>0;E17+L17-F17-P17;0)

=ЕСЛИ(F17+P17-E17-L17>0;F17+P17-E17-L17;0)

=ЕСЛИ(Q17>0;"Долг";"")

40

31

22,22

=M18+N18+O18

=ЕСЛИ(E18+L18-F18-P18>0;E18+L18-F18-P18;0)

=ЕСЛИ(F18+P18-E18-L18>0;F18+P18-E18-L18;0)

=ЕСЛИ(Q18>0;"Долг";"")

69

53

0

=M19+N19+O19

=ЕСЛИ(E19+L19-F19-P19>0;E19+L19-F19-P19;0)

=ЕСЛИ(F19+P19-E19-L19>0;F19+P19-E19-L19;0)

=ЕСЛИ(Q19>0;"Долг";"")

150

120

60

=M20+N20+O20

=ЕСЛИ(E20+L20-F20-P20>0;E20+L20-F20-P20;0)

=ЕСЛИ(F20+P20-E20-L20>0;F20+P20-E20-L20;0)

=ЕСЛИ(Q20>0;"Долг";"")

=СУММ(M4:M24)

=СУММ(N4:N24)

=СУММ(O4:O24)

=СУММ(P4:P24)

=СУММ(Q4:Q24)

=СУММ(R4:R24)

=СЧЁТЕСЛИ(S4:S24; "Долг")

Информация о работе Разработка алгоритма и написание программы на языке Turbo Pascal