+148
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
int main()
{
int chisl,znam,cel;
Fraction fA,fB,fC;
cout<<"Vvedite fA v vide dvux 4isel\n";cin>>fA.chisl>>fA.znam;
cout<<"Vvedite fB v vide dvux 4isel\n";cin>>fB.chisl>>fB.znam;
cout<<"Vvedite celoe chislo\n";cin>>cel;
if ((fA.znam!=0)&&(fB.znam!=0)&&(cel!=0))
{
fC=fA+fB;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0))
cout<<"Summa: "<< chisl << "/" << znam <<'\n';
else
cout<<"Summa: "<< chisl <<'\n';
fC=fA-fB;
fC.getFraction(chisl,znam);
if ((znam!=1)&&(chisl!=0))
cout<<"Raznost: "<< chisl << "/" << znam <<'\n';
else
cout<<"Raznost: "<< chisl <<'\n';
fC=fA*fB;
fC.getFraction(chisl,znam);
if ((znam!=1)&&(chisl!=0))
cout<<"Proizvedenie: "<< chisl << "/" << znam <<'\n';
else
cout<<"Proizvedenie: "<< chisl <<'\n';
fC=fA/fB;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0)&&(znam!=0))
cout<<"Chastnoe: "<< chisl << "/" << znam <<'\n';
else if(znam==0)
cout<<"Chastnogo drobei ne sushestvuet\n";
else
cout<<"Chastnoe: 0\n";
fC=fA+cel;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0))
cout<<"Summa 1 drobi i celogo 4isla: "<< chisl << "/" << znam <<'\n';
else
cout<<"Summa 1 drobi i celogo 4isla: "<< chisl <<'\n';
fC=fA-cel;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0))
cout<<"Raznost 1 drobi i celogo 4isla: "<< chisl << "/" << znam <<'\n';
else
cout<<"Raznost 1 drobi i celogo 4isla: "<< chisl <<'\n';
fC=fA*cel;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0))
cout<<"Proizvedenie 1 drobi i celogo 4isla: "<< chisl << "/" << znam <<'\n';
else
cout<<"Proizvedenie 1 drobi i celogo 4isla: "<< chisl <<'\n';
fC=fA/cel;
fC.getFraction(chisl,znam);
if ((znam!=1)&&(chisl!=0))
cout<<"Chastnoe 1 drobi i celogo 4isla: "<< chisl << "/" << znam <<'\n';
else
cout<<"Chastnoe 1 drobi i celogo 4isla: 0\n";
fC=fB+cel;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0))
cout<<"Summa 2 drobi i celogo 4isla: "<< chisl << "/" << znam <<'\n';
else
cout<<"Summa 2 drobi i celogo 4isla: "<< chisl <<'\n';
fC=fB-cel;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0))
cout<<"Raznost 2 drobi i celogo 4isla: "<< chisl << "/" << znam <<'\n';
else
cout<<"Raznost 2 drobi i celogo 4isla: "<< chisl <<'\n';
fC=fB*cel;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0))
cout<<"Proizvedenie 2 drobi i celogo 4isla: "<< chisl << "/" << znam <<'\n';
else
cout<<"Proizvedenie 2 drobi i celogo 4isla: "<< chisl <<'\n';
fC=fB/cel;
fC.getFraction(chisl,znam);
if ((znam!=1)&&(chisl!=0))
cout<<"Chastnoe 2 drobi i celogo 4isla: "<< chisl << "/" << znam <<'\n';
else
cout<<"Chastnoe 1 drobi i celogo 4isla: 0\n";
fC=~fA;
fC.getFraction(chisl,znam);
if((znam!=1)&&(chisl!=0))
cout<<"Sokrashennaya drob ravna: "<< chisl << "/" << znam <<'\n';
else
cout<<"Sokrashennaya drob ravna: "<< chisl <<'\n';
}
else
cout<<"Znamenatel drobi ili celoe chislo raven nulu, poetomu drobi net"<<'\n';
return 0;
}
Задача. Определить класс натуральная дробь, объекты которого числитель и знаменатель. Надо перегрузить операторы сложения, вычитания, умножения, делания и сокращения дробей, а так же сложения, вычитания, умножения и деления дроби и целого числа. То есть калькулятор дробей фактически. Написал, как-то жестоко получилось. Добавлю сразу, чтобы не было лишних разговоров. Это не задание в универе, сессия закончилась, каникулы, это для интереса, смотрю то, что мы еще не проходили. Кажется условий слишком много, короче ведь можно сделать?
Запостил: ForEveR,
15 Июня 2010
ForEveR 15.06.2010 23:00 # −1
ForEveR 15.06.2010 23:09 # −1
guest 15.06.2010 23:10 # +2
absolut 15.06.2010 23:22 # 0
guest 15.06.2010 23:23 # 0
Webkill 15.06.2010 23:55 # −1
absolut 16.06.2010 00:04 # +3
guest 16.06.2010 00:28 # −2
guest 16.06.2010 09:08 # 0
Webkill 16.06.2010 16:17 # −1
телефоном не пользуюсь, могу ошибаться, не спорю
guest 16.06.2010 16:29 # +1
Webkill 16.06.2010 16:51 # −1
guest 16.06.2010 16:55 # −1
guest 16.06.2010 16:59 # −1
guest 16.06.2010 17:02 # −1
Webkill 16.06.2010 17:03 # −1
guest 16.06.2010 17:07 # −1
Webkill 16.06.2010 17:08 # −2
guest 16.06.2010 17:11 # −2
guest 16.06.2010 17:12 # −2
guest 16.06.2010 17:12 # −2
ForEveR 15.06.2010 23:30 # 0
Просьба удалить этот код администрацию.
guest 15.06.2010 23:34 # −3
guest 15.06.2010 23:45 # −3
guest 15.06.2010 23:45 # −3
guest 16.06.2010 15:02 # −1
Мистер Хэнки 16.06.2010 18:55 # 0
ForEveR 16.06.2010 20:42 # 0
guest 16.06.2010 20:48 # 0
ForEveR 16.06.2010 22:41 # −1
ForEveR 18.06.2010 22:46 # 0