Добавил:
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
#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;
}
Соседние файлы в папке Практика