Commit 8a0db796 by Szeberényi Imre

typo, kommentek

parent aa87218a
# Egy kis genetika # Egy kis genetika
**Szorgalmi feladat Karsa Zoltántól**. (extra pont: 2) **Szorgalmi feladat Karsa Zoltántól**. (extra pont: 2)
# Egy kis genetika
Genetikai kódunkat a következő 4 bázis alkotja: Genetikai kódunkat a következő 4 bázis alkotja:
* Adenin (A) * Adenin (A)
* Citozin (C) * Citozin (C)
* Guanin (G) * Guanin (G)
...@@ -41,18 +40,19 @@ enum Bazis { ...@@ -41,18 +40,19 @@ enum Bazis {
// Állapotgép publikis interfésze // Állapotgép publikis interfésze
class Allapotgep { class Allapotgep {
public: public:
//konfig fájl beolvasása, ha a fájl nem létezik/nem lehet megnyitni eldobja a NEPTUN-kódot // Konfig fájl beolvasása. Ha a fájl nem létezik/nem lehet megnyitni eldobja a NEPTUN-kódot.
//újra felépíti az állapotgépet, a korábbit törli ha volt // Újra felépíti az állapotgépet, a korábbit törli ha volt. Kezdő állapotba áll.
void konfigural(const char* fajlnev); void konfigural(const char* fajlnev);
//visszaadja melyik állapot aktív // Visszaadja melyik állapot aktív.
const char* aktualisallapot(); const char* aktualisallapot();
//éppen elfogadó állapotban van az állapotgép // Elfogadó állapotban van-e az állapotgép.
bool elfogad(); bool elfogad();
//beérkező bázis hatására, mi történjen // Az aktuális állapotnak és inputnak megfelelő következő állapotba léptet.
void atmenet(Bazis b); void atmenet(Bazis b);
//a lánc feldolgozás után elfogadunk-e, nem áll vissza alaphelyzetbe // Feldolgozza a paraméterként kapott bázissorozatot.
// Visszaadja, hogy elfogadó állapotba került-e. (Nem áll vissza kezdő állapotba.)
bool feldolgoz(const Bazis *b, int n); bool feldolgoz(const Bazis *b, int n);
//visszaállítás a kezdő állapotba // Kezdő állapotba visz
void alaphelyzet(); void alaphelyzet();
}; };
``` ```
......
/** /**
* \file allapotgep.cpp * \file allapotgep.cpp
* *
* Ebben a fájlban kell megvalósítania az Allapotgép osztány * Ebben a fájlban kell megvalósítania az Allapotgep osztály
* metódusait, valamint mindazon további osztályokat, melyek szükségesek * metódusait, valamint mindazon további osztályokat, melyek szükségesek
* a feladat megvalósításához. * a feladat megvalósításához.
* *
......
/** /**
* \file allapotgep.h * \file allapotgep.h
* *
* Ebben a fájlban találja az Allapotgép osztály kezdeti definicióját * Ebben a fájlban találja az Allapotgep osztály kezdeti definícióját és két segédfüggvényt.
* és két segédfüggvényt.
* *
* A fájlt tetszés szerint múdosíthatja, azzal a megkütéssel, hogy * A fájlt tetszés szerint módosíthatja, azzal a megkötéssel, hogy
* nem hozhat létre globális függvényt és nem változtathatja az Allapotgép osztáy * nem hozhat létre globális függvényt és nem változtathatja az Allapotgep osztály
* publikus interfészét. * publikus interfészét.
* *
* Új osztályokat, típusokat felvehet * Új osztályokat, típusokat felvehet.
* *
* Ezt a fájlt be kell adni (fel kell tölteni) a megoldással. * Ezt a fájlt be kell adni (fel kell tölteni) a megoldással.
*/ */
...@@ -31,36 +30,58 @@ enum Bazis { ...@@ -31,36 +30,58 @@ enum Bazis {
}; };
/** /**
* Állapotgép publikus interfésze * Állapotgép publikus interfésze.
* A privát részt szabadon változtathatja, de a publikus részt * A privát részt szabadon változtathatja, de a publikus részt ne változtassa, ne bővítse!
* ne változtassa, ne bővítse!
*/ */
class Allapotgep { class Allapotgep {
public: public:
//visszaadja melyik állapot aktív /**
* Konfig fájl beolvasása. Ha a fájl nem létezik/nem lehet megnyitni eldobja a NEPTUN-kódot.
* Újra felépíti az állapotgépet, a korábbit törli ha volt. Kezdő állapotba áll.
* @param fajlnév - fájl neve
* @return -
* @exception fájl megnyitási hiba esetén NEPTUN_KÓD
*/
void konfigural(const char* fajlnev);
/** Visszaadja melyik állapot aktív.
* @return pointer az aktív állapot nevére
*/
const char* aktualisallapot(); const char* aktualisallapot();
//éppen elfogadó állapotban van az állapotgép /**
* Elfogadó állapotban van-e az állapotgép.
* @return true, ha elfogadó állapotban van
*/
bool elfogad(); bool elfogad();
//beérkező bázis hatására, mi történjen /**
* Az aktuális állapotnak és inputnak megfelelő következő állapotba léptet.
* @param b - beérkező bázis, mint input
*/
void atmenet(Bazis b); void atmenet(Bazis b);
//a lánc feldolgozás után elfogadunk-e /**
* Feldolgozza a paraméterként kapott bázissorozatot.
* Visszaadja, hogy elfogadó állapotba került-e. (Nem áll vissza kezdő állapotba.)
* @param b - input sorozatra mutató pointer
* @param n - a sorozat hossza
* @return tru, ha elfogadó állapotba került
*/
bool feldolgoz(const Bazis *b, int n); bool feldolgoz(const Bazis *b, int n);
//konfig fájl beolvasása /**
void konfigural(const char* fajlnev); * Kezdő állapotba visz.
*/
//visszaállítás a kezdő állapotba
void alaphelyzet(); void alaphelyzet();
~Allapotgep(); ~Allapotgep();
}; };
/** /**
* Segédfüggvény, karakterből enummá konvertál * Segédfüggvény, karakterből enummá konvertál.
* @param: b - bázis 1 betűs jele * @param b - bázis 1 betűs jele
* @return: Bazis enum kontans * @return Bazis enum kontans
*/ */
inline Bazis cast(char b) { inline Bazis cast(char b) {
char k = tolower(b); char k = tolower(b);
...@@ -76,10 +97,10 @@ inline Bazis cast(char b) { ...@@ -76,10 +97,10 @@ inline Bazis cast(char b) {
} }
/** /**
* Segédfüggvény, Bazis konstansból karakterré konvertál * Segédfüggvény, Bazis konstansból karakterré konvertál.
* @param: b - bazis enmu konstansa * @param b - bazis enum konstansa
* @param: upper - nagybetűs legyen-e * @param upper - nagybetűs legyen-e
* @return: bázis 1 betűs jele * @return bázis 1 betűs jele
*/ */
inline char cast(Bazis b, bool upper = true) { inline char cast(Bazis b, bool upper = true) {
char ret = '0'; char ret = '0';
......
...@@ -30,11 +30,9 @@ ...@@ -30,11 +30,9 @@
</Target> </Target>
</Build> </Build>
<Compiler> <Compiler>
<Add option="-pedantic" />
<Add option="-Wall" /> <Add option="-Wall" />
<Add option="-fexceptions" />
<Add option="-std=c++11" /> <Add option="-std=c++11" />
<Add option="-Wall" />
<Add option="-Werror" />
</Compiler> </Compiler>
<Unit filename="allapotgep.cpp" /> <Unit filename="allapotgep.cpp" />
<Unit filename="allapotgep.h" /> <Unit filename="allapotgep.h" />
...@@ -42,7 +40,10 @@ ...@@ -42,7 +40,10 @@
<Unit filename="gtest_lite.h" /> <Unit filename="gtest_lite.h" />
<Unit filename="memtrace.cpp" /> <Unit filename="memtrace.cpp" />
<Unit filename="memtrace.h" /> <Unit filename="memtrace.h" />
<Extensions /> <Extensions>
<code_completion />
<envvars />
<debugger />
</Extensions>
</Project> </Project>
</CodeBlocks_project_file> </CodeBlocks_project_file>
...@@ -35,7 +35,7 @@ int main() { ...@@ -35,7 +35,7 @@ int main() {
#endif // ELKESZULT > 0 #endif // ELKESZULT > 0
#if ELKESZULT > 1 #if ELKESZULT > 1
/// Azt vizsgálja, hogy be tudja-e olvasni a konfiguráiós fájlt /// Azt vizsgálja, hogy be tudja-e olvasni a konfigurációs fájlt
TEST(ParosTrimin, fajbolkonfig1) { TEST(ParosTrimin, fajbolkonfig1) {
Allapotgep gep; Allapotgep gep;
ASSERT_NO_THROW(gep.konfigural("paros.txt")); ASSERT_NO_THROW(gep.konfigural("paros.txt"));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment