program v c (link) |
18.11.2006 09:51
Tomáš Eichler
|
Věk: ( ~38 let) |
Potreboval bych poradit s jednim programem,nevim si snim rady,nemohl by mi nekdo trochu pomoct,predem dekuji,a tady je to zadani:
ma se to delat pomoci pointru
Napište funkci v jazyce C, která překóduje vstupní řetězec za pomocí zadaného klíče XOR-šifrou. V této šifře je každý jednotlivý znak zakódován pomocí logické funkce XOR (nonekvivalence) s odpovídajícím jedním znakem klíče. V případě, že je klíč kratší než samotná zpráva, použijte jej opakovaně od začátku.
Odevzdávejte soubor obsahující výhradně definici jediné funkce pojmenované a deklarované dle zadání. Soubor nesmí obsahovat žádné dodatečné definice typů, direktivy preprocesoru apod.
Deklarace funkce
void XOR_sifra(char *, char *);
Prvním argumentem funkce je vstupní řetězec, druhým klíč.
Funkce přepisuje vstupní řetězec jeho kódovaným ekvivalentem
Příklad
char *r="AHOJ";
XOR_sifra(r,"x");
printf("%s",r);
Výstupem této části programu bude řetězec "9072".
|
|
|
Re: program v c (link) |
18.11.2006 09:56
Tomáš Eichler
|
Věk: ( ~38 let) |
kdyby aspon ted zacatek,to je vzdy nejhorsi,pak bych to uz mohl zmaknout |
|
|
Re: program v c (link) |
18.11.2006 10:28
Ondřej Čečák
(TEAM)
|
Věk: ( ~38 let) |
Nejsou semestralky take o tom, aby vas naucily resit problemy samostatne? :)
|
|
|
Re: program v c (link) |
18.11.2006 11:05
Tomáš Eichler
|
Věk: ( ~38 let) |
to jsou,ale kazdej moudrej z nebe nespadl,coz se o mé skupině dá říct |
|
|
Re: program v c (link) |
18.11.2006 11:47
Ondřej Čečák
(TEAM)
|
Věk: ( ~38 let) |
Ja myslim, ze zadani je srozumitelne ... proste vezmete znaky a pouzijte na ne XOR, to vsechno C umi. ;)
|
|
|
Re: program v c (link) |
20.11.2006 00:03
Jan Němec
|
Věk: ( ~47 let) |
Před položením dotazu typu: "Mohl by za mě někdo udělat domácí úkol" bych se tu teda nejdřív porozhlídnul. V jednom dílu seriálu o C/C++ jsem ten váš úkol skoro napsal:
http://www.linuxsoft.cz/article.php?id_article=741 Pokud si to nedokážete upravit, tak teda pozdravpánbu... |
|
|
Re: program v c (link) |
20.11.2006 18:23
Tomáš Eichler
|
Věk: ( ~38 let) |
Ja uz sem něco vymyslel,funguje mi to,ale stejně když to chci odeslat na stránky,tak mi to píše že to njede přeložit což nechápu,když mi to funguje:
#include <stdio.h>
void XOR_sifra (char* retezec, char* klic)
{
char* zacatek_klice = klic;
while (*retezec != 0)
{
*retezec ^= *klic;
++retezec;
if (*klic == 0)
klic = zacatek_klice;
else
++klic;
}
}
int main ()
{
char pokus[] = "AHOJ";
XOR_sifra(pokus,"x");
printf("%s",pokus);
}
tadyk je ten protokol to nechápu:
Protokol
auto_check
test.c: In function 'main':
test.c:24: warning: implicit declaration of function 'printf'
test.c:24: warning: incompatible implicit declaration of built-in function 'printf'
test.c:26: warning: control reaches end of non-void function
test.c: At top level:
test.c:47: error: redefinition of 'main'
test.c:21: error: previous definition of 'main' was here
--- gcc-4.0 --- ! Chyba
test.c: In function `main':
test.c:24: warning: implicit declaration of function `printf'
test.c:26: warning: control reaches end of non-void function
In file included from test.c:43:
/usr/include/stdio.h: At top level:
/usr/include/stdio.h:327: warning: type mismatch with previous implicit declaration
test.c:24: warning: previous implicit declaration of `printf'
test.c:47: redefinition of `main'
test.c:21: `main' previously defined here
--- gcc-2.95 --- ! Chyba
|
|
|
Re: program v c (link) |
21.11.2006 17:30
Petr Zajíc
|
Věk: ( ~51 let) |
Co třeba přeložit si ty chyby do češtiny a přečíst si je? To by nepomohlo? |
|
|
Re: program v c (link) |
21.11.2006 19:22
Jan Němec
|
Věk: ( ~47 let) |
No asi nepomohlo, protoze (jetli jsem tomu rozumnel) tak on to zadava nekam na stranky, kde se to s necim slinkuje, co uz obsahuje main. Takze proto ta chyba s dvojim mainem. Ta neznama printf je asi taky dusledkem toho, ze se to nekde nejak divne sestavuje a #include se zrejme ignoruje. A navic to ma blbe napsane, protoze xoruje i s ukoncovaci nulou klice. |
|
|
Re: program v c (link) |
21.11.2006 21:30
Petr Zajíc
|
Věk: ( ~51 let) |
njn. Naštěstí tomu nerozumí, a tak mu to asi nebude vadit ;-) Pokud to dal do dvou tří fór tak už z toho něco splácá. |
|
|
Re: program v c (link) |
21.11.2006 21:37
Tomáš Eichler
|
Věk: ( ~38 let) |
Jj máte pravdu zadávám to na stránky,tam se to slinkuje.Uz sem se to dozvedel,tam stacilo poslat jen tu funkci i bez teho #include,takže už to funguje a je to i přeloženy.Chyba tam byla to mate pravdu,pak sem na to přišel,nakonec stačilo poslat tohle
void XOR_sifra (char* retezec, char* klic)
{
char* zacatek_klice = klic;
while (*retezec != 0)
{
*retezec ^= *klic;
++retezec;
if (*(klic+1) == 0)
klic = zacatek_klice;
else
++klic;
}
}
ted si lamu hlavu na dalsi ulohou,neco s morseovou abecedou:-) |
|
|
|
Příspívat do diskuze mohou pouze registrovaní uživatelé.
|
|
Vyhledávání software
Vyhledávání článků
28.11.2018 23:56 /František Kučera Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1
12.11.2018 21:28 /Redakce Linuxsoft.cz 22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář
6.11.2018 2:04 /František Kučera Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
4.10.2018 21:30 /Ondřej Čečák LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář
18.9.2018 23:30 /František Kučera Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
9.9.2018 14:15 /Redakce Linuxsoft.cz 20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business.
Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář
12.8.2018 16:58 /František Kučera Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář
16.7.2018 1:05 /František Kučera Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář
Více ...
Přidat zprávičku
Poslední diskuze
31.7.2023 14:13 /
Linda Graham iPhone Services
30.11.2022 9:32 /
Kyle McDermott Hosting download unavailable
13.12.2018 10:57 /
Jan Mareš Re: zavináč
2.12.2018 23:56 /
František Kučera Sraz
5.10.2018 17:12 /
Jakub Kuljovsky Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?
Více ...
|