123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- <!DOCTYPE html>
- <html>
- <head>
- <link rel="stylesheet" type="text/css" href="js/semantic/semantic.min.css">
- <style>
- .ivprog-io-output {
- border: 1px solid gainsboro;
- width: 80%;
- height: 360px;
- overflow-y: scroll;
- background-color: black;
- color: white;
- }
- .ivprog-io-input {
- width: 80%;
- margin-top: 10px;
- border: 1.5px solid green;
- height: 3rem;
- color: black;
- font-size: 12pt;
- }
- </style>
- <title></title>
- </head>
- <body>
- <div style="padding-top: 50px;content: ''"></div>
- <div class="ui container grid">
-
- <div class="four wide column">
- <div class="row">
- <textarea class="ui form control" name="input" id="input" cols="100" rows="30">
- programa {
- funcao inicio() {
- inteiro a[16] = {1,8,3,5,7,4,2,1,8,3,5,7,-4,2,10,-1}
- inteiro tam = numero_elementos(a) -1
- inteiro i
- a = mergeSort(a,0,tam)
- para(i = 0; i< tam; i = i + 1) {
- escreva(a[i]+", ")
- }
- escreva(a[i])
- }
-
- funcao inteiro[] mergeSort(inteiro a[], inteiro init, inteiro end) {
- inteiro meio = (init+end)/2
- inteiro size1 = meio - init + 1, size2 = end - meio, sizeF = end - init + 1
- inteiro p1[size1]
- inteiro p2[size2]
- inteiro f[sizeF]
- se (init < end) {
- p1 = mergeSort(a, init, meio)
- p2 = mergeSort(a, meio+1, end)
- f = merge(p1,p2)
- retorne f
- } senao {
- retorne {a[init]}
- }
- }
-
- funcao inteiro[] merge(inteiro p1[], inteiro p2[]) {
- inteiro lenp1 = numero_elementos(p1)
- inteiro lenp2 = numero_elementos(p2)
- inteiro sizeF = lenp1 + lenp2
- inteiro f[sizeF]
- inteiro i = 0, a = 0, b =0
- enquanto(i < lenp1+lenp2) {
- se(a < lenp1) {
- se(b <lenp2) {
- se(p1[a] <= p2[b]) {
- f[i] = p1[a]
- a = a + 1
- i = i + 1
- } senao {
- f[i] = p2[b]
- b = b + 1
- i = i + 1
- }
- } senao {
- enquanto(a < lenp1) {
- f[i] = p1[a]
- a = a + 1
- i = i + 1
- }
- }
- } senao {
- enquanto(b < lenp2) {
- f[i] = p2[b]
- b = b + 1
- i = i + 1
- }
- }
- }
- retorne f
- }
- }
- </textarea>
- </div>
- <div class="row">
- <button class="ui button" id="btn">Run</button>
- </div>
- </div>
- <div class="six wide column">
- <div id="dom-out" class="ivprog-io-output">
- </div>
- <input id="dom-in" type="text" class="ivprog-io-input">
- </div>
- <div class="six wide column">
- <div style="overflow-y: scroll; height: 70%;">
- <pre id="json-renderer" class="ui right floated"></pre>
- </div>
- </div>
- </div>
-
-
- </body>
- <script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>
- <script type="text/javascript" src="js/jquery.json-editor.min.js"></script>
- <script type="text/javascript" src="build/ivprog.bundle.js"></script>
- </html>
|