Entrega 1 de tetris

Dependencies:   mbed

Committer:
Mateom0104
Date:
Sun Oct 14 03:37:00 2018 +0000
Revision:
2:2ca73be1a865
Parent:
0:d1aba6605d0b
TETRIS ARREGLADO

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Mateom0104 0:d1aba6605d0b 1 #include "mbed.h"
Mateom0104 0:d1aba6605d0b 2
Mateom0104 0:d1aba6605d0b 3 uint8_t start[8]={0,0,0,0,0,0,0,0};
Mateom0104 0:d1aba6605d0b 4 int tamano;
Mateom0104 0:d1aba6605d0b 5 int posicion;
Mateom0104 0:d1aba6605d0b 6 int posicion_original;
Mateom0104 2:2ca73be1a865 7 int verificar2;
Mateom0104 0:d1aba6605d0b 8 void start0()
Mateom0104 0:d1aba6605d0b 9 {
Mateom0104 0:d1aba6605d0b 10 int i;
Mateom0104 0:d1aba6605d0b 11 for (i=0;i<7;i++)
Mateom0104 0:d1aba6605d0b 12 {
Mateom0104 0:d1aba6605d0b 13 start[i]=0;
Mateom0104 0:d1aba6605d0b 14 }
Mateom0104 0:d1aba6605d0b 15 }
Mateom0104 0:d1aba6605d0b 16
Mateom0104 0:d1aba6605d0b 17 void a(uint8_t giro)
Mateom0104 0:d1aba6605d0b 18 {
Mateom0104 0:d1aba6605d0b 19 start0();
Mateom0104 0:d1aba6605d0b 20 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 21 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 22 switch(giro)
Mateom0104 0:d1aba6605d0b 23 {
Mateom0104 0:d1aba6605d0b 24 case 0:
Mateom0104 0:d1aba6605d0b 25 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 26 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 27 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 28 tamano=3;
Mateom0104 0:d1aba6605d0b 29 break;
Mateom0104 0:d1aba6605d0b 30
Mateom0104 0:d1aba6605d0b 31
Mateom0104 0:d1aba6605d0b 32 case 1:
Mateom0104 0:d1aba6605d0b 33 start[posicion-1]=0b01000000;
Mateom0104 0:d1aba6605d0b 34 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 35 tamano=2;
Mateom0104 0:d1aba6605d0b 36 break;
Mateom0104 0:d1aba6605d0b 37
Mateom0104 0:d1aba6605d0b 38
Mateom0104 0:d1aba6605d0b 39 case 2:
Mateom0104 0:d1aba6605d0b 40 start[posicion-2]=0b01000000;
Mateom0104 0:d1aba6605d0b 41 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 42 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 43 tamano=3;
Mateom0104 0:d1aba6605d0b 44 break;
Mateom0104 0:d1aba6605d0b 45
Mateom0104 0:d1aba6605d0b 46
Mateom0104 0:d1aba6605d0b 47 case 3:
Mateom0104 0:d1aba6605d0b 48 start[posicion-1]=0b11100000;
Mateom0104 0:d1aba6605d0b 49 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 50 tamano=2;
Mateom0104 0:d1aba6605d0b 51 break;
Mateom0104 0:d1aba6605d0b 52
Mateom0104 0:d1aba6605d0b 53 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 54
Mateom0104 0:d1aba6605d0b 55 }
Mateom0104 0:d1aba6605d0b 56
Mateom0104 0:d1aba6605d0b 57
Mateom0104 0:d1aba6605d0b 58 }
Mateom0104 0:d1aba6605d0b 59 void b(uint8_t giro)
Mateom0104 0:d1aba6605d0b 60 {
Mateom0104 0:d1aba6605d0b 61 start0();
Mateom0104 0:d1aba6605d0b 62 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 63 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 64
Mateom0104 0:d1aba6605d0b 65 switch(giro)
Mateom0104 0:d1aba6605d0b 66 {
Mateom0104 0:d1aba6605d0b 67 case 0:
Mateom0104 0:d1aba6605d0b 68 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 69 tamano=1;
Mateom0104 0:d1aba6605d0b 70 break;
Mateom0104 0:d1aba6605d0b 71
Mateom0104 0:d1aba6605d0b 72
Mateom0104 0:d1aba6605d0b 73 case 1:
Mateom0104 0:d1aba6605d0b 74
Mateom0104 0:d1aba6605d0b 75 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 76 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 77 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 78 tamano=3;
Mateom0104 0:d1aba6605d0b 79 break;
Mateom0104 0:d1aba6605d0b 80
Mateom0104 0:d1aba6605d0b 81
Mateom0104 0:d1aba6605d0b 82 case 2:
Mateom0104 0:d1aba6605d0b 83 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 84 tamano=3;
Mateom0104 0:d1aba6605d0b 85 break;
Mateom0104 0:d1aba6605d0b 86
Mateom0104 0:d1aba6605d0b 87
Mateom0104 0:d1aba6605d0b 88 case 3:
Mateom0104 0:d1aba6605d0b 89 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 90 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 91 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 92 tamano=3;
Mateom0104 0:d1aba6605d0b 93 break;
Mateom0104 0:d1aba6605d0b 94
Mateom0104 0:d1aba6605d0b 95 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 96
Mateom0104 0:d1aba6605d0b 97 }
Mateom0104 0:d1aba6605d0b 98
Mateom0104 0:d1aba6605d0b 99 }
Mateom0104 0:d1aba6605d0b 100
Mateom0104 0:d1aba6605d0b 101 void c(uint8_t giro)
Mateom0104 0:d1aba6605d0b 102 {
Mateom0104 0:d1aba6605d0b 103 start0();
Mateom0104 0:d1aba6605d0b 104 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 105 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 106 switch(giro)
Mateom0104 0:d1aba6605d0b 107 {
Mateom0104 0:d1aba6605d0b 108 case 0:
Mateom0104 0:d1aba6605d0b 109 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 110 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 111 tamano=2;
Mateom0104 0:d1aba6605d0b 112 break;
Mateom0104 0:d1aba6605d0b 113
Mateom0104 0:d1aba6605d0b 114
Mateom0104 0:d1aba6605d0b 115 case 1:
Mateom0104 0:d1aba6605d0b 116 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 117 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 118 tamano=2;
Mateom0104 0:d1aba6605d0b 119 break;
Mateom0104 0:d1aba6605d0b 120
Mateom0104 0:d1aba6605d0b 121
Mateom0104 0:d1aba6605d0b 122 case 2:
Mateom0104 0:d1aba6605d0b 123 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 124 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 125 tamano=2;
Mateom0104 0:d1aba6605d0b 126 break;
Mateom0104 0:d1aba6605d0b 127
Mateom0104 0:d1aba6605d0b 128
Mateom0104 0:d1aba6605d0b 129 case 3:
Mateom0104 0:d1aba6605d0b 130 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 131 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 132 tamano=2;
Mateom0104 0:d1aba6605d0b 133 break;
Mateom0104 0:d1aba6605d0b 134
Mateom0104 0:d1aba6605d0b 135 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 136
Mateom0104 0:d1aba6605d0b 137 }
Mateom0104 0:d1aba6605d0b 138
Mateom0104 0:d1aba6605d0b 139 }
Mateom0104 0:d1aba6605d0b 140
Mateom0104 0:d1aba6605d0b 141 void d(uint8_t giro)
Mateom0104 0:d1aba6605d0b 142 {
Mateom0104 0:d1aba6605d0b 143 start0();
Mateom0104 0:d1aba6605d0b 144 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 145 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 146 switch(giro)
Mateom0104 0:d1aba6605d0b 147 {
Mateom0104 0:d1aba6605d0b 148 case 0:
Mateom0104 0:d1aba6605d0b 149 start[posicion-1]=0b11100000;
Mateom0104 0:d1aba6605d0b 150 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 151 tamano=2;
Mateom0104 0:d1aba6605d0b 152 break;
Mateom0104 0:d1aba6605d0b 153
Mateom0104 0:d1aba6605d0b 154
Mateom0104 0:d1aba6605d0b 155 case 1:
Mateom0104 0:d1aba6605d0b 156 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 157 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 158 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 159 tamano=3;
Mateom0104 0:d1aba6605d0b 160 break;
Mateom0104 0:d1aba6605d0b 161
Mateom0104 0:d1aba6605d0b 162
Mateom0104 0:d1aba6605d0b 163 case 2:
Mateom0104 0:d1aba6605d0b 164 start[posicion-1]=0b00100000;
Mateom0104 0:d1aba6605d0b 165 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 166 tamano=2;
Mateom0104 2:2ca73be1a865 167 verificar2=1;
Mateom0104 0:d1aba6605d0b 168 break;
Mateom0104 0:d1aba6605d0b 169
Mateom0104 0:d1aba6605d0b 170
Mateom0104 0:d1aba6605d0b 171 case 3:
Mateom0104 0:d1aba6605d0b 172 start[posicion-2]=0b11000000;
Mateom0104 0:d1aba6605d0b 173 start[posicion-1]=0b01000000;
Mateom0104 0:d1aba6605d0b 174 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 175 tamano=3;
Mateom0104 0:d1aba6605d0b 176 break;
Mateom0104 0:d1aba6605d0b 177 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 178
Mateom0104 0:d1aba6605d0b 179
Mateom0104 0:d1aba6605d0b 180 }
Mateom0104 0:d1aba6605d0b 181
Mateom0104 0:d1aba6605d0b 182 }
Mateom0104 0:d1aba6605d0b 183
Mateom0104 0:d1aba6605d0b 184 void e(uint8_t giro)
Mateom0104 0:d1aba6605d0b 185 {
Mateom0104 0:d1aba6605d0b 186 start0();
Mateom0104 0:d1aba6605d0b 187 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 188 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 189 switch(giro)
Mateom0104 0:d1aba6605d0b 190 {
Mateom0104 0:d1aba6605d0b 191 case 0:
Mateom0104 0:d1aba6605d0b 192 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 193 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 194 tamano=2;
Mateom0104 0:d1aba6605d0b 195 break;
Mateom0104 0:d1aba6605d0b 196
Mateom0104 0:d1aba6605d0b 197
Mateom0104 0:d1aba6605d0b 198 case 1:
Mateom0104 0:d1aba6605d0b 199 start[posicion-2]=0b01000000;
Mateom0104 0:d1aba6605d0b 200 start[posicion-1]=0b01000000;
Mateom0104 0:d1aba6605d0b 201 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 202 tamano=3;
Mateom0104 0:d1aba6605d0b 203 break;
Mateom0104 0:d1aba6605d0b 204
Mateom0104 0:d1aba6605d0b 205
Mateom0104 0:d1aba6605d0b 206 case 2:
Mateom0104 0:d1aba6605d0b 207 start[posicion-1]=0b11100000;
Mateom0104 0:d1aba6605d0b 208 start[posicion-0]=0b00100000;
Mateom0104 0:d1aba6605d0b 209 tamano=2;
Mateom0104 2:2ca73be1a865 210 verificar2=1;
Mateom0104 0:d1aba6605d0b 211 break;
Mateom0104 0:d1aba6605d0b 212
Mateom0104 0:d1aba6605d0b 213
Mateom0104 0:d1aba6605d0b 214 case 3:
Mateom0104 0:d1aba6605d0b 215 start[posicion-2]=0b11000000;
Mateom0104 0:d1aba6605d0b 216 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 217 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 218 tamano=3;
Mateom0104 0:d1aba6605d0b 219 break;
Mateom0104 0:d1aba6605d0b 220
Mateom0104 0:d1aba6605d0b 221 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 222
Mateom0104 0:d1aba6605d0b 223 }
Mateom0104 0:d1aba6605d0b 224
Mateom0104 0:d1aba6605d0b 225 }
Mateom0104 0:d1aba6605d0b 226
Mateom0104 0:d1aba6605d0b 227 void f (uint8_t giro)
Mateom0104 0:d1aba6605d0b 228 {
Mateom0104 0:d1aba6605d0b 229 start0();
Mateom0104 0:d1aba6605d0b 230 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 231 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 232 switch(giro)
Mateom0104 0:d1aba6605d0b 233 {
Mateom0104 0:d1aba6605d0b 234 case 0:
Mateom0104 0:d1aba6605d0b 235 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 236 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 237 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 238 tamano=3;
Mateom0104 0:d1aba6605d0b 239 break;
Mateom0104 0:d1aba6605d0b 240
Mateom0104 0:d1aba6605d0b 241
Mateom0104 0:d1aba6605d0b 242 case 1:
Mateom0104 0:d1aba6605d0b 243 start[posicion-1]=0b01100000;
Mateom0104 0:d1aba6605d0b 244 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 245 tamano=2;
Mateom0104 0:d1aba6605d0b 246 break;
Mateom0104 0:d1aba6605d0b 247
Mateom0104 0:d1aba6605d0b 248
Mateom0104 0:d1aba6605d0b 249 case 2:
Mateom0104 0:d1aba6605d0b 250 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 251 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 252 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 253 tamano=3;
Mateom0104 0:d1aba6605d0b 254 break;
Mateom0104 0:d1aba6605d0b 255
Mateom0104 0:d1aba6605d0b 256
Mateom0104 0:d1aba6605d0b 257 case 3:
Mateom0104 0:d1aba6605d0b 258 start[posicion-1]=0b01100000;
Mateom0104 0:d1aba6605d0b 259 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 260 tamano=2;
Mateom0104 0:d1aba6605d0b 261 break;
Mateom0104 0:d1aba6605d0b 262
Mateom0104 0:d1aba6605d0b 263 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 264
Mateom0104 0:d1aba6605d0b 265 }
Mateom0104 0:d1aba6605d0b 266
Mateom0104 0:d1aba6605d0b 267 }
Mateom0104 0:d1aba6605d0b 268
Mateom0104 0:d1aba6605d0b 269
Mateom0104 0:d1aba6605d0b 270 void g (uint8_t giro)
Mateom0104 0:d1aba6605d0b 271 {
Mateom0104 0:d1aba6605d0b 272 start0();
Mateom0104 0:d1aba6605d0b 273 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 274 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 275 switch(giro)
Mateom0104 0:d1aba6605d0b 276 {
Mateom0104 0:d1aba6605d0b 277 case 0:
Mateom0104 0:d1aba6605d0b 278 start[posicion-2]=0b01000000;
Mateom0104 0:d1aba6605d0b 279 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 280 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 281 tamano=3;
Mateom0104 0:d1aba6605d0b 282 break;
Mateom0104 0:d1aba6605d0b 283
Mateom0104 0:d1aba6605d0b 284
Mateom0104 0:d1aba6605d0b 285 case 1:
Mateom0104 0:d1aba6605d0b 286 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 287 start[posicion-0]=0b01100000;
Mateom0104 0:d1aba6605d0b 288 tamano=2;
Mateom0104 0:d1aba6605d0b 289 break;
Mateom0104 0:d1aba6605d0b 290
Mateom0104 0:d1aba6605d0b 291
Mateom0104 0:d1aba6605d0b 292
Mateom0104 0:d1aba6605d0b 293 case 2:
Mateom0104 0:d1aba6605d0b 294 start[posicion-2]=0b01000000;
Mateom0104 0:d1aba6605d0b 295 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 296 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 297 tamano=3;
Mateom0104 0:d1aba6605d0b 298 break;
Mateom0104 0:d1aba6605d0b 299
Mateom0104 0:d1aba6605d0b 300
Mateom0104 0:d1aba6605d0b 301 case 3:
Mateom0104 0:d1aba6605d0b 302 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 303 start[posicion-0]=0b01100000;
Mateom0104 0:d1aba6605d0b 304 tamano=2;
Mateom0104 0:d1aba6605d0b 305 break;
Mateom0104 0:d1aba6605d0b 306
Mateom0104 0:d1aba6605d0b 307 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 308
Mateom0104 0:d1aba6605d0b 309 }
Mateom0104 0:d1aba6605d0b 310
Mateom0104 0:d1aba6605d0b 311 }