Кресты / Говнокод #3485 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
  69. 69
  70. 70
  71. 71
  72. 72
  73. 73
  74. 74
  75. 75
  76. 76
  77. 77
  78. 78
  79. 79
  80. 80
  81. 81
  82. 82
  83. 83
  84. 84
  85. 85
  86. 86
  87. 87
  88. 88
  89. 89
  90. 90
  91. 91
  92. 92
  93. 93
  94. 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 ForEveR, (Updated )

Комментарии (31) RSS

  • Ах да. Чуть не забыл. Здесь только main. Функции писать смысла особо нет
    Ответить
  • Тю. Еще пара условий недобавлена. В частном. Если числитель равен 1, то выводится только целая часть
    Ответить
  • Быдлотранслит - в топку. Или по-английски латиницей, или по-русски кириллицей.
    Ответить
      • так это было не 10 лет назад? когда заккупали англоцентричный англосаксонский софт и потому кириддица не пахала. неужели щас остались деревенские операторы, где до сих пор латинице1?
        Ответить
        • Ты долбоёб малолетний, латиницей до сих пор пишут, потому что латиниских букв больше влезает, чем кирилических. Скорее всего там UTF-8, но ты в своем дет-саду такого не проходил, ага.
          Ответить
          • > Ты долбоёб малолетний, латиницей до сих пор пишут, потому что латиниских букв больше влезает, чем кирилических

            телефоном не пользуюсь, могу ошибаться, не спорю
            Ответить
  • Как удалить?) Русское полностью скину, а то так читать неудобно

    Просьба удалить этот код администрацию.
    Ответить
  • А я че-то не понял, а где здесь собственно класс дроби?
    Ответить
    • В программе. Сюда по сути влезает только 100 строк => класс никак бы не вместился. А у меня были вопросы ТОЛЬКО по мейну
      Ответить
      • Классно, а ниче, что у тебя строка if ((znam!=1)&&(chisl!=0)) встречается N-е количество раз, сдается мне, что все говно как раз в классе сосредоточено.
        Ответить
        • Ну да. Можно было в классе устроить проверку на знаменатель и числитель
          Ответить
        • А теперь кстати подумай, зачем эта строка встречается. Чтобы не выводить например 2/2, а вывести 2. Или чтобы не выводить 0/1, а выводить просто 0.
          Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8