Rodin/Examples
From HaskellWiki
(Difference between revisions)
(Working) |
|||
| Line 1: | Line 1: | ||
Vor fi aici... | Vor fi aici... | ||
| - | |||
| + | ==. Setul pentru incepatori == | ||
| + | <haskell> | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg68b.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {fie a=2; | ||
| + | fie b=10*a; | ||
| + | pentru(fie a=8+a;a<b;fie a=a+1) | ||
| + | {scrie a;}; | ||
| + | }; | ||
| + | ; | ||
| + | |||
| + | Nu uitati nici acolada finala !!! | ||
| + | Bad ... unde e greseala ? | ||
| + | |||
| + | 10 | ||
| + | 11 | ||
| + | 12 | ||
| + | 13 | ||
| + | 14 | ||
| + | 15 | ||
| + | 16 | ||
| + | 17 | ||
| + | 18 | ||
| + | 19 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul:"pm4-pg68b.txt" | ||
| + | Rodin2009e - versiunea din 8 martie 2009. | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {fie k=0; | ||
| + | cat timp (i>0) executa | ||
| + | {fie i=i%2; | ||
| + | fie k=k+1; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | |||
| + | Rodin2009e: (line 3, column 4): | ||
| + | unexpected "{" | ||
| + | expecting space, operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste i; | ||
| + | fie k=0; | ||
| + | cat timp (i>0) executa | ||
| + | {fie i=i%2; | ||
| + | fie k=k+1; | ||
| + | }; | ||
| + | scrie k; | ||
| + | }; | ||
| + | |||
| + | Cate cifre binare va avea un numar ? | ||
| + | |||
| + | Rodin2009e: (line 4, column 4): | ||
| + | unexpected "{" | ||
| + | expecting space, operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste i; | ||
| + | fie k=0; | ||
| + | cat timp (i>0) executa | ||
| + | {fie i=i/2; | ||
| + | fie k=k+1; | ||
| + | }; | ||
| + | scrie k; | ||
| + | }; | ||
| + | |||
| + | Cate cifre binare va avea un numar ? | ||
| + | |||
| + | Rodin2009e: (line 4, column 4): | ||
| + | unexpected "{" | ||
| + | expecting space, operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste i; | ||
| + | fie k=0; | ||
| + | cat timp (i>0) | ||
| + | {fie i=i/2; | ||
| + | fie k=k+1; | ||
| + | }; | ||
| + | scrie k; | ||
| + | }; | ||
| + | |||
| + | Cate cifre binare va avea un numar ? | ||
| + | |||
| + | 12 | ||
| + | 4 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul:"pm4-pg71.txt" | ||
| + | Rodin2009e - versiunea din 8 martie 2009. | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | Rodin2009e: pm4-pg71e2.txt: openFile: does not exist (No such file or directory) | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | viteste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | cat timp (v<=temp) { instructiuni ; fie v=v+step;}; | ||
| + | altfel | ||
| + | cat timp (v>=temp) { instructiuni ; fie v=v+step;}; | ||
| + | } | ||
| + | |||
| + | Rodin2009e: (line 3, column 10): | ||
| + | unexpected " " | ||
| + | expecting letter or digit, "_", operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | cat timp (v<=temp) { instructiuni ; fie v=v+step;}; | ||
| + | altfel | ||
| + | cat timp (v>=temp) { instructiuni ; fie v=v+step;}; | ||
| + | } | ||
| + | |||
| + | Rodin2009e: (line 7, column 9): | ||
| + | unexpected "t" | ||
| + | expecting space, "altfel", operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | cat timp (v<=temp) {instructiuni;fie v=v+step;}; | ||
| + | altfel | ||
| + | cat timp (v>=temp) {instructiuni;fie v=v+step;}; | ||
| + | } | ||
| + | |||
| + | Rodin2009e: (line 7, column 9): | ||
| + | unexpected "t" | ||
| + | expecting space, "altfel", operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | cat timp (v<temp+1) {instructiuni;fie v=v+step;}; | ||
| + | altfel | ||
| + | cat timp (v>temp-1) {instructiuni;fie v=v+step;}; | ||
| + | } | ||
| + | |||
| + | Rodin2009e: (line 6, column 7): | ||
| + | unexpected " " | ||
| + | expecting letter or digit, "_", operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | cat timp (v<temp+1) {instructiuni;fie v=v+step;}; | ||
| + | altfel | ||
| + | cat timp (v>temp-1) {instructiuni;fie v=v+step;}; | ||
| + | }; | ||
| + | |||
| + | Rodin2009e: (line 6, column 7): | ||
| + | unexpected " " | ||
| + | expecting letter or digit, "_", operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | cat timp (v<temp+1) {instructiuni;fie v=v+step;}; | ||
| + | altfel | ||
| + | cat timp (v>temp-1) {instructiuni;fie v=v+step;}; | ||
| + | }; | ||
| + | |||
| + | Rodin2009e: (line 6, column 7): | ||
| + | unexpected " " | ||
| + | expecting letter or digit, "_", operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | cat timp (v<temp+1) {instructiuni;fie v=v+step;}; | ||
| + | altfel | ||
| + | cat timp (v>temp-1) {instructiuni;fie v=v+step;}; | ||
| + | }; | ||
| + | |||
| + | Rodin2009e: (line 6, column 7): | ||
| + | unexpected " " | ||
| + | expecting letter or digit, "_", operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | {cat timp (v<temp+1) {instructiuni;fie v=v+step;};} | ||
| + | altfel | ||
| + | {cat timp (v>temp-1) {instructiuni;fie v=v+step;};} | ||
| + | }; | ||
| + | |||
| + | Rodin2009e: (line 9, column 56): | ||
| + | unexpected "\n" | ||
| + | expecting operator or ";" | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | {cat timp (v<temp+1) {instructiuni;fie v=v+step;};} | ||
| + | altfel | ||
| + | {cat timp (v>temp-1) {instructiuni;fie v=v+step;};}; | ||
| + | }; | ||
| + | |||
| + | 1 | ||
| + | 10 | ||
| + | 2 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul:"pm4pg71e2.txt" | ||
| + | Rodin2009e - versiunea din 8 martie 2009. | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e3.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | {cat timp (v<temp+1) {scrie v;fie v=v+step;};} | ||
| + | altfel | ||
| + | {cat timp (v>temp-1) {scrie v;fie v=v+step;};}; | ||
| + | }; | ||
| + | |||
| + | Ideea simularii lui 'pentru' folosind 'cat timp'. | ||
| + | |||
| + | 1 | ||
| + | 10 | ||
| + | 2 | ||
| + | 1 | ||
| + | 3 | ||
| + | 5 | ||
| + | 7 | ||
| + | 9 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul:"pm4pg71e3.txt" | ||
| + | Rodin2009e - versiunea din 8 martie 2009. | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e3.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | {cat timp (v<temp+1) {scrie v;fie v=v+step;};} | ||
| + | altfel | ||
| + | {cat timp (v>temp-1) {scrie v;fie v=v+step;};}; | ||
| + | }; | ||
| + | |||
| + | Ideea simularii lui 'pentru' folosind 'cat timp'. | ||
| + | |||
| + | 10 | ||
| + | 1 | ||
| + | -2 | ||
| + | 10 | ||
| + | 8 | ||
| + | 6 | ||
| + | 4 | ||
| + | 2 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul:"pm4pg71e3.txt" | ||
| + | Rodin2009e - versiunea din 8 martie 2009. | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e3.txt | ||
| + | 2009e - Pseudocod Rodin - Codename:Rodin2009e | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { citeste low; | ||
| + | citeste high; | ||
| + | citeste step; | ||
| + | fie v=low; | ||
| + | fie temp=high; | ||
| + | daca (step>0) atunci | ||
| + | {cat timp (v<temp+1) {scrie v;fie v=v+step;};} | ||
| + | altfel | ||
| + | {cat timp (v>temp-1) {scrie v;fie v=v+step;};}; | ||
| + | }; | ||
| + | |||
| + | Ideea simularii lui 'pentru' folosind 'cat timp'. | ||
| + | |||
| + | 1 | ||
| + | 10 | ||
| + | 3 | ||
| + | 1 | ||
| + | 4 | ||
| + | 7 | ||
| + | 10 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul:"pm4pg71e3.txt" | ||
| + | Rodin2009e - versiunea din 8 martie 2009. | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | [dan@localhost Rodin2009a]$ | ||
| + | |||
| + | |||
| + | </haskell> | ||
| + | ==. Un set ceva mai avansat == | ||
| + | <haskell> | ||
| + | |||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste x; | ||
| + | fie y=0; | ||
| + | repeta { | ||
| + | fie x=x-1; | ||
| + | fie y=y+1; | ||
| + | } | ||
| + | pana cand ( x<0 ); | ||
| + | scrie x; | ||
| + | scrie y; | ||
| + | } | ||
| + | |||
| + | |||
| + | Rodin2009c: (line 7, column 2): | ||
| + | unexpected "a" | ||
| + | expecting "pina cand" | ||
| + | |||
| + | AICI E O GRESEALA, trebuia scris "pina cand" nu "pana cand" | ||
| + | |||
| + | |||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste x; | ||
| + | fie y=0; | ||
| + | executa { | ||
| + | fie x=x-1; | ||
| + | fie y=y+1; | ||
| + | } | ||
| + | atat cat (x>0); | ||
| + | scrie x; | ||
| + | scrie y; | ||
| + | } | ||
| + | |||
| + | |||
| + | 7 | ||
| + | 0 | ||
| + | 7 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste x; | ||
| + | citeste y; | ||
| + | daca x>y atunci scrie x | ||
| + | altfel scrie y; | ||
| + | citeste x; | ||
| + | } | ||
| + | |||
| + | -- Acest program ar trebui sa scrie doar unul dintre mesaje | ||
| + | -- | ||
| + | |||
| + | |||
| + | 78 | ||
| + | 8 | ||
| + | 78 | ||
| + | 9 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {pentru(fie x=1;x<10;fie x=x+1) scrie x;}; | ||
| + | |||
| + | 1 | ||
| + | 2 | ||
| + | 3 | ||
| + | 4 | ||
| + | 5 | ||
| + | 6 | ||
| + | 7 | ||
| + | 8 | ||
| + | 9 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { pentru (fie x=1; x<3; fie x=x+1) | ||
| + | pentru (fie y=x+1; y<3; fie y=y+1) | ||
| + | { | ||
| + | scrie x*x+y*y; | ||
| + | scrie y*y-x*x; | ||
| + | scrie 2*x*y; | ||
| + | }; | ||
| + | }; | ||
| + | 5 | ||
| + | 3 | ||
| + | 4 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {text "Citesc 10 elemente"; | ||
| + | pentru(fie xk=1; xk<11; fie xk=xk+1) | ||
| + | citeste z[xk]; | ||
| + | }; | ||
| + | "Citesc 10 elemente" | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {text "Program insertsort"; | ||
| + | text "Tastati cele 10 numere"; | ||
| + | pentru(fie k=1; k<11; fie k=k+1) | ||
| + | citeste v[k]; | ||
| + | pentru(fie k=2; k<11; fie k=k+1) | ||
| + | {fie j=k; | ||
| + | fie i=k-1; | ||
| + | repeta | ||
| + | {daca (v[j]<v[i]) atunci {fie aux = v[j]; | ||
| + | fie v[j]= v[i]; | ||
| + | fie v[i]=aux; | ||
| + | fie j=i; | ||
| + | fie j=j-1; | ||
| + | }; | ||
| + | } | ||
| + | pina cand (i==0); | ||
| + | }; | ||
| + | text "Numerele sortate"; | ||
| + | pentru(fie k=1; k<11; fie k=k+1) | ||
| + | citeste v[k]; | ||
| + | }; | ||
| + | |||
| + | |||
| + | -- inainte de "pana cand" nu se pune ; | ||
| + | -- Conditii cum e (v[j]<v[i]) mai bine le | ||
| + | -- puneti in paranteza. | ||
| + | Rodin2009c: (line 5, column 8): | ||
| + | unexpected "(" | ||
| + | expecting letter or digit, "_", operator or ";" | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {text "Selsort pentru 10 numere "; | ||
| + | pentru(fie xk=1; xk<11; fie xk=xk+1) | ||
| + | citeste z[xk]; | ||
| + | pentru(fie xk=1; xk<10; fie xk=xk+1) | ||
| + | { fie xi=xk; | ||
| + | pentru(fie xj=xk+1; xj<11; fie xj=xj+1) | ||
| + | daca (z[xj]<z[xi]) atunci fie xi=xj; | ||
| + | fie aux=z[xk]; | ||
| + | fie z[xk]=z[xi]; | ||
| + | fie z[xi] = aux; | ||
| + | }; | ||
| + | text "Sortate "; | ||
| + | pentru(fie xk=1; xk<11; fie xk=xk+1) | ||
| + | {scrie z[xk]; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | |||
| + | -- Algoritmul de sortare prin selectie directa | ||
| + | -- Pentru RodinV082d 1/12/2008 | ||
| + | |||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { vorbeste "maximul dintr-un sir de numere \n"; | ||
| + | vorbeste "pozitive terminat cu zero \\n"; | ||
| + | fie xmaxpp = 0; | ||
| + | tasteza y; | ||
| + | pina cand (y == 0) { | ||
| + | daca (y > xmaxpp ) atunci fie xmaxpp = y; | ||
| + | }; | ||
| + | }; | ||
| + | |||
| + | |||
| + | Rodin2009c: (line 1, column 11): | ||
| + | unexpected " " | ||
| + | expecting letter or digit, "_", operator or ";" | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {text "Initializare"; | ||
| + | fie v[0]=0; | ||
| + | citeste v[0]; | ||
| + | text "Gata. Apoi o afisare."; | ||
| + | scrie v[0]; | ||
| + | }; | ||
| + | |||
| + | |||
| + | |||
| + | Program 0: | ||
| + | Initializarea citirea si scrierea unui element de vector. | ||
| + | ========================================================= | ||
| + | "Initializare" | ||
| + | 67 | ||
| + | "Gata. Apoi o afisare." | ||
| + | 67 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { fie x[0]=3; | ||
| + | fie x[1]=1; | ||
| + | fie x[2]=2; | ||
| + | scrie x[0]; | ||
| + | scrie x[1]; | ||
| + | scrie x[2]; | ||
| + | } | ||
| + | 3 | ||
| + | 1 | ||
| + | 2 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { fie x[0]=0; | ||
| + | fie x[1]=1; | ||
| + | fie x[3]=3; | ||
| + | text "x indice 0 este" ; | ||
| + | scrie x[0]; | ||
| + | text "x indice 1 este" ; | ||
| + | scrie x[1]; | ||
| + | text "x indice 2 este" ; | ||
| + | scrie x[2]; | ||
| + | text "x indice 3 este" ; | ||
| + | scrie x[3]; | ||
| + | } | ||
| + | |||
| + | --- Spatile de dupa stringul lui text si inainte de | ||
| + | --- ; nu sunt permise | ||
| + | Rodin2009c: (line 4, column 25): | ||
| + | unexpected " " | ||
| + | expecting operator or ";" | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { fie x[0]=0; | ||
| + | fie x[1]=1; | ||
| + | fie x[3]=3; | ||
| + | text "x indice 0 este"; | ||
| + | scrie x[0]; | ||
| + | text "x indice 1 este"; | ||
| + | scrie x[1]; | ||
| + | text "x indice 2 este"; | ||
| + | scrie x[2]; | ||
| + | text "x indice 3 este"; | ||
| + | scrie x[3]; | ||
| + | } | ||
| + | |||
| + | --- Spatile de dupa stringul lui text si inainte de | ||
| + | --- ; nu sunt permise | ||
| + | |||
| + | --- Incercarea de afisare (folosire) a unei variabile | ||
| + | --- indexate neinitializate opreste executia pe tacute. | ||
| + | |||
| + | "x indice 0 este" | ||
| + | 0 | ||
| + | "x indice 1 este" | ||
| + | 1 | ||
| + | "x indice 2 este" | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {text "Initializare"; | ||
| + | pentru(fie x=1;x<10;fie x=x+1) | ||
| + | fie v[x]=x; | ||
| + | text "gata. Apoi afisare."; | ||
| + | pentru(fie x=1;x<10;fie x=x+1) | ||
| + | scrie v[x]; | ||
| + | }; | ||
| + | |||
| + | |||
| + | |||
| + | Program 4: bucla cu nr cunoscut de pasi | ||
| + | Initializarea si scrierea unui vector. | ||
| + | ======================================= | ||
| + | "Initializare" | ||
| + | "gata. Apoi afisare." | ||
| + | 1 | ||
| + | 2 | ||
| + | 3 | ||
| + | 4 | ||
| + | 5 | ||
| + | 6 | ||
| + | 7 | ||
| + | 8 | ||
| + | 9 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {text "Initializare"; | ||
| + | pentru(fie x=1;x<10;fie x=x+1) | ||
| + | {fie v[x]=0; | ||
| + | citeste v[x]; | ||
| + | }; | ||
| + | text "gata. Apoi afisare."; | ||
| + | pentru(fie x=1;x<10;fie x=x+1) | ||
| + | scrie v[x]; | ||
| + | }; | ||
| + | |||
| + | |||
| + | |||
| + | Program 5: bucla cu nr cunoscut de pasi | ||
| + | Initializarea si scrierea unui vector. | ||
| + | ======================================= | ||
| + | "Initializare" | ||
| + | 87 | ||
| + | 6 | ||
| + | 5 | ||
| + | 4 | ||
| + | 6 | ||
| + | 7 | ||
| + | 8 | ||
| + | 6 | ||
| + | 5 | ||
| + | "gata. Apoi afisare." | ||
| + | 87 | ||
| + | 6 | ||
| + | 5 | ||
| + | 4 | ||
| + | 6 | ||
| + | 7 | ||
| + | 8 | ||
| + | 6 | ||
| + | 5 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste x; | ||
| + | fie g=(\m.daca m==0 atunci 1 altfel 0)x; | ||
| + | scrie g; | ||
| + | } | ||
| + | |||
| + | 4 | ||
| + | 0 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste x; | ||
| + | fie g=(\m.daca m==0 atunci 1 altfel 0)(\u.u+1)x; | ||
| + | scrie g; | ||
| + | } | ||
| + | |||
| + | 67 | ||
| + | 0 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {citeste x; | ||
| + | fie g=(\m.m+1)x; | ||
| + | scrie g; | ||
| + | } | ||
| + | |||
| + | 7 | ||
| + | 8 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | [dan@localhost Rodin2009a]$ | ||
| + | |||
| + | </haskell> | ||
| + | ==. Cateva sortari == | ||
| + | <haskell> | ||
| + | {text "Selsort pentru 10 numere "; | ||
| + | pentru(fie xk=1; xk<11; fie xk=xk+1) | ||
| + | |||
| + | fie z[xk]=citeste z; | ||
| + | |||
| + | pentru(fie xk=1; xk<10; fie xk=xk+1) | ||
| + | |||
| + | { fie xi=xk; | ||
| + | |||
| + | pentru(fie xj=xk+1; xj<11; fie xj=xj+1) | ||
| + | |||
| + | daca (z[xj]<z[xi]) atunci fie xi=xj altfel 0; | ||
| + | |||
| + | fie aux=z[xk]; | ||
| + | |||
| + | fie z[xk]=z[xi]; | ||
| + | |||
| + | fie z[xi] = aux; | ||
| + | |||
| + | }; | ||
| + | |||
| + | text "Sortate "; | ||
| + | |||
| + | pentru(fie xk=1; xk<11; fie xk=xk+1) | ||
| + | |||
| + | {scrie z[xk]; | ||
| + | |||
| + | }; | ||
| + | |||
| + | }; | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | -- Algoritmul de sortare prin selectie directa | ||
| + | |||
| + | -- Pentru RodinV082d 1/12/2008 | ||
| + | </haskell> | ||
| + | '''Si o varianta diferita''' | ||
| + | {text "Selsort pentru 10 numere "; | ||
| + | |||
| + | pentru(fie xk=1; xk<11; fie xk=xk+1) | ||
| + | |||
| + | fie z[xk]=0; | ||
| + | pentru(fie xk=1; xk<11; fie xk=xk+1) | ||
| + | |||
| + | citeste z[xk]; | ||
| + | |||
| + | pentru(fie xk=1; xk<10; fie xk=xk+1) | ||
| + | |||
| + | { fie xi=xk; | ||
| + | |||
| + | pentru(fie xj=xk+1; xj<11; fie xj=xj+1) | ||
| + | |||
| + | daca (z[xj]<z[xi]) atunci fie xi=xj altfel 0; | ||
| + | |||
| + | fie aux=z[xk]; | ||
| + | |||
| + | fie z[xk]=z[xi]; | ||
| + | |||
| + | fie z[xi] = aux; | ||
| + | |||
| + | }; | ||
| + | |||
| + | text "Sortate "; | ||
| + | |||
| + | pentru(fie xk=1; xk<11; fie xk=xk+1) | ||
| + | |||
| + | {scrie z[xk]; | ||
| + | |||
| + | }; | ||
| + | |||
| + | }; | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | -- Algoritmul de sortare prin selectie directa | ||
| + | |||
| + | -- Pentru RodinV082d 1/12/2008 | ||
| + | |||
| + | |||
| + | |||
| + | ==. Exemple cu vectori == | ||
| + | Vedeti si la sortari. | ||
| + | |||
| + | ==. Exemple cu operatii de I/O, inclusiv vectori == | ||
| + | <haskell> | ||
| + | |||
| + | Program 0: | ||
| + | Initializarea citirea si scrierea unui element de vector. | ||
| + | ========================================================= | ||
| + | "Initializare" | ||
| + | 67 | ||
| + | "Gata. Apoi o afisare." | ||
| + | 67 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { fie x[0]=3; | ||
| + | fie x[1]=1; | ||
| + | fie x[2]=2; | ||
| + | scrie x[0]; | ||
| + | scrie x[1]; | ||
| + | scrie x[2]; | ||
| + | } | ||
| + | 3 | ||
| + | 1 | ||
| + | 2 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { fie x[0]=0; | ||
| + | fie x[1]=1; | ||
| + | fie x[3]=3; | ||
| + | text "x indice 0 este" ; | ||
| + | scrie x[0]; | ||
| + | text "x indice 1 este" ; | ||
| + | scrie x[1]; | ||
| + | text "x indice 2 este" ; | ||
| + | scrie x[2]; | ||
| + | text "x indice 3 este" ; | ||
| + | scrie x[3]; | ||
| + | } | ||
| + | |||
| + | --- Spatile de dupa stringul lui text si inainte de | ||
| + | --- ; nu sunt permise | ||
| + | Rodin2009c: (line 4, column 25): | ||
| + | unexpected " " | ||
| + | expecting operator or ";" | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | { fie x[0]=0; | ||
| + | fie x[1]=1; | ||
| + | fie x[3]=3; | ||
| + | text "x indice 0 este"; | ||
| + | scrie x[0]; | ||
| + | text "x indice 1 este"; | ||
| + | scrie x[1]; | ||
| + | text "x indice 2 este"; | ||
| + | scrie x[2]; | ||
| + | text "x indice 3 este"; | ||
| + | scrie x[3]; | ||
| + | } | ||
| + | |||
| + | --- Spatile de dupa stringul lui text si inainte de | ||
| + | --- ; nu sunt permise | ||
| + | |||
| + | --- Incercarea de afisare (folosire) a unei variabile | ||
| + | --- indexate neinitializate opreste executia pe tacute. | ||
| + | |||
| + | "x indice 0 este" | ||
| + | 0 | ||
| + | "x indice 1 este" | ||
| + | 1 | ||
| + | "x indice 2 este" | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {text "Initializare"; | ||
| + | pentru(fie x=1;x<10;fie x=x+1) | ||
| + | fie v[x]=x; | ||
| + | text "gata. Apoi afisare."; | ||
| + | pentru(fie x=1;x<10;fie x=x+1) | ||
| + | scrie v[x]; | ||
| + | }; | ||
| + | |||
| + | |||
| + | |||
| + | Program 4: bucla cu nr cunoscut de pasi | ||
| + | Initializarea si scrierea unui vector. | ||
| + | ======================================= | ||
| + | "Initializare" | ||
| + | "gata. Apoi afisare." | ||
| + | 1 | ||
| + | 2 | ||
| + | 3 | ||
| + | 4 | ||
| + | 5 | ||
| + | 6 | ||
| + | 7 | ||
| + | 8 | ||
| + | 9 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | 2009c - Pseudocod Rodin - Codename:Rodin2009c | ||
| + | Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. | ||
| + | Sintaxa http://www.haskell.org/haskellwiki/Rodin | ||
| + | {text "Initializare"; | ||
| + | pentru(fie x=1;x<10;fie x=x+1) | ||
| + | {fie v[x]=0; | ||
| + | citeste v[x]; | ||
| + | }; | ||
| + | text "gata. Apoi afisare."; | ||
| + | pentru(fie x=1;x<10;fie x=x+1) | ||
| + | scrie v[x]; | ||
| + | }; | ||
| + | |||
| + | |||
| + | |||
| + | Program 5: bucla cu nr cunoscut de pasi | ||
| + | Initializarea si scrierea unui vector. | ||
| + | ======================================= | ||
| + | "Initializare" | ||
| + | 87 | ||
| + | 6 | ||
| + | 5 | ||
| + | 4 | ||
| + | 6 | ||
| + | 7 | ||
| + | 8 | ||
| + | 6 | ||
| + | 5 | ||
| + | "gata. Apoi afisare." | ||
| + | 87 | ||
| + | 6 | ||
| + | 5 | ||
| + | 4 | ||
| + | 6 | ||
| + | 7 | ||
| + | 8 | ||
| + | 6 | ||
| + | 5 | ||
| + | |||
| + | |||
| + | Am terminat de rulat programul. Rodin2009c | ||
| + | Alternativa cu 2 ramuri si o implementare a vectorilor | ||
| + | Obligatoriu: sa fie initializati. (Nu dau erori!) | ||
| + | Este posibila si citirea vectorilor. | ||
| + | ... ca si a variabilelor simple. | ||
| + | versiunea din martie 2009 | ||
| + | |||
| + | </haskell> | ||
| + | |||
| + | ==. Arhive == | ||
| + | Vedeti surse impachetate impreuna cu executabilul necesar rularii lor in | ||
| + | rubrica [[Rodin/Download]]. | ||
| + | |||
| + | ==. Bucle pentru == | ||
| + | Mai puteti citi la pagina | ||
[[Rodin/BuclePentru]] despre o eroare de sintaxa mai neobisnuita pe care Rodin o semnaleaza INAINTE de locul unde ea apare. | [[Rodin/BuclePentru]] despre o eroare de sintaxa mai neobisnuita pe care Rodin o semnaleaza INAINTE de locul unde ea apare. | ||
---- | ---- | ||
Pagina in curs de dezvoltare. | Pagina in curs de dezvoltare. | ||
Revision as of 14:08, 22 March 2009
Vor fi aici...
Contents |
1 . Setul pentru incepatori
[dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg68b.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {fie a=2; fie b=10*a; pentru(fie a=8+a;a<b;fie a=a+1) {scrie a;}; }; ; Nu uitati nici acolada finala !!! Bad ... unde e greseala ? 10 11 12 13 14 15 16 17 18 19 Am terminat de rulat programul:"pm4-pg68b.txt" Rodin2009e - versiunea din 8 martie 2009. Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {fie k=0; cat timp (i>0) executa {fie i=i%2; fie k=k+1; }; }; Rodin2009e: (line 3, column 4): unexpected "{" expecting space, operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste i; fie k=0; cat timp (i>0) executa {fie i=i%2; fie k=k+1; }; scrie k; }; Cate cifre binare va avea un numar ? Rodin2009e: (line 4, column 4): unexpected "{" expecting space, operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste i; fie k=0; cat timp (i>0) executa {fie i=i/2; fie k=k+1; }; scrie k; }; Cate cifre binare va avea un numar ? Rodin2009e: (line 4, column 4): unexpected "{" expecting space, operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste i; fie k=0; cat timp (i>0) {fie i=i/2; fie k=k+1; }; scrie k; }; Cate cifre binare va avea un numar ? 12 4 Am terminat de rulat programul:"pm4-pg71.txt" Rodin2009e - versiunea din 8 martie 2009. Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. [dan@localhost Rodin2009a]$ ./Rodin2009e pm4-pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin Rodin2009e: pm4-pg71e2.txt: openFile: does not exist (No such file or directory) [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; viteste step; fie v=low; fie temp=high; daca (step>0) atunci cat timp (v<=temp) { instructiuni ; fie v=v+step;}; altfel cat timp (v>=temp) { instructiuni ; fie v=v+step;}; } Rodin2009e: (line 3, column 10): unexpected " " expecting letter or digit, "_", operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci cat timp (v<=temp) { instructiuni ; fie v=v+step;}; altfel cat timp (v>=temp) { instructiuni ; fie v=v+step;}; } Rodin2009e: (line 7, column 9): unexpected "t" expecting space, "altfel", operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci cat timp (v<=temp) {instructiuni;fie v=v+step;}; altfel cat timp (v>=temp) {instructiuni;fie v=v+step;}; } Rodin2009e: (line 7, column 9): unexpected "t" expecting space, "altfel", operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci cat timp (v<temp+1) {instructiuni;fie v=v+step;}; altfel cat timp (v>temp-1) {instructiuni;fie v=v+step;}; } Rodin2009e: (line 6, column 7): unexpected " " expecting letter or digit, "_", operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci cat timp (v<temp+1) {instructiuni;fie v=v+step;}; altfel cat timp (v>temp-1) {instructiuni;fie v=v+step;}; }; Rodin2009e: (line 6, column 7): unexpected " " expecting letter or digit, "_", operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci cat timp (v<temp+1) {instructiuni;fie v=v+step;}; altfel cat timp (v>temp-1) {instructiuni;fie v=v+step;}; }; Rodin2009e: (line 6, column 7): unexpected " " expecting letter or digit, "_", operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci cat timp (v<temp+1) {instructiuni;fie v=v+step;}; altfel cat timp (v>temp-1) {instructiuni;fie v=v+step;}; }; Rodin2009e: (line 6, column 7): unexpected " " expecting letter or digit, "_", operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci {cat timp (v<temp+1) {instructiuni;fie v=v+step;};} altfel {cat timp (v>temp-1) {instructiuni;fie v=v+step;};} }; Rodin2009e: (line 9, column 56): unexpected "\n" expecting operator or ";" [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e2.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci {cat timp (v<temp+1) {instructiuni;fie v=v+step;};} altfel {cat timp (v>temp-1) {instructiuni;fie v=v+step;};}; }; 1 10 2 Am terminat de rulat programul:"pm4pg71e2.txt" Rodin2009e - versiunea din 8 martie 2009. Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e3.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci {cat timp (v<temp+1) {scrie v;fie v=v+step;};} altfel {cat timp (v>temp-1) {scrie v;fie v=v+step;};}; }; Ideea simularii lui 'pentru' folosind 'cat timp'. 1 10 2 1 3 5 7 9 Am terminat de rulat programul:"pm4pg71e3.txt" Rodin2009e - versiunea din 8 martie 2009. Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e3.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci {cat timp (v<temp+1) {scrie v;fie v=v+step;};} altfel {cat timp (v>temp-1) {scrie v;fie v=v+step;};}; }; Ideea simularii lui 'pentru' folosind 'cat timp'. 10 1 -2 10 8 6 4 2 Am terminat de rulat programul:"pm4pg71e3.txt" Rodin2009e - versiunea din 8 martie 2009. Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. [dan@localhost Rodin2009a]$ ./Rodin2009e pm4pg71e3.txt 2009e - Pseudocod Rodin - Codename:Rodin2009e Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { citeste low; citeste high; citeste step; fie v=low; fie temp=high; daca (step>0) atunci {cat timp (v<temp+1) {scrie v;fie v=v+step;};} altfel {cat timp (v>temp-1) {scrie v;fie v=v+step;};}; }; Ideea simularii lui 'pentru' folosind 'cat timp'. 1 10 3 1 4 7 10 Am terminat de rulat programul:"pm4pg71e3.txt" Rodin2009e - versiunea din 8 martie 2009. Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. [dan@localhost Rodin2009a]$
2 . Un set ceva mai avansat
2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste x; fie y=0; repeta { fie x=x-1; fie y=y+1; } pana cand ( x<0 ); scrie x; scrie y; } Rodin2009c: (line 7, column 2): unexpected "a" expecting "pina cand" AICI E O GRESEALA, trebuia scris "pina cand" nu "pana cand" 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste x; fie y=0; executa { fie x=x-1; fie y=y+1; } atat cat (x>0); scrie x; scrie y; } 7 0 7 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste x; citeste y; daca x>y atunci scrie x altfel scrie y; citeste x; } -- Acest program ar trebui sa scrie doar unul dintre mesaje -- 78 8 78 9 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {pentru(fie x=1;x<10;fie x=x+1) scrie x;}; 1 2 3 4 5 6 7 8 9 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { pentru (fie x=1; x<3; fie x=x+1) pentru (fie y=x+1; y<3; fie y=y+1) { scrie x*x+y*y; scrie y*y-x*x; scrie 2*x*y; }; }; 5 3 4 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {text "Citesc 10 elemente"; pentru(fie xk=1; xk<11; fie xk=xk+1) citeste z[xk]; }; "Citesc 10 elemente" Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {text "Program insertsort"; text "Tastati cele 10 numere"; pentru(fie k=1; k<11; fie k=k+1) citeste v[k]; pentru(fie k=2; k<11; fie k=k+1) {fie j=k; fie i=k-1; repeta {daca (v[j]<v[i]) atunci {fie aux = v[j]; fie v[j]= v[i]; fie v[i]=aux; fie j=i; fie j=j-1; }; } pina cand (i==0); }; text "Numerele sortate"; pentru(fie k=1; k<11; fie k=k+1) citeste v[k]; }; -- inainte de "pana cand" nu se pune ; -- Conditii cum e (v[j]<v[i]) mai bine le -- puneti in paranteza. Rodin2009c: (line 5, column 8): unexpected "(" expecting letter or digit, "_", operator or ";" 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {text "Selsort pentru 10 numere "; pentru(fie xk=1; xk<11; fie xk=xk+1) citeste z[xk]; pentru(fie xk=1; xk<10; fie xk=xk+1) { fie xi=xk; pentru(fie xj=xk+1; xj<11; fie xj=xj+1) daca (z[xj]<z[xi]) atunci fie xi=xj; fie aux=z[xk]; fie z[xk]=z[xi]; fie z[xi] = aux; }; text "Sortate "; pentru(fie xk=1; xk<11; fie xk=xk+1) {scrie z[xk]; }; }; -- Algoritmul de sortare prin selectie directa -- Pentru RodinV082d 1/12/2008 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { vorbeste "maximul dintr-un sir de numere \n"; vorbeste "pozitive terminat cu zero \\n"; fie xmaxpp = 0; tasteza y; pina cand (y == 0) { daca (y > xmaxpp ) atunci fie xmaxpp = y; }; }; Rodin2009c: (line 1, column 11): unexpected " " expecting letter or digit, "_", operator or ";" 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {text "Initializare"; fie v[0]=0; citeste v[0]; text "Gata. Apoi o afisare."; scrie v[0]; }; Program 0: Initializarea citirea si scrierea unui element de vector. ========================================================= "Initializare" 67 "Gata. Apoi o afisare." 67 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { fie x[0]=3; fie x[1]=1; fie x[2]=2; scrie x[0]; scrie x[1]; scrie x[2]; } 3 1 2 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { fie x[0]=0; fie x[1]=1; fie x[3]=3; text "x indice 0 este" ; scrie x[0]; text "x indice 1 este" ; scrie x[1]; text "x indice 2 este" ; scrie x[2]; text "x indice 3 este" ; scrie x[3]; } --- Spatile de dupa stringul lui text si inainte de --- ; nu sunt permise Rodin2009c: (line 4, column 25): unexpected " " expecting operator or ";" 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { fie x[0]=0; fie x[1]=1; fie x[3]=3; text "x indice 0 este"; scrie x[0]; text "x indice 1 este"; scrie x[1]; text "x indice 2 este"; scrie x[2]; text "x indice 3 este"; scrie x[3]; } --- Spatile de dupa stringul lui text si inainte de --- ; nu sunt permise --- Incercarea de afisare (folosire) a unei variabile --- indexate neinitializate opreste executia pe tacute. "x indice 0 este" 0 "x indice 1 este" 1 "x indice 2 este" Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {text "Initializare"; pentru(fie x=1;x<10;fie x=x+1) fie v[x]=x; text "gata. Apoi afisare."; pentru(fie x=1;x<10;fie x=x+1) scrie v[x]; }; Program 4: bucla cu nr cunoscut de pasi Initializarea si scrierea unui vector. ======================================= "Initializare" "gata. Apoi afisare." 1 2 3 4 5 6 7 8 9 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {text "Initializare"; pentru(fie x=1;x<10;fie x=x+1) {fie v[x]=0; citeste v[x]; }; text "gata. Apoi afisare."; pentru(fie x=1;x<10;fie x=x+1) scrie v[x]; }; Program 5: bucla cu nr cunoscut de pasi Initializarea si scrierea unui vector. ======================================= "Initializare" 87 6 5 4 6 7 8 6 5 "gata. Apoi afisare." 87 6 5 4 6 7 8 6 5 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste x; fie g=(\m.daca m==0 atunci 1 altfel 0)x; scrie g; } 4 0 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste x; fie g=(\m.daca m==0 atunci 1 altfel 0)(\u.u+1)x; scrie g; } 67 0 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {citeste x; fie g=(\m.m+1)x; scrie g; } 7 8 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 [dan@localhost Rodin2009a]$
3 . Cateva sortari
{text "Selsort pentru 10 numere "; pentru(fie xk=1; xk<11; fie xk=xk+1) fie z[xk]=citeste z; pentru(fie xk=1; xk<10; fie xk=xk+1) { fie xi=xk; pentru(fie xj=xk+1; xj<11; fie xj=xj+1) daca (z[xj]<z[xi]) atunci fie xi=xj altfel 0; fie aux=z[xk]; fie z[xk]=z[xi]; fie z[xi] = aux; }; text "Sortate "; pentru(fie xk=1; xk<11; fie xk=xk+1) {scrie z[xk]; }; }; -- Algoritmul de sortare prin selectie directa -- Pentru RodinV082d 1/12/2008
Si o varianta diferita {text "Selsort pentru 10 numere ";
pentru(fie xk=1; xk<11; fie xk=xk+1)
fie z[xk]=0; pentru(fie xk=1; xk<11; fie xk=xk+1)
citeste z[xk];
pentru(fie xk=1; xk<10; fie xk=xk+1)
{ fie xi=xk;
pentru(fie xj=xk+1; xj<11; fie xj=xj+1)
daca (z[xj]<z[xi]) atunci fie xi=xj altfel 0;
fie aux=z[xk];
fie z[xk]=z[xi];
fie z[xi] = aux;
};
text "Sortate ";
pentru(fie xk=1; xk<11; fie xk=xk+1)
{scrie z[xk];
};
};
-- Algoritmul de sortare prin selectie directa
-- Pentru RodinV082d 1/12/2008
4 . Exemple cu vectori
Vedeti si la sortari.
5 . Exemple cu operatii de I/O, inclusiv vectori
Program 0: Initializarea citirea si scrierea unui element de vector. ========================================================= "Initializare" 67 "Gata. Apoi o afisare." 67 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { fie x[0]=3; fie x[1]=1; fie x[2]=2; scrie x[0]; scrie x[1]; scrie x[2]; } 3 1 2 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { fie x[0]=0; fie x[1]=1; fie x[3]=3; text "x indice 0 este" ; scrie x[0]; text "x indice 1 este" ; scrie x[1]; text "x indice 2 este" ; scrie x[2]; text "x indice 3 este" ; scrie x[3]; } --- Spatile de dupa stringul lui text si inainte de --- ; nu sunt permise Rodin2009c: (line 4, column 25): unexpected " " expecting operator or ";" 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin { fie x[0]=0; fie x[1]=1; fie x[3]=3; text "x indice 0 este"; scrie x[0]; text "x indice 1 este"; scrie x[1]; text "x indice 2 este"; scrie x[2]; text "x indice 3 este"; scrie x[3]; } --- Spatile de dupa stringul lui text si inainte de --- ; nu sunt permise --- Incercarea de afisare (folosire) a unei variabile --- indexate neinitializate opreste executia pe tacute. "x indice 0 este" 0 "x indice 1 este" 1 "x indice 2 este" Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {text "Initializare"; pentru(fie x=1;x<10;fie x=x+1) fie v[x]=x; text "gata. Apoi afisare."; pentru(fie x=1;x<10;fie x=x+1) scrie v[x]; }; Program 4: bucla cu nr cunoscut de pasi Initializarea si scrierea unui vector. ======================================= "Initializare" "gata. Apoi afisare." 1 2 3 4 5 6 7 8 9 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009 2009c - Pseudocod Rodin - Codename:Rodin2009c Limbajul Pseudocod Rodin de Dan V Popa,Grupul Ro/Haskell. Sintaxa http://www.haskell.org/haskellwiki/Rodin {text "Initializare"; pentru(fie x=1;x<10;fie x=x+1) {fie v[x]=0; citeste v[x]; }; text "gata. Apoi afisare."; pentru(fie x=1;x<10;fie x=x+1) scrie v[x]; }; Program 5: bucla cu nr cunoscut de pasi Initializarea si scrierea unui vector. ======================================= "Initializare" 87 6 5 4 6 7 8 6 5 "gata. Apoi afisare." 87 6 5 4 6 7 8 6 5 Am terminat de rulat programul. Rodin2009c Alternativa cu 2 ramuri si o implementare a vectorilor Obligatoriu: sa fie initializati. (Nu dau erori!) Este posibila si citirea vectorilor. ... ca si a variabilelor simple. versiunea din martie 2009
6 . Arhive
Vedeti surse impachetate impreuna cu executabilul necesar rularii lor in rubrica Rodin/Download.
7 . Bucle pentru
Mai puteti citi la pagina Rodin/BuclePentru despre o eroare de sintaxa mai neobisnuita pe care Rodin o semnaleaza INAINTE de locul unde ea apare.
Pagina in curs de dezvoltare.
