Autor | Zpráva | ||
---|---|---|---|
winz Profil * |
#1 · Zasláno: 24. 10. 2014, 14:24:46
mam tenhle program a nevim jak se switchem
ma vybrat jednu z moznosti a tu provest #include "stdafx.h" #include "Cisla.h" int Cisla::GetA() const { return a; } int Cisla::GetB() const { return b; } void Cisla::SetA(int v) { a = v; } void Cisla::SetB(int v) { b = v; } int Cisla::Soucet() const { return a + b; } float Cisla::Prumer() const { return (float) (a + b) / 2; } int Cisla::Max() const { int m; if (a > b) m = a; else m = b; return m; } int Cisla::Min() const { int m; if (a < b) m = a; else m = b; return m; } bool Cisla::JeNula() const { /* if (a == 0) return true; else if (b == 0) return true; else return false; */ return (a == 0) || (b == 0); } bool Cisla::JeNulaAll() const { /* if (a == 0) if (b == 0) return true; else return false; else return false; */ /* if (a == 0 && b == 0) return true; else return false; */ return (a == 0 && b == 0); } int Cisla::NSN() const { int n = Max(); int k = Max(); while (true) { if (n % a == 0 && n % b == 0) break; n += k; // n = n + k; } return n; } int Cisla::NSD() const { if ((a <= 0) || (b <= 0)) return -1; int n = Min(); while (n >= 1) { if (a % n == 0 && b % n == 0) break; n--; // n = n - 1 } return n; } int Cisla::Rozdil() const { return a - b; } int Cisla::Soucin() const { return a * b; } float Cisla::Podil() const { if ((a > 0) && (b > 0)) return float(a / b); else return 0; } bool Cisla::JsouStejne() const { return (a == b); } bool Cisla::JsouKladna() const { return (a > 0 && b > 0); } int Cisla::Opacne() const { int m; m = a; return (-m); } int Cisla::Operace(int op) const { switch (op) { case '1': break; case '2': Rozdil; break; case '3': Soucin; break; case '4': Podil; break; case '5': Max; break; case '6': Min; break; default: cout << "no"; break; } return 0; } |
||
Alphard Profil |
Kde konkrétně je problém? Ten kód trochu vypadá jako slepený bez základních znalostí C++. Proměnná op je typu int, pozor na to. A pak by mělo stačit volat patřičné metody jako metody, tj se závorkami.
Dodávám, že další věc je, jak zpracovat výsledek, když si vracíte různý datový typ. Proto jsem hned neupozorňoval na to, že nikam nepřiřazujete výsledek. |
||
Časová prodleva: 10 let
|
0