Скачиваний:
27
Добавлен:
02.05.2014
Размер:
70.14 Кб
Скачать

Уфимский государственный авиационный технический университет

Кафедра АПрИС.

Отчёт по лабораторной работе № 5

по программированию

«Классы».

Выполнил: студент группы САПР -130 Манаев Р. Н.

Проверила: старший преподаватель кафедры АПрИС Бежаева О. Я.

УФА 2007.

Цель работы: Научиться составлять программы, используя классы.

Вариант № 18.

Постановка задачи:

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

    1. Блок схем.

нет

да

нет

да

нет

нет

да да

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

#include<iostream.h>

#include<string.h>

#include<conio.h>

#include <fstream.h>

#define fname "D:\\Руслан\\Проги\\Лаба 4\\f.txt"

#define n 4

class student

{

public:

char surname[10];

int day;

int month;

int year;

};

void main()

{

student s[n],a;

ifstream in(fname);

int i,g;

cout.setf(ios::left);

cout<<"\nIshodniye danniye:\n";

cout<<"\nSurname Day Month Year\n";

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

{

in>>s[i].surname;

in>>s[i].day;

in>>s[i].month;

in>>s[i].year;

cout.width(10); cout<<s[i].surname;

cout.width(5); cout<<s[i].day;

cout.width(6); cout<<s[i].month;

cout.width(6); cout<<s[i].year;

cout<<endl;

}

cout<<"\n";

in.close();

cout<<"Otsortirovannuye danniye:\n\nSurname Day Month Year \n";

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

{

for (j=i+1;j<=n-1;j++)

{

if (strcmp(s[i].surname,s[j].surname)>=0)

{

a =s[i];

s[i] = s[j];

s[j] = a;

}

}

}

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

{

cout.setf(ios::left);

cout.width(10); cout << s[i].surname;

cout.width(5); cout << s[i].day;

cout.width(6); cout << s[i].month;

cout.width(6); cout << s[i].year;

cout << endl;

}

getch();

}

    1. Вводимые данные.

    1. Тестирование программы.

Вывод:

Выполнив лабораторную работу, мы научились составлять программы, используя файлы.