diff options
author | sijanec <anton@sijanec.eu> | 2021-01-29 15:55:11 +0100 |
---|---|---|
committer | sijanec <anton@sijanec.eu> | 2021-01-29 15:55:11 +0100 |
commit | 6ed97cd75fcb6aaf85b2d9838b8ce75786f5ae71 (patch) | |
tree | 6f7de902b63721a9f96335cdb5046501986f5f3b /inf/rtk/2021-šolsko-delo/1.c | |
parent | vse, razen zadnje naloge nem (diff) | |
download | sola-gimb-2-6ed97cd75fcb6aaf85b2d9838b8ce75786f5ae71.tar sola-gimb-2-6ed97cd75fcb6aaf85b2d9838b8ce75786f5ae71.tar.gz sola-gimb-2-6ed97cd75fcb6aaf85b2d9838b8ce75786f5ae71.tar.bz2 sola-gimb-2-6ed97cd75fcb6aaf85b2d9838b8ce75786f5ae71.tar.lz sola-gimb-2-6ed97cd75fcb6aaf85b2d9838b8ce75786f5ae71.tar.xz sola-gimb-2-6ed97cd75fcb6aaf85b2d9838b8ce75786f5ae71.tar.zst sola-gimb-2-6ed97cd75fcb6aaf85b2d9838b8ce75786f5ae71.zip |
Diffstat (limited to 'inf/rtk/2021-šolsko-delo/1.c')
-rw-r--r-- | inf/rtk/2021-šolsko-delo/1.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/inf/rtk/2021-šolsko-delo/1.c b/inf/rtk/2021-šolsko-delo/1.c new file mode 100644 index 0000000..eeaa2cd --- /dev/null +++ b/inf/rtk/2021-šolsko-delo/1.c @@ -0,0 +1,35 @@ +#include <stdio.h> + +int Izenaceno (char * s) { /* 0 ce ni izenaceno, 1, ce je izenaceno */ + int c = 0; /* pozicija na nizu */ + int k = 0; /* razlika med stevilom xov */ + while (s[c] != '\0') { /* hodimo po nizu O(n) */ + switch (s[c]) { /* pregledamo znak */ + case 'x': + k++; /* povecamo relativno stevilo xov */ + break; + case 'o': + k--; /* zmanjsamo relativno stevilo xov */ + break; + default: /* ni niti o niti x */ + return 0; + } + if (c >= 2 /* ce sta vsaj dva znakam, da preprecimo segmentation violation */ + && s[c] == s[c-1] && s[c] == s[c-2]) /* ce so trije po vrsti enaki */ + return 0; + c++; + } + if (k != 0) /* ce xov ni enako kot ojev */ + return 0; + return 1; +} +#if __INCLUDE_LEVEL__ == 0 /* da je lahko podprogram uporabljen kot knjiznica */ +int main (int argc, char ** argv) { + if (argc != 1+1) { + fprintf(stderr, "uporaba: %s niz\n", argv[0]); /* potrebujemo vhodni niz */ + return 1; /* napaka */ + } + fprintf(stderr, "zaporedje %s izenaceno\n", Izenaceno(argv[1]) ? "je" : "ni"); /* posredujemo odgovor podprograma */ + return 0; +} +#endif |