program.go 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406
  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 (
  12. aux = 0
  13. i = 1
  14. )
  15. /**
  16. FOR_OR_AND_AND_1:
  17. for i := 0; (((i < LIN || 1 == 1) && (i < LIN && 1 == 1)) && 1 == 1 ); i++ {
  18. //continue
  19. aux = aux + 10
  20. //break
  21. }
  22. FOR_OR_AND_AND_OR:
  23. for i := 0; (((i < LIN || 1 == 1) && (i < LIN && 1 == 1)) || 1 == 1 ); i++ {
  24. //continue
  25. aux = aux + 10
  26. //break
  27. }
  28. */
  29. //if (i < LIN || 1 == 1) && (i < LIN && 1 == 1) {
  30. IF_01:
  31. if (i < LIN) {
  32. aux = 10
  33. }else {
  34. aux = 20
  35. }
  36. IF_02:
  37. if (i < LIN || 1 == 1) {
  38. aux = 10
  39. }else {
  40. aux = 20
  41. }
  42. IF_03:
  43. if (i < LIN && 1 == 1) {
  44. aux = 10
  45. }else {
  46. aux = 20
  47. }
  48. IF_04:
  49. if ((i < LIN || 1 == 1) || (i < LIN || 1 == 1)) {
  50. aux = 10
  51. }else {
  52. aux = 20
  53. }
  54. IF_05:
  55. if ((i < LIN && 1 == 1) && (i < LIN && 1 == 1)) {
  56. aux = 10
  57. }else {
  58. aux = 20
  59. }
  60. IF_06:
  61. if ((i < LIN && 1 == 1) || (i < LIN && 1 == 1)) {
  62. aux = 10
  63. }else {
  64. aux = 20
  65. }
  66. IF_07:
  67. if ((i < LIN || 1 == 1) && (i < LIN || 1 == 1)) {
  68. aux = 10
  69. }else {
  70. aux = 20
  71. }
  72. IF_08:
  73. if ((i < LIN && 1 == 1) && (i < LIN || 1 == 1)) {
  74. aux = 10
  75. }else {
  76. aux = 20
  77. }
  78. IF_09:
  79. if ((i < LIN || 1 == 1) && (i < LIN && 1 == 1)) {
  80. aux = 10
  81. }else {
  82. aux = 20
  83. }
  84. IF_10:
  85. if ((i < LIN && 1 == 1) || (i < LIN || 1 == 1)) {
  86. aux = 10
  87. }else {
  88. aux = 20
  89. }
  90. IF_11:
  91. if ((i < LIN || 1 == 1) || (i < LIN && 1 == 1)) {
  92. aux = 10
  93. }else {
  94. aux = 20
  95. }
  96. /**
  97. FOR_OR_AND_AND_1:
  98. for i := 0; ((i < LIN || 1 == 1) && (i < LIN && 1 == 1)); i++ {
  99. //continue
  100. aux = aux + 10
  101. //break
  102. }
  103. FOR_AND_AND_OR_1:
  104. for i := 0; ((i < LIN && 1 == 1) && (i < LIN || 1 == 1)); i++ {
  105. //continue
  106. aux = aux + 10
  107. //break
  108. }
  109. FOR_AND_OR_OR_1:
  110. for i := 0; ((i < LIN && 1 == 1) || (i < LIN || 1 == 1)); i++ {
  111. //continue
  112. aux = aux + 10
  113. //break
  114. }
  115. FOR_OR_OR_AND_1:
  116. for i := 0; ((i < LIN || 1 == 1) || (i < LIN && 1 == 1)); i++ {
  117. //continue
  118. aux = aux + 10
  119. //break
  120. }
  121. FOR_AND_OR_1:
  122. for i := 0; ((i < LIN || 1 == 1) && (i < LIN || 1 == 1)); i++ {
  123. //continue
  124. aux = aux + 10
  125. //break
  126. }
  127. FOR_OR_AND_1:
  128. for i := 0; ((i < LIN && 1 == 1) || (i < LIN && 1 == 1)); i++ {
  129. //continue
  130. aux = aux + 10
  131. //break
  132. }
  133. FOR_OR_1:
  134. for i := 0; ((i < LIN || 1 == 1) || (i < LIN || 1 == 1)); i++ {
  135. //continue
  136. aux = aux + 10
  137. //break
  138. }
  139. FOR_OR_2:
  140. for i := 0; i < LIN || 1 == 1; i++ {
  141. //continue
  142. aux = aux + 10
  143. //break
  144. }
  145. FOR_0:
  146. for i := 0; ((i < LIN && 1 == 1) && (i < LIN && 1 == 1)); i++ {
  147. //continue
  148. aux = aux + 10
  149. //break
  150. }
  151. FOR_1:
  152. for i := 0; (i < LIN && 1 == 1); i++ {
  153. //continue
  154. aux = aux + 10
  155. //break
  156. }
  157. FOR_2:
  158. for i := 0; (i < LIN || 1 == 1); i++ {
  159. //continue
  160. aux = aux + 10
  161. //break
  162. }
  163. FOR_3:
  164. for i := 0; (i < LIN); i++ {
  165. //continue
  166. aux = aux + 10
  167. //break
  168. }
  169. */
  170. }
  171. /**
  172. package main;
  173. const (
  174. LIN = 2
  175. COL = 2
  176. )
  177. var (
  178. matrizA [LIN][COL]int
  179. matrizB [LIN][COL]int
  180. matrizR [LIN][COL]int
  181. )
  182. func preenche(){
  183. var k = 1
  184. for i := 0; i < LIN ; i++ {
  185. for j := 0; j < COL ; j++ {
  186. matrizA[i][j] = k
  187. matrizB[i][j] = k
  188. k++
  189. }
  190. }
  191. }
  192. func multiplica() {
  193. var aux = 0
  194. for i := 0; i < LIN; i++ {
  195. for j := 0; j < COL; j++ {
  196. for k := 0; k < LIN; k++ {
  197. aux += matrizA[i][k] * matrizB[k][j]
  198. }
  199. matrizR[i][j] = aux
  200. aux = 0
  201. }
  202. }
  203. }
  204. func main() {
  205. preenche()
  206. multiplica()
  207. }
  208. */
  209. /**
  210. package main;
  211. const (
  212. LIN = 2
  213. COL = 2
  214. )
  215. type X struct {
  216. a int
  217. b int
  218. c int
  219. }
  220. var (
  221. a [5][6]int
  222. matrixX [3]X
  223. )
  224. func atualiza(x,i int) {
  225. if (x == 1){
  226. //a[x][i].c = 1
  227. // a[x][i] = 1
  228. a[x][i] = 10
  229. } else {
  230. i = 1
  231. }
  232. }
  233. func atualiza2(x *int) int {
  234. *x = 10
  235. return 2
  236. }
  237. func main() int {
  238. x := 1
  239. i := 1
  240. var (
  241. varx X
  242. )
  243. i = atualiza2(y)
  244. //atualiza(x,i)
  245. //varx.c = 50
  246. //matrixX[i].c = 50
  247. /*
  248. Testados
  249. IF_BASIC:
  250. if i < LIN {
  251. x = 10
  252. }
  253. IF_ANDOR:
  254. if (i < LIN && true) || 1 == 1 {
  255. x = 10
  256. } else {
  257. x = 20
  258. }
  259. */
  260. /*
  261. IF_ORAND:
  262. if (i < LIN || true) && 1 == 1 {
  263. x = 10
  264. } else {
  265. x = 20
  266. }
  267. IF_ANDOR_R:
  268. if 1 == 1 || (i < LIN && true){
  269. x = 10
  270. } else {
  271. x = 20
  272. }
  273. IF_ORAND_R:
  274. if 1 == 1 && (i < LIN || true) {
  275. x = 10
  276. } else {
  277. x = 20
  278. }
  279. IF_OROR:
  280. if (i < LIN || true) || 1 == 1 {
  281. x = 10
  282. } else {
  283. x = 20
  284. }
  285. IF_ANDAND:
  286. if (i < LIN && true) && 1 == 1 {
  287. x = 10
  288. } else {
  289. x = 20
  290. }
  291. IF_OROR_R:
  292. if 1 == 1 || (i < LIN || true){
  293. x = 10
  294. } else {
  295. x = 20
  296. }
  297. IF_ANDAND_R:
  298. if 1 == 1||(i < LIN && true) {
  299. x = 10
  300. } else {
  301. x = 20
  302. }
  303. IF_ORANDOR:
  304. if (i < LIN || true) && (1 == 1 || 2==2) {
  305. x = 10
  306. } else {
  307. x = 20
  308. }
  309. IF_ANDORAND_0:
  310. if (i < LIN || true) || (1 == 1 || 2 == 2 ) {
  311. x = 10
  312. } else {
  313. x = 20
  314. }
  315. IF_ANDORAND_1:
  316. if (i < LIN && true) || (1 == 1 || 2==2) {
  317. x = 10
  318. } else {
  319. x = 20
  320. }
  321. IF_ANDORAND_2:
  322. if (i < LIN || true) || (1 == 1 && 2 == 2 ) {
  323. x = 10
  324. } else {
  325. x = 20
  326. }
  327. IF_ANDORAND_10:
  328. if (i < LIN && true) || 2==2 {
  329. x = 10
  330. } else {
  331. x = 20
  332. }
  333. IF_ANDORAND_11:
  334. if 2==2 || (i < LIN && true) {
  335. x = 10
  336. } else {
  337. x = 20
  338. }
  339. return x
  340. */