Concurs: Broke This (8)

Faceti cunostinta cu posibilitatile clasei string (anume basic_string) din STL. Si scrieti functia:

1. str::string RemoveExtraSpaces(str:string const& arg) – care va stergea toate spatiile care nu sunt necesare. Spatii ne-necesare se socot spatiile de la inceput si sfarsit cat si mai mult de 1 spatiu intre cuvinte.

2.std::string FindAndReplace(std::string const& subject, std::string const& search, std::string const& replace) – functia trebuie sa sa inlocuiesc in string – subject, toate aparatiile cuvantului “search” cu cuvantul “reaplce” si sa returneze string-ul rezultat.

3. std::string HtmlEncode(std::string const& text) – va inlocui caractere speciale cu coduri HTML.

1
2
3
4
5
(ghilimele) se inlocuieste cu "
(apostrof) se inlocuieste cu '
< (mai mic) se inlocuieste cu &lt;
> (mai mare) se inlocuieste cu &gt;
& (ampersant) se inlocuieste cu &amp;

4. std::string HtmlDecode(std::string const& html) – va inlocui codurile speciale HTML cu caractere (vezi punct 3).

5. bool ParseURL(std::string const& url, Protocol & protocol, int & port, std::string & host, std::string & document) – va analiza datele din “url” si va scrie in “protocol” datele despre protocol, “host” adresa hostului, “document” – datele care se contin dupa protocol si host.

Protocol:

1
2
3
4
5
6
enum Protocol
{
HTTP,
HTTPS,
FTP
};

Date de intrare: protocol://host[:port][/document]
Daca nu e specificat portul va fi considerat ca e port standart (HTTP –  80,  HTTPS – 443, FTP – 21).

Exemplu:

http://www.mysite.com/docs/document1.html?page=30&lang=en#title

1
2
3
HOST: www.mysite.com
PORT: 80
DOC: docs/document1.html?page=30&amp;lang=en#title
Read More

Concurs: Broke This (7)

Se da un fisier .INI. Fisierul poate contine comentarii care incep cu “;” (punct si virgula). Fisierul contine parametri si valori pentru parametri.
Programul trebuie sa citeasca in memorie toti parametri care exista in fisierul .INI dupa care sa astepte ca utilizatorul sa introduca numele unui parametru.
In caz ca exista parametru se afiseaza valoarea lui:
Exemplu:

Utilizatorul introduce

1
MSG_FAILED_TO_OPEN_FILE

Va aparea mesajul:

1
Nu pot deschide "{FILENAME}"

In caz ca a parametru nu exista va aparea:

1
Parametrul [nume_parametru] nu exista in memorie

programul trebuia sa poate fi executat in modul urmator:

1
{nume_program} [file_input]

Exemplu de fisier INI:

1
2
3
4
5
6
7
; dimensiunule ferestrei pricipale
DEFAULT_WINDOW_WIDTH = 640
DEFAULT_WINDOW_HEIGT = 480 ; mesaje text
MSG_SUCCESS = "Lucru incheiat cu success"
MSG_EMPTY_LINE = "" ;linie goala
MSG_FAILED_TO_OPEN_FILE = "Nu poate fi gasit\"{FILE_NAME}\""
MSG_MENU = "1. Deshide fisier\n2. Inchide fisier\n3. Iesire"

Read More

Concurs: Broke This (6)’

Pentru cei care doresc o problema suplimentara, pentru ca problema de azi nu e foarte grea.

Propun urmatoarea problema.

Sa se elaboreze un program care primeste 2 parametri din linia de comanda, fisier pentru intrare si fisier pentru iesire.

Programul trebuie sa sorteze alfabetic randurile care le contine fisierul de intrare si sa scrie rezultatul in fisierul de iesire.

Model de fisier care poate fi ca input:

1
2
3
4
prima linie
a doua linie
a treia linia
si tot asa

Nota: Daca folositi C se poate sa folositi functia standart qsort().

Read More

Concurs: Broke This (6)

Scrieti o functie care:

- va avea 2 parametri

- – 1 parametru ->  un numar care trebuie ridicat la o putere

- – 2 – lea parametru -> un numar care reprezinta puterea la care trebuie ridicat primul  parametru.

- va returna -> primul parametru ridicat la puterea al doilea parametru

Nu conteaza limbajul in care se scrie functia, pricipalul sa fie cat mai rapida metoda.

PS. Se accepta orice tip de date care doriti sa il folositi (inclusiv int).

Read More

Concurs: Broke This (5)

Se da un sir binar:

1
1101001 1100101 1101110 1101111 1111000 1100011

si numarul 10 (in baza 10).

Trebuie sa se faca o operatie si sa obtineti cuvantul: “coderi”.

Raspunsul trebuie sa contina operatia si ce sa obtinut dupa aplicarea ei. Sau macar explicatie.

Read More

Concurs: Broke This (4)

De data acesta pentru a gasi codul e o cale mai lunga.

Cerinta este sa gasiti codul cu care puteti ajunge pe pagina check.php si apare Result: Ok;

Concursul incepe aici: Start

De data asta nu dau nici un indiciu, sper sa rezolvati cat mai repede.

Raspunsurile ca de obicei in comentarii.

PS. Acum discutam si pe forum.

Read More

Concurs: Broke This (3)

Partea a 3 a concursului Broke This.

Se da:

1
2
3
4
5
6
7
8
9
P1
24 7
000000000000000000000000
011110011110011110011110
010010010000010000010010
011110011100011100011110
010010010000010000010000
010010011110011110010000
000000000000000000000000

Sa se afle ce codul secret.

Indicii:

1. E un standart mai vechi

 

PS. Acum discutam si pe forum.

Read More

Concurs: Broke This (2)

Aceasta este a doua parte a concursului inceput ieri.

De data asta se da imaginea:

 

Sa se afle mesajul secret ascuns in aceasta imagine.

In fiecare zi voi posta cate un indiciu:

1. Se da Nr: 291769

PS. Raspunsurile le scrieti in comentarii. Solutiile vor aparea si pe forum.

Read More

Concurs: Broke This (1)

Mi-a venit ideea sa fac un mic concurs pentru cei pasionati de informatica. Cred ca va avea mai multe etape. Aceasta este prima.

Se da imaginea:

In imagine este un cod ascuns, trebuie sa gasiti codul dupa care voi publica urmatoare provocare.

Zilnic voi publica cate un indiciu cum se poate de gasit codul:

1. Prima litera a indiciului este “l”

 

PS. Raspunsurile le scrieti in comentarii. Solutiile vor aparea si pe forum.

Read More