Отчет по курсовой работе

Автор работы: Пользователь скрыл имя, 16 Мая 2013 в 14:18, курсовая работа

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

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

Содержание

Задача………………………………………………………………………3
Описание функций…...……………………………………………………4
Результаты тестирования программы…………………………...……….5
Разработанное программное средство……………….……….…….……6

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

Kursovaya_rabota.docx

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



Министерство  образования  и науки Российской Федерации

Федеральное агентство образования

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

“ОРЕНБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ”

 

Факультет информационных технологий

 

Кафедра программного обеспечения средств вычислительной техники

и автоматизированных систем

 

 

 

ОТЧЕТ

по курсовой работе

по  курсу “Программирование ”

Ведомости на факультете журналистики.

ОГУ 230100.62.9012.171 К

 

 

 

 

 

 

 

 

 

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

_________________ Юркевская Л.А.

"____" ___________________  2013г.

Исполнитель

студент гр. 11ИВТ(б)ПОВТ

___________________ Муканаев Р.Н.

"____" ___________________  2013г.

 

 

Оренбург 2013

 

Содержание

 

Задача………………………………………………………………………3

Описание функций…...……………………………………………………4

Результаты тестирования программы…………………………...……….5

Разработанное программное  средство……………….……….…….……6

 

Задача

 

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

Описание функций.

 

1.Функция ввода значений в массивы.

 

На входе:

Указатели на массивы содержащий символьные элементы, количество элементов в массиве.

 

По очереди вводим  все  элементы массивов.

 

2. Функция определения  номера для выбора той или  иной группы/предмета/формы контроля и т.д.

 

На входе: Указатель на массив, три целочисленных переменные присвоенные названиям групп/предметов/формы контроля

 

Пока не закончим просмотр ведомостей, повторяем вывод информации на экран с помощью оператора  while.  Все входные данные считываются с файла. В файле содержаться количество групп, их названия, сдающие ими предметы и форма контроля (экзамен/зачет) по этим предметам. Каждый блок данных заполняется в соответствующий массив. Далее реализуем выбор нужных нам данных для ведомости.  Выбираем нужные нам данные из массивов и смотрим ведомость.

 

На выходе: Зачетная/Экзаменационная ведомость, заполненная данными из массивов.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Результаты  тестирования программы.

  1. Читаем входные данные из файла:

 

 

  1. В итоге мы получаем готовые заполненные массивы из данных.

 

  1. Выбираем форму контроля:

 

  1. Выбираем группу, сдающую зачет

        

 

  1. Выбираем предмет:

 

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

 

 

 

Весь ход выолнения программы выглядит следующим образом:

 

 

Блок схема:

 




 

 

 

 

 

 

 

 

 

 


 

 


 

 


 

 


 

 


 

 


 

 





 




 

 


 


 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Разработанное программное  средство

 

#include "stdafx.h"

#include <iostream>

#include <fstream>

#include <string>

using namespace std;

 

struct groups

{

string name;

int colStudents;

string fioStudents[50];

};

 

struct predmets

{

string name;

string prepod;

};

 

int main()

{

setlocale(0,"Rus");

int i, j, nGroups, nPredmets, group, predmet, tmp;

string typeVed;

ifstream in("groups.txt", ios::in);

ifstream in2("predmets.txt", ios::in);

 

in>>nGroups;

groups *arrG = new groups[nGroups];

for(i=0; i<nGroups; i++)

{

in>>arrG[i].name;

in>>arrG[i].colStudents;

for(j=0; j<arrG[i].colStudents; j++)

{

in>>arrG[i].fioStudents[j];

}

cout<<"Группа "<<arrG[i].name<<" успешно сохранена!"<<endl<<endl;

}

 

 

in2>>nPredmets;

predmets *arrP = new predmets[nPredmets];

for(i=0; i<nPredmets; i++)

{

in2>>arrP[i].name;

in2>>arrP[i].prepod;

cout<<"Предмет "<<arrP[i].name<<" успешно сохранён!"<<endl<<endl;

}

while (true)

{

cout<<"\n\nВыберите тип ведомости (0 - зачёт, 1 - экзамен): "; cin>>tmp;

if(tmp) typeVed = "экзамен"; else typeVed = "зачёт";

for(i=0; i<nGroups; i++)

{

cout<<i<<": "<<arrG[i].name<<endl;

}

cout<<"Выберите выберите группу, сдающую "<<typeVed<<": "; cin>>group;

for(i=0; i<nPredmets; i++)

{

cout<<i<<": "<<arrP[i].name<<endl;

}

cout<<"Выберите предмет, который сдаёт группа "<<arrG[group].name<<": "; cin>>predmet;

if(typeVed=="экзамен") cout<<"Экзаменационная ведомость"<<endl; else cout<<"Зачётная ведомость"<<endl;

cout<<"Преподаватель: "<<arrP[predmet].prepod<<endl;

cout<<"Группа: "<<arrG[group].name<<endl;

cout<<"Предмет: "<<arrP[predmet].name<<endl;

cout<<"Список студентов:"<<endl;

for(j=0; j<arrG[group].colStudents; j++)

{

cout<<"- "<<arrG[group].fioStudents[j]<<endl;

}

cout<<"Роспись преподавателя: _______________"<<endl;

}

system("pause");

return 0;

}


Информация о работе Отчет по курсовой работе