Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pp:22:teme:racket-pitagora [2022/03/07 23:14]
mihaela.balint [Changelog]
pp:22:teme:racket-pitagora [2022/03/27 17:00] (current)
mihaela.balint [Changelog]
Line 147: Line 147:
   * algoritmul de decriptare este similar, formula fiind (c - k) mod 27 (c reprezintă un cod din mesajul criptat)   * algoritmul de decriptare este similar, formula fiind (c - k) mod 27 (c reprezintă un cod din mesajul criptat)
  
-Veți lucra doar în fișierul cryptosystem.rkt,​ însă este necesar să aveți în același folder și fișierul ppt.rkt din etapa 2. +Veți lucra doar în fișierul cryptosystem.rkt,​ însă este necesar să aveți în același folder și fișierul ppt.rkt din etapa 2 (iar arhiva încărcată pe vmchecker va conține ambele fișiere)
  
 Funcțiile pe care va trebui să le implementați sunt: Funcțiile pe care va trebui să le implementați sunt:
Line 204: Line 204:
 ppt-stream-in-tree-order ppt-stream-in-tree-order
 </​file>​ </​file>​
-  * ppt-stream-in-tree-order corespunde parcurgerii în lățime (BFS) a arborelui TPP pe care îl cunoaștem+  * ppt-stream-in-tree-order ​este un flux care corespunde parcurgerii în lățime (BFS) a arborelui TPP pe care îl cunoaștem
  
 Exemplu: Exemplu:
Line 229: Line 229:
 </​file> ​ </​file> ​
   * pairs primește 2 fluxuri ordonate G și H   * pairs primește 2 fluxuri ordonate G și H
-  * notăm cu g un element din G și cu h un element din H (pentru un același index va fi întotdeauna adevărat că g < h, în sensul că pairs este menit să fie apelat doar pe fluxuri ​care respectă această condiție) +  * notăm cu g un element din G și cu h un element din H (pentru un același index considerăm,​ fără să verificăm, că va fi întotdeauna adevărat că g < h, în sensul că în final pairs este menit să fie apelat doar pe fluxurile G = {1,3,5,7 ...} și H = {3,5,7,9 ...} care respectă această condiție) 
-  * pairs întoarce un flux infinit de perechi de forma (g, h) (unde g < h), în ordinea crescătoare a valorii lui h (și în ordinea crescătoare a valorii lui g, dacă perechile au același h)+  * pairs întoarce un flux infinit de perechi de forma (g, h) conform algoritmului descris în schelet, în ordinea crescătoare a valorii lui h (și în ordinea crescătoare a valorii lui g, dacă perechile au același h) 
 +  * Atenție: pairs nu face nicio verificare (nu verifică dacă g și h sunt impare, nu verifică dacă g<h, nu verifică dacă cele două numere sunt prime între ele)! Aceste condiții vor fi asigurate de funcțiile următoare, pairs doar implementează metoda de construcție descrisă în schelet. În checker, pairs este apelat inclusiv pe fluxuri pentru care niciuna din condițiile anterioare nu se respectă, asigurând astfel că nu faceți verificările în altă parte decât se precizează în cerință.
  
 Exemplu: Exemplu:
Line 247: Line 248:
   * la început, G = {1,3,5,7 ...} și H = {3,5,7,9 ...}   * la început, G = {1,3,5,7 ...} și H = {3,5,7,9 ...}
   * fluxul rezultat va fi {(1,3), (1,5), (3,5), (1,7), (3,7), (5,7), (1,9), (3,9), (5,9) ...} (metoda de construcție e detaliată în schelet)   * fluxul rezultat va fi {(1,3), (1,5), (3,5), (1,7), (3,7), (5,7), (1,9), (3,9), (5,9) ...} (metoda de construcție e detaliată în schelet)
 +  * observați că în rezultatul funcției pairs apar și perechi de numere neprime între ele (de exemplu, perechea (3,9))
  
 <​file>​ <​file>​
Line 282: Line 284:
  
 ===== Changelog ===== ===== Changelog =====
-  * 28.02 (ora 23:25) - Am publicat etapa 1 (enunț + schelet)și etapele 2-4 (momentan doar enunț).  ​+  * 27.03 (ora 15:55- Etapa 4 - Am adăugat ​(în schelet) ​precizarea că puteți folosi recursivitate explicită pentru a genera fluxurile G și H. 
 +  * 27.03 (ora 15:​55) ​Etapa - Am adăugat ​(în această pagină) explicații despre comportamentul funcției pairs. 
 +  * 21.03 (ora 23:21- Am publicat etapa 4. 
 +  * 14.03 (ora 23:14) - Am publicat etapa 3.
   * 07.03 (ora 23:14) - Am publicat etapa 2.   * 07.03 (ora 23:14) - Am publicat etapa 2.
 +  * 28.02 (ora 23:25) - Am publicat etapa 1 (enunț + schelet), și etapele 2-4 (momentan doar enunț). ​
 ===== Referinţe ===== ===== Referinţe =====
  
pp/22/teme/racket-pitagora.1646687686.txt.gz · Last modified: 2022/03/07 23:14 by mihaela.balint
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