Instructiuni schelet cod laborator

1) Scheletele pentru problemele din laborator se pot descărca de pe wiki (în dreapta sus, este un link către scheletul de cod) sau direct din linia de comandă cu:

wget http://elf.cs.pub.ro/pa/scheletCodPA.zip 

Atentie! Numele arhivei este case sensitive. Dupa ce o descărcați, puteți să o dezarhivati pe HDD local. Din linia de comandă, puteți folosi:

unzip scheletCodPA.zip

2) Trebuie sa editați fișierele din directorul corespunzător laboratorului curent:

codeBase/$Limbaj/src-labX/ 

De exemplu, un student care vrea să rezolve problema 2 din laboratorul 0 în C++ va edita fișierul corespunzător:

codeBase/C++/src-lab0/lab0p2.cpp

Nu trebuie să mutați sau să redenumiți fișiere, pentru că nu va mai functiona corect Makefile-ul.

3) Pentru a compila soluțiile, mergeți în directorul:

codeBase/$Limbaj 

si apelați Makefile, definind variabilele de mediu LAB și TASK astfel:

make LAB=0 TASK=2

Veți fi avertizați cu un mesaj la consola dacă unul din parametri este incorect.

4) Executabilele vor fi generate in directorul:

codeBase/$Limbaj

de unde le puteți rula cu ./.

5) Anul acesta ne dorim simplificarea fundamentală a scheletelor de cod scrise în C++. Pentru aceasta, am scris headere template-izate în VectorIO.h si PairIO.h. Practic, acum pentru citirea/scrierea de vectori/perechi la consolă/în fișiere, este suficient următorul cod:

#include "VectorIO.h" // Includem headerul pentru IO.
 
std::vector<double> v; // Se poate specializa vectorul cu orice tip: float, int, string, std::pair<float, int>, etc.
std::cin >> v; std::cout << v; // Automagically works :).

De exemplu, dacă aveți de citit un vector de perechi, trebuie să includeți atât VectorIO.h, cat și PairIO.h.

Singura observatie de facut aici este că atunci când se citește un vector, el trebuie dat la consolă sub forma:

N
v0 v1 v2 ... vn-1

6) Headerele și implementările pe care le punem noi la dispoziție se află în directoarele:

codeBase/C++/include
codeBase/C++/src
codeBase/Java/src

Le puteți consulta și folosi după bunul plac, dar nu vă recomandăm să le modificați sau să le mutați în altă locație din motive ce țin de buna funcționare a comenzii make.

Observații! - Makefile-ul este util doar in Linux! - Comanda wget exista doar in Linux! - $Limbaj poate fi C++ sau Java, în funcție de preferințele fiecăruia (cu excepția Laboratorului 0, care are exerciții simple de acomodare cu STL și deci trebuie rezolvat în C++).

pa/instructiuni-schelet-cod-laborator.txt · Last modified: 2013/02/10 02:43 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0