NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: mktime() a scanf()

V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Neaktivní uživatel:7.11.2015 22:29

Zdravím,

řeším následný problém
načítám slova pomocí scanf()
a testuji jej na: slovo --> palindrom, číslo --> prvočíslo, a datum u kterého mám zjistit zda má správný tvar a pokud ano o jaký den se jedná...

a mám tyhle omezení

všechna volání hlavičkového souboru string.h
volání z rodiny malloc a free
volání z rodiny fopen, fclose, fscanf, ...

prakticky po ten mktime() mi to funguje, napsal sem si šílenou detekci na to zda je na vstupu něco typu 2012-02-02, ovšem vůbec netuším jak to mám nacpat do mktime jako asi tuším že ten řetězec musím rozbít a říct mktime co je rok, měsíc a den pomocí nějakých dočasných proměnných ale nevím jak ho mám rozbít, zkopírovat ... tak abych měl např. rr=2012, mm=02, dd=02 . . .

byla by tu nějaká duše která by mě pošťouchla správným směrem pomocí nějakého příkladu nebo klidně odkazem ? (hlavně ať je to nějak po lopatě...s Cečkem sem si začal hrát ani dva měsíce...) Mé předešlé pokusy skončily buď pádem programu nebo tím že v dočasných proměnných byly nějaké hovadiny.

předem díky

Odpovědět
7.11.2015 22:29
Neaktivní uživatelský účet
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
David Novák:7.11.2015 23:17

Další prvák na FITu :D

Mrkni do manuálu na mktime nebo sem:

http://www.tutorialspoint.com/…n_mktime.htm

http://www.cplusplus.com/…time/mktime/

mktime jsem osobně nikdy nepoužil, ale od pohledu tomu předhodíš struct tm - do které (jak říkáš) dáš den, měsíc a rok a ono ti to v té struktuře v tm_wday dá číslo dne 0-6.

Pokud by v té strukteře nebylo platné datum, tak to asi nějak vrátí -1.. Jelikože má to datum pevnou strukturu, tak ho prostě rozsekej, zkontroluj, jestli jde o číslice, převeď na číslo a ulož do nějaké tvé struct tm.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
7.11.2015 23:17
Chyba je mezi klávesnicí a židlí.
Avatar
Odpovídá na David Novák
Neaktivní uživatel:8.11.2015 0:10

mrknu na to. jop byl jsem prozrazen :D sem z FITu :D

tvoje odpověď vyzní že bys použil něco jiného než mktime...
rozšíříš mi obzory?

Nahoru Odpovědět
8.11.2015 0:10
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Libor Šimo (libcosenior):8.11.2015 0:43

Ak nemate zakazane pouzit algoritmus s webu, je aj ine riesenie. Pred par dnami som to tu dal.

Nahoru Odpovědět
8.11.2015 0:43
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Nahoru Odpovědět
8.11.2015 0:45
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
David Novák:8.11.2015 14:13

mktime bych určitě použil.. ;)

to, že jsem ho nepoužil je kvůli tomu, že jsem měl jiné zadání :D

Jinak na kód z webu bacha - docela hlídají plagiátorství..

Nahoru Odpovědět
8.11.2015 14:13
Chyba je mezi klávesnicí a židlí.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.