Автор работы: Пользователь скрыл имя, 19 Октября 2010 в 18:51, Не определен
Курсовая работа
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ РФ
Мценский филиал образовательного учреждения
высшего профессионального образования
«Орловский
государственный технический университет»
Кафедра информатики
КУРСОВАЯ РАБОТА
по
информатике
Студент
группы
Направление:
Руководитель:
Оценка
защиты ___________________
2010
СОДЕРЖАНИЕ
Задание №1. Работа с табличным процессором Excel 3
Задание №2. Работа с СУБД Access 7
ЗАДАНИЕ №3. ПРОГРАММИРОВАНИЕ НА АЛГОРИТМИЧЕСКОМ ЯЗЫКЕ ПАСКАЛЬ 11
литература 19
1.1 В среде Excel на Листе 1 была создана таблица : ячейки A3:D22, E1:I2 заполнялись вручную, а ячейки F7:J28 с помощью формул =ЕСЛИ(D3=$E$2;1;0) , =ЕСЛИ(D3=$F$2;1;0), =ЕСЛИ(D3=$G$2;1;0), =ЕСЛИ(D3=$H$2;1;0) и =ЕСЛИ(D3="н/я";1;0)
1.2 Используя встроенные функции Excel, были даны ответы на вопросы:
а) в ячейки A23:A29 было внесено текстовое пояснение; в ячейку B25 была внесена формула СУММ(E3:E22), в ячейку B26 поместили формулу СУММ(F3:F22), в ячейку B27 – СУММ(G3:G22), в B28 формула СУММ(H3:H22), а в ячейку B29 поместили формулу СУММ(I3:I22).
б) в ячейку B23 была внесена формула СЧЁТ(A3:A22).
Лист 1 переименован в Математика. Результат представлен на рисунке 1.
Рисунок 1 – Экзаменационная ведомость по математике
Рисунок 2 – Экзаменационная ведомость по информатике
Для выполнения задания 1.4 и 1.5 был создан лист Стипендия.
Для нахождения среднего балла
или задолженности по предмету
в ячейку D2 занесена формула: =ЕСЛИ(ИЛИ(математика!D3=2;
Для начисления стипендии была в ячейку E2 занесена формула:
=ЕСЛИ(И(D2>=4;D2<="задолжник")
Для начисления надбавки в ячейку F2 занесена формула:
=ЕСЛИ(И(D2>4;D2<="
");"+25%";" ") и скопирована
в ячейки F2:F21. Результат представлен
на рисунке 3.
Рисунок 3 – Итоговая стипендиальная ведомость
1.6 Для диаграммы динамики двух оценок была использована таблица вида:
Рисунок 4 – Результаты сдачи экзаменов по математике и информатике
Полученная диаграмма имеет вид, представленный на рисунке 5.
Рисунок
5 – Динамика экзаменационных оценок
по предметам
Для выполнения задания была создана новая база данных и для создания таблицы «Студенты групп» был произведен импорт внешних данных из созданной ранее электронной таблицы с листа «Математика». Изменена структура таблицы и добавлены поля:
Группа – текстовый;
Год рождения – числовой.
Создана новая таблица «группы». Структура таблицы имеет вид, представленный на рисунке 6.
Рисунок 6 – Структура «группы » в Конструкторе
Готовая таблица имеет вид, представленный на рисунке 7.
Рисунок 7 – Таблица «группы»
По этим таблицам была создана Схема данных и построена форма для ввода и редактирования данных «группы »
Далее была создана таблица «данные сессии». Структура представлена на рисунке 8.
Рисунок
8 - Структура «данные сессии»
в Конструкторе
Готовая таблица имеет вид, представленный на рисунке 9.
Рисунок 9 – Таблица «Данные сессии»
Была создана новая Схема данных, представленная на рисунке 10 и построена Общая форма ввода и редактирования данных
Рисунок
10 – Схема данных
Далее были созданы следующие запросы:
Должники по каждому предмету (рисунок 11-13).
Рисунок 11 – Структура запроса Должники по математике
Рисунок 12 – Структура запроса Должники по информатике
Рисунок 13 – Структура запроса Должники по микроэкономике
Статистика по студентам хорошистам и отличникам (рисунок 14).
Рисунок 14 - Структура запроса Хорошисты и отличники
Рисунок
15 - Средний балл по каждой группе
В
заданной целочисленной матрице 6x6
вывести индексы всех ее седловых
точек (элемент матрицы называется
седловой точкой, если он является наименьшим
в своей строке и одновременно
наибольшим в своем столбце, или
наоборот, наибольшим в своей строке
и наименьшим в своем столбце).
3.1 Программа на языке Паскаль
Исходный текст
program new;
const size = 6;
type point = record
x:integer;
y:integer;
value:integer;
end;
var count:integer;
var arr:array[1..size] of array [1..size] of integer;
var arr1:array[1..size] of array [1..size] of integer;
var maxString: array[1..size] of point;
var minString: array[1..size] of point;
var maxCol : array[1..size] of point;
var minCol : array[1..size] of point;
var t:integer; i:integer; j:integer;
var result:array[1..size*size] of point;
begin
count := 0;
for i:=1 to size do
begin
for j:=1 to size do
begin
writeln('vvedite ',j,' element ',i,' stroki');
readln(arr[i][j]);
end;
end;
for i:=1 to size do
begin
for j:=1 to size do
begin
write(arr[i][j]:5,' ')
end;
writeln;
end;
for i:=1 to size do
begin
maxString[i].y := 1;
maxString[i].value := arr[i][1];
minString[i].y := 1;
minString[i].value := arr[i][1];
for j:=1 to size do
begin
maxCol[j].y := 1;
maxCol[j].value := arr[1][j];
minCol[j].y := 1;
minCol[j].value := arr[1][j];
if(arr[i][j]>maxString[i].
then
begin
maxString[i].value := arr[i][j];
maxString[i].y := j;
end;
if(arr[i][j]<minString[i].
then
begin
minString[i].value := arr[i][j];
minString[i].y := j;
end;
end;
end;
for j:=1 to size do
begin
maxCol[j].y := 1;
maxCol[j].value := arr[1][j];
minCol[j].y := 1;
minCol[j].value := arr[1][j];
for i:=1 to size do
begin
if(arr[i][j]<minCol[j].value)
then
begin
minCol[j].value := arr[i][j];
minCol[j].y := i;
end;
if(arr[i][j]>maxCol[j].value)
then
begin
maxCol[j].value := arr[i][j];
maxCol[j].y := i;
end;
end;
end;
Программа разработана для ПЭВМ типа IBM PC и отлажена в среде Turbo-Pascal.
Программа почти полностью соответствует приведенной ниже блок-схеме.
3.2 Блок-схема программы
3.3 Результаты расчета
После компиляции и запуска программы произведено задание исходных данных и получен требуемый результат.
Экран работы программы имеет вид: