Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Progi / lesson 1 / Практика / Lava 1b-2

.txt
Скачиваний:
35
Добавлен:
28.03.2015
Размер:
3 Кб
Скачать
#include "StdAfx.h"
#include <iostream>
#include <windows.h>
#include <string.h>

using namespace std;

class OBCH
{
public:
float Stoi(); // Вычесление стоимости
int GetVes();
float GetStoi();
void Init(int m,float s); // задание начальных значений полей
private:
int ves;
float sto;
};

int OBCH::GetVes(){
return ves;
}

float OBCH::GetStoi(){
return sto;
}

void OBCH::Init(int v,float s)
{
ves=v;
sto=s;
}


float OBCH::Stoi()
{
return (ves*sto);
}

class Mebel
{
public:
char* GetNazvanie(); // возвращает строку с названием
void PutNazvanie(char *s); // задание Названия мебели
OBCH Best(); // выбрать из трёх результатов лучший и вернуть
void Init( char *f,int v1,float s1,int v2,float s2,int v3,float s3); // задание названия и значений ves,sto обеим результатам

private:
char Nazvanie[30]; // Название
OBCH FirstRezult; // первый результат
OBCH SecondRezult; // второй результат
OBCH FreeRezult; // третий результат
};

char* Mebel::GetNazvanie()
{
return Nazvanie;
}

void Mebel::PutNazvanie(char *s)
{
strcpy_s(Nazvanie,s);
}

void Mebel::Init( char *f,int v1,float s1,int v2,float s2,int v3,float s3)
{
strcpy_s(Nazvanie,f);
FirstRezult.Init(v1,s1); // FirstRezult.ves=v1 FirstRezult.sto=s1
SecondRezult.Init(v2,s2); // SecondRezult.ves=v2 SecondRezult.sto=s2
FreeRezult.Init(v3,s3); // SecondRezult.ves3=m3 SecondRezult.sto=s3
}

OBCH Mebel::Best()
{
float sto1,sto2,sto3; // секунды первого, второго и третьего результатов
sto1=FirstRezult.Stoi(); // вычисление числа стоимости 1 результата
sto2=SecondRezult.Stoi(); // вычисление числа стоимости 2 результата
sto3=FreeRezult.Stoi(); // вычисление числа стоимости 3 результата
if (sto1>sto2 || sto1>sto3)
return FirstRezult;
else if (sto2>sto1 || sto2>sto3)
return SecondRezult;
else
return FreeRezult;
}



int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_ALL, "Russian"); /*setlocale( LC_CTYPE, ".1251" ); */

OBCH a,b;
Mebel F,S;
char c[30];
float P,L;

a.Init(250,4);
b.Init(250,2);

P=a.Stoi();
L=b.Stoi();

// тест для задания и получения фамилий спортсменов
F.PutNazvanie("First"); // фамилия у P ->First
strcpy_s(c,F.GetNazvanie());
printf("%s - %f",c,P); // вывод извлеченного названия Pu
printf("\n");
S.PutNazvanie("Second"); // название у Z ->Me
strcpy_s(c,S.GetNazvanie());
printf("%s - %f",c,L); // вывод извлеченного названия Me
printf("\n");



Mebel K,N;
OBCH sb,nb;
float ssto,nsto;
K.Init("So",1,15,2,5,4,4);
N.Init("Na",3,5,1,40,1,2);
sb=S.Best();
nb=N.Best();
ssto=sb.Stoi(); // число секунд во времени pb (75)
nsto=nb.Stoi(); // число секунд во времени zb


if(ssto<nsto) // Что лучше
printf("S лучше\n");
else
printf("N лучше\n");

system("pause");
return 0;
}
Соседние файлы в папке Практика