Advertisement
jacknpoe

GOTOs encadeados (não precisa 2)

Aug 1st, 2015 (edited)
373
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.20 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. #define LARG 3
  4.  
  5. int main( void) {
  6.     char a, b, c, d;
  7.     int temp = 0;
  8.     int m[ LARG][ LARG][ LARG][ LARG] = {};
  9.  
  10.     printf( "-1 cancela a primeira coluna.\n");
  11.     printf( "-2 cancela a segunda coluna.\n");
  12.     printf( "-3 cancela a terceira coluna.\n");
  13.     printf( "-4 cancela a quarta coluna.\n");
  14.     printf( "-5 cancela as entradas.\n");
  15.     printf( "-6 sai do programa.\n\n");
  16.  
  17.     for( a = 0, temp = 0; (a < LARG) & (temp > -5); a ++ ) {    // FOR a
  18.         for( b = 0, temp = 0; (b < LARG) & (temp > -4); b++ ) {     // FOR b
  19.             for( c = 0, temp = 0; (c < LARG) & (temp > -3); c++ ) {     // FOR c
  20.                 for( d = 0, temp = 0; (d < LARG) & (temp > -2); d++ ) {     // FOR d
  21.                     printf( "M[%d][%d][%d][%d]: ", a, b, c, d);
  22.                     scanf( "%d", &temp);
  23.                     if( temp < 0) continue;     // desnecessário GOTO (cancela atual FOR d)
  24.                     m[ a][ b][ c][d] = temp;
  25.                 }   // FOR d
  26.             }   // FOR c
  27.         }   // FOR b
  28.     }   // FOR a
  29.     if( temp > -6) {    // desnecessário GOTO (sai do programa sem "imprimir")
  30.         printf( "\n\n");
  31.    
  32.         for( a = 0; a < LARG; a ++ )
  33.             for( b = 0; b < LARG; b++ )
  34.                 for( c = 0; c < LARG; c++ )
  35.                     for( d = 0; d < LARG; d++ )
  36.                         printf( "M[%d][%d][%d][%d]: %d\n", a, b, c, d, m[ a][ b][ c][d]);
  37.     }
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement