Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Звіт_ООП.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
586.36 Кб
Скачать

Міністерство освіти і науки, молоді та спорту України

Дніпропетровський коледж ракетно-космічного машинобудування

Дніпропетровського національного університету імені Олеся Гончара

ЗВІТ

з лабораторних робіт

з дисципліни «Об’єктно-орієнтоване програмування»

Спеціальність 5.05010301

Група ПЗ-10-1

Виконав Медніков М.Є

Перевірила Добровольська Л.Ф.

2012

ЗМІСТ

Лабораторна робота № 1………………………………………………………… 3

Лабораторна робота № 2………..………….………………………….……… 5

Лабораторна робота № 3-4……...……………………………………………… 11

Лабораторна робота № 5-6……...……………………………………………… 15

Лабораторна робота № 7-8……...……………………………………………… 22

Лабораторна робота № 9-10……...…………………………………………… 27

Лабораторна робота № 11-12……...…………………………………………… 34

Лабораторна робота № 13-14……...…………………………………………… 39

Лабораторна робота № 15-16……...…………………………………………… 47

Лабораторна робота № 17-18……...…………………………………………… 19

Лабораторна робота №1

Знайомство з системою програмування Microsoft Visual C++

Мета: ознайомитись з системою програмування Microsoft Visual C++ та створити простий проект.

Хід роботи

Microsoft Visual Studio 6.0 це система програмування , до складу якої входить IDE (програмний продукт, що включає в собі текстовий редактор, компілятор, відгадчик і довідкову систему).

Середовище розробки дозволяє будувати проекти різних типів , орієновані на різні сфери застосування.

  1. Створив простий додаток типу

  2. Додав до проекту новий файл.

  3. Додав наявний файл.

  4. Створив та захистив звіт.

Код програми основної функції

// lr1.cpp : Defines the entry point for the console application.

//

#include "stdafx.h"

int main(int argc, char* argv[])

{

printf("Hello World!\n");

printf("Hello!!!\n");

return 0;

}

Код функції наявного файлу

#include "stdafx.h"

#include <iostream.h>

int jmain()

{int x=0,sum=0;

bool flag=true;

while(flag==true)

{

cout<<" enter x "<<endl;

cin>>x;

if(x>0)

{

sum+=x;

continue;

}

flag=false;

}

cout<<"Summ = "<<sum<<endl;

return 0;

}

Копія вікна виконання програми

Висновок: Під час лабораторної роботи я ознайомився з системою програмування Microsoft Visual C++ та створила простий проект.

Лабораторна робота №2

Створення простого проекту.

Мета: Отримання навичок створення простого проекту у середовищі MVC++.

Хід роботи

  1. Створив програму, на основі прикладу, у якому оголошується цілочисельна змінна х та покажчик на неї рх, цій змінній привласнюється значенння 5. Також оглошується дійсна змінна у та покажчик на неї ру, цій змінній привласнюється значенння 5.67, а потім на екран виводяться значення та адреса зміної та значення покажчика.

Код програми:

// 2.cpp: определяет точку входа для консольного приложения.

//

#include "stdafx.h"

#include <iostream>

#include <conio.h>

using namespace std;

Int main(int argc, char* argv[])

{

int x=5;

int*px=&x;

double y=5.67;

double*py=&y;

cout<<"Value x\\t\t"<<x<<endl;

cout<<"Adress x\t"<<&x<<endl;

cout<<" Pointer px\t"<<px<<endl<<endl;

cout<<"Value y\\t\t"<<y<<endl;

cout<<"Adress y\t"<<&y<<endl;

cout<<" Pointer py\t"<<py<<endl<<endl;

getch();

return 0;

}

Копія вікна виконання програми:

  1. Створив програму , що розіменує покажчика.

Код програми:

#include "stdafx.h"

#include <iostream>

#include <conio.h>

using namespace std;

Int main(int argc, char* argv[])

{

double v1=0.05,v2=2.5e32;

double*pv;

pv=&v1;

cout<<"pv=\t"<<pv<<endl;

cout<<"v1=\t"<<v1<<endl;

cout<<"*pv=\t"<<*pv<<endl;

pv=&v2;

cout<<"pv=\t"<<pv<<endl;

cout<<"v2=\t"<<v2<<endl;

cout<<"*pv=\t"<<*pv<<endl;

getch();

return 0;

}

Копія вікна виконання програми:

  1. Створив програму з операторами розподілу памʼяті new i delete

