program.go 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327
  1. @target mips, mipt2
  2. package main;
  3. const (
  4. LIN = 2
  5. COL = 2
  6. )
  7. var (
  8. matrizA [LIN][COL]int
  9. )
  10. func main() {
  11. var aux = 0
  12. /**
  13. FOR_OR_AND_AND_1:
  14. for i := 0; (((i < LIN || 1 == 1) && (i < LIN && 1 == 1)) && 1 == 1 ); i++ {
  15. //continue
  16. aux = aux + 10
  17. //break
  18. }
  19. FOR_OR_AND_AND_OR:
  20. for i := 0; (((i < LIN || 1 == 1) && (i < LIN && 1 == 1)) || 1 == 1 ); i++ {
  21. //continue
  22. aux = aux + 10
  23. //break
  24. }
  25. */
  26. /**
  27. FOR_OR_AND_AND_1:
  28. for i := 0; ((i < LIN || 1 == 1) && (i < LIN && 1 == 1)); i++ {
  29. //continue
  30. aux = aux + 10
  31. //break
  32. }
  33. FOR_AND_AND_OR_1:
  34. for i := 0; ((i < LIN && 1 == 1) && (i < LIN || 1 == 1)); i++ {
  35. //continue
  36. aux = aux + 10
  37. //break
  38. }
  39. FOR_AND_OR_OR_1:
  40. for i := 0; ((i < LIN && 1 == 1) || (i < LIN || 1 == 1)); i++ {
  41. //continue
  42. aux = aux + 10
  43. //break
  44. }
  45. FOR_OR_OR_AND_1:
  46. for i := 0; ((i < LIN || 1 == 1) || (i < LIN && 1 == 1)); i++ {
  47. //continue
  48. aux = aux + 10
  49. //break
  50. }
  51. FOR_AND_OR_1:
  52. for i := 0; ((i < LIN || 1 == 1) && (i < LIN || 1 == 1)); i++ {
  53. //continue
  54. aux = aux + 10
  55. //break
  56. }
  57. FOR_OR_AND_1:
  58. for i := 0; ((i < LIN && 1 == 1) || (i < LIN && 1 == 1)); i++ {
  59. //continue
  60. aux = aux + 10
  61. //break
  62. }
  63. FOR_OR_1:
  64. for i := 0; ((i < LIN || 1 == 1) || (i < LIN || 1 == 1)); i++ {
  65. //continue
  66. aux = aux + 10
  67. //break
  68. }
  69. FOR_OR_2:
  70. for i := 0; i < LIN || 1 == 1; i++ {
  71. //continue
  72. aux = aux + 10
  73. //break
  74. }
  75. FOR_0:
  76. for i := 0; ((i < LIN && 1 == 1) && (i < LIN && 1 == 1)); i++ {
  77. //continue
  78. aux = aux + 10
  79. //break
  80. }
  81. FOR_1:
  82. for i := 0; (i < LIN && 1 == 1); i++ {
  83. //continue
  84. aux = aux + 10
  85. //break
  86. }
  87. FOR_2:
  88. for i := 0; (i < LIN || 1 == 1); i++ {
  89. //continue
  90. aux = aux + 10
  91. //break
  92. }
  93. FOR_3:
  94. for i := 0; (i < LIN); i++ {
  95. //continue
  96. aux = aux + 10
  97. //break
  98. }
  99. */
  100. }
  101. /**
  102. package main;
  103. const (
  104. LIN = 2
  105. COL = 2
  106. )
  107. var (
  108. matrizA [LIN][COL]int
  109. matrizB [LIN][COL]int
  110. matrizR [LIN][COL]int
  111. )
  112. func preenche(){
  113. var k = 1
  114. for i := 0; i < LIN ; i++ {
  115. for j := 0; j < COL ; j++ {
  116. matrizA[i][j] = k
  117. matrizB[i][j] = k
  118. k++
  119. }
  120. }
  121. }
  122. func multiplica() {
  123. var aux = 0
  124. for i := 0; i < LIN; i++ {
  125. for j := 0; j < COL; j++ {
  126. for k := 0; k < LIN; k++ {
  127. aux += matrizA[i][k] * matrizB[k][j]
  128. }
  129. matrizR[i][j] = aux
  130. aux = 0
  131. }
  132. }
  133. }
  134. func main() {
  135. preenche()
  136. multiplica()
  137. }
  138. */
  139. /**
  140. package main;
  141. const (
  142. LIN = 2
  143. COL = 2
  144. )
  145. type X struct {
  146. a int
  147. b int
  148. c int
  149. }
  150. var (
  151. a [5][6]int
  152. matrixX [3]X
  153. )
  154. func atualiza(x,i int) {
  155. if (x == 1){
  156. //a[x][i].c = 1
  157. // a[x][i] = 1
  158. a[x][i] = 10
  159. } else {
  160. i = 1
  161. }
  162. }
  163. func atualiza2(x *int) int {
  164. *x = 10
  165. return 2
  166. }
  167. func main() int {
  168. x := 1
  169. i := 1
  170. var (
  171. varx X
  172. )
  173. i = atualiza2(y)
  174. //atualiza(x,i)
  175. //varx.c = 50
  176. //matrixX[i].c = 50
  177. /*
  178. Testados
  179. IF_BASIC:
  180. if i < LIN {
  181. x = 10
  182. }
  183. IF_ANDOR:
  184. if (i < LIN && true) || 1 == 1 {
  185. x = 10
  186. } else {
  187. x = 20
  188. }
  189. */
  190. /*
  191. IF_ORAND:
  192. if (i < LIN || true) && 1 == 1 {
  193. x = 10
  194. } else {
  195. x = 20
  196. }
  197. IF_ANDOR_R:
  198. if 1 == 1 || (i < LIN && true){
  199. x = 10
  200. } else {
  201. x = 20
  202. }
  203. IF_ORAND_R:
  204. if 1 == 1 && (i < LIN || true) {
  205. x = 10
  206. } else {
  207. x = 20
  208. }
  209. IF_OROR:
  210. if (i < LIN || true) || 1 == 1 {
  211. x = 10
  212. } else {
  213. x = 20
  214. }
  215. IF_ANDAND:
  216. if (i < LIN && true) && 1 == 1 {
  217. x = 10
  218. } else {
  219. x = 20
  220. }
  221. IF_OROR_R:
  222. if 1 == 1 || (i < LIN || true){
  223. x = 10
  224. } else {
  225. x = 20
  226. }
  227. IF_ANDAND_R:
  228. if 1 == 1||(i < LIN && true) {
  229. x = 10
  230. } else {
  231. x = 20
  232. }
  233. IF_ORANDOR:
  234. if (i < LIN || true) && (1 == 1 || 2==2) {
  235. x = 10
  236. } else {
  237. x = 20
  238. }
  239. IF_ANDORAND_0:
  240. if (i < LIN || true) || (1 == 1 || 2 == 2 ) {
  241. x = 10
  242. } else {
  243. x = 20
  244. }
  245. IF_ANDORAND_1:
  246. if (i < LIN && true) || (1 == 1 || 2==2) {
  247. x = 10
  248. } else {
  249. x = 20
  250. }
  251. IF_ANDORAND_2:
  252. if (i < LIN || true) || (1 == 1 && 2 == 2 ) {
  253. x = 10
  254. } else {
  255. x = 20
  256. }
  257. IF_ANDORAND_10:
  258. if (i < LIN && true) || 2==2 {
  259. x = 10
  260. } else {
  261. x = 20
  262. }
  263. IF_ANDORAND_11:
  264. if 2==2 || (i < LIN && true) {
  265. x = 10
  266. } else {
  267. x = 20
  268. }
  269. return x
  270. */