Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
pp:2025:scala:t01 [2025/03/25 22:01] ana.ailiesei |
pp:2025:scala:t01 [2025/03/26 16:25] (current) ana.ailiesei |
||
---|---|---|---|
Line 225: | Line 225: | ||
</code> | </code> | ||
- | 1.3. Pornind de la ''LStrings'' care este lista codificărilor L ca ''String'' (pe fiecare poziție gasim codificarea sa L), definiți listele pentru toate cele 3 tipuri de codificări. | + | 1.3. Pornind de la ''LStrings'' care este lista codificărilor L ca ''String'' (pe fiecare poziție gasim codificarea sa L), definiți listele pentru toate cele 3 tipuri de codificări. **Soluțiile hardcodate nu vor fi luate în considerare, trebuie să vă folosiți de LStrings sau de listele deja create (pentru rightOddList și leftEvenList) împreună cu funcții de ordin superior.** |
<code scala> | <code scala> | ||
Line 284: | Line 284: | ||
</code> | </code> | ||
- | 3.4. Creați lista de parițăți pe care o vom folosi pornind de la ''PStrings''. | + | 3.4. Creați lista de parițăți pe care o vom folosi pornind de la ''PStrings''. **Soluțiile hardcodate nu vor fi luate în considerare, trebuie să vă folosiți de PStrings** |
<code scala> | <code scala> | ||
val leftParityList: List[List[Parity]] = Nil | val leftParityList: List[List[Parity]] = Nil | ||
</code> | </code> | ||
- | 3.5. Rulați ''scaledRunLength'' pe fiecare element din listele create la task-ul **1.3**. | + | 3.5. Rulați ''scaledRunLength'' pe fiecare element din listele create la task-ul **1.3**. **Soluțiile hardcodate nu vor fi luate în considerare, trebuie să vă folosiți de listele create anterior.** |
<code scala> | <code scala> | ||
type SRL = (Bit, List[RatioInt]) | type SRL = (Bit, List[RatioInt]) | ||
Line 374: | Line 374: | ||
===== Submisie arhiva ===== | ===== Submisie arhiva ===== | ||
<note important> | <note important> | ||
- | Veti incarca pe moodle o arhiva ce contine, **in radacina acesteia**, folderul ''src'' al proiectului vostru, fisierul ''build.sbt'' si un fisier text, intitulat ''ID.txt'' ce contine o singura linie, si anume id-ul vostru anonim (pe care il puteti gasi pe moodle la assignment-ul ''tokenID''). </note> | + | Veti incarca pe moodle o arhivă ce conține, **in rădăcina acesteia**, folderul ''src'' al proiectului vostru, fișierul ''build.sbt'' și un fișier text, intitulat ''ID.txt'' ce conține o singură linie, și anume id-ul vostru anonim (pe care il puteti găsi pe moodle la assignment-ul ''tokenID''). Arhiva trebuie să fie **obligatoriu .zip**. </note> |
- | Exemplu structura arhiva: | + | Exemplu structura arhivă: |
<code> | <code> | ||
archive.zip | archive.zip | ||
Line 389: | Line 389: | ||
===== Cum rulez pe propriile exemple? ===== | ===== Cum rulez pe propriile exemple? ===== | ||
- | Găsiți fișierul ''MyBarcodes.scala'' care poate fi rulat din IDE. Funcția ''readBarcodes'' primește un numele unui folder de input și a unui fișier de output. În cel de input puteți pune propriile imagini cu coduri de bare în format **.ppm**. Decupați doar codul de bare din imagini și aveți grijă ca acestea să fie suficient de clare, altfel algoritmul nu va funcționa. Puteți converti imagini în formatul **ppm** pe https://convertio.co/. În folderul de output puteți vedea aceleași imagini **.ppm** dar în format alb-negru **.pbm**. | + | Găsiți fișierul ''MyBarcodes.scala'' care poate fi rulat din IDE. Funcția ''readBarcodes'' primește numele unui folder de input și a unui folder de output. În cel de input puteți pune propriile imagini cu coduri de bare în format **.ppm**. Decupați doar codul de bare din imagini și aveți grijă ca acestea să fie suficient de clare, altfel algoritmul nu va funcționa. Puteți converti imagini în formatul **.ppm** pe https://convertio.co/. În folderul de output puteți vedea aceleași imagini **.ppm**, dar în format alb-negru (adică **.pbm**). |