Код програми:

// 2_3.cpp: определяет точку входа для консольного приложения.

//

#include "stdafx.h"

#include <iostream>

#include <conio.h>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{

setlocale(LC_ALL,"rus"); //русификация

int*pi;

unsigned short*pu;

pi=new int;

pu=new unsigned short(200);

double*pd=new double;

float*pf=new float(-2.15);

cout<<" указатели "<<endl<<"pi\t"<<pi<<endl<<"pu\t"<<pu<<endl;

cout<<"pd\t"<<pd<<endl<<"pf\t"<<pf<<endl;

cout<<endl<<endl<<" переменные "<<endl;

cout<<"*pu\t"<<*pu<<endl<<"*pf\t"<<*pf<<endl;

cout<<endl<<" Переменная без инициализации "<<endl;

cout<<"*pi\t"<<endl<<"*pd\t"<<*pd<<endl;

*pi=-*pu;

*pd=-*pf;

cout<<endl<<endl<<"Переменнная после инициализации "<<endl;

cout<<"*pi\t"<<*pi<<endl<<"*pi\t"<<*pi<<endl;

getch();

return 0;

}

Копія вікна виконання програми:

  1. Створив програму роботи з масивами з використанням вказівника

Код програми:

#include "stdafx.h"

#include <iostream>

#include <conio.h>

using namespace std;

int main()

{

int array[]={10,20,30,40,50};

double d_ar[]={3.15,2.17,4.9,8.7,7.0};

int d_s=sizeof(d_ar)/sizeof(d_ar[0]);

int size=sizeof(array)/sizeof(array[0]);

for(int i=0;i<size;i++)

cout<<*(array+i)<<'\t';

cout<<endl;

int*p=array;

int count=0;

do

{

cout<<*p++<<'\t';

count++;

}

while(count<size);

cout<<endl;

for(int i=0;i<d_s;i++)

cout<<*(d_ar+i)<<'\t';

cout<<endl;

double*dp=d_ar;

int d_c=0;

do

{

cout<<*dp++<<'\t';

d_c++;

}

while(d_c<d_s);

cout<<endl;

getch();

return 0;

}

Копія вікна виконання програми:

  1. Створив програму роботи зі структурами з використанням вказівника.

Код програми:

#include "stdafx.h"

#include <conio.h>

#include <iostream>

using namespace std;

int main()

{

setlocale(LC_ALL,"rus");

struct Name

{

char f_name[20];

char s_name[20];

};

struct Age

{

int age;

};

struct Adress

{

char city[20];

char street[20];

int house;

};

struct student

{Name n;

Age ag;

Adress adr;

};

student*p=new student;

cout<<" Введите город "<<endl;

cin>>p->adr.city;

cout<<" Введите имя "<<endl;

cin>>p->n.f_name;

cout<<" Введите возраст "<<endl;

cin>>p->ag.age;

getch();

return 0;

}

Копія вікна виконання програми:

Висновок: Під час виконання лабораторної роботи я навчився використовувати функції взяття адресу, розіменовувати покажчики, працювати з операторами new i delete, масивами та структурами з використанням покажчика.

Лабораторна робота №3-4

Проектування та створення класу; складання методу класу та організація роботи з методом класу в програмі.

Мета: навчитись проектувати та створювати класи, проектувати методи класу; підлагоджувати та тестувати програми, які працюють з класами; використати методи класу в програмі.

Хід роботи

Частина 1

  1. Створив проект типу Win32 Console Application.

  2. Додав до нього клас myClass.

  3. До файлу специфікації myClass.h додав наступний код

#pragma once

class myClass

{

public:

myClass();

virtual ~myClass();

unsigned int factorial(unsigned int i);

};

  1. До файлу реалізації myClass.cpp додав наступний код

#include "stdafx.h"

#include "myClass.h"

#include <iostream>

using namespace std;

myClass::myClass()

{

cout << "myClass created!\n" << endl;

}

myClass::~myClass()

{

cout << "myClass destroyed!\n" << endl;

}

unsigned int myClass :: factorial(unsigned int i)

{

int res = i;

while (i>1)

res *= --i;

return res;

  1. До головної функції додав наступний код

// lab3.cpp: определяет точку входа для консольного приложения.

//

#include "stdafx.h"

#include <iostream>

#include "myClass.h"

#include <stdlib.h>

using namespace std;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]