sexta-feira, 30 de novembro de 2012

Campeonato Brasileiro - Linguagem C

Campeonato Brasileiro, programa que desenvolvi para mostrar na prática para todos os iniciantes
como usar alguns comandos indispensáveis para quem quer aprender a programar em c.
Veja como declarei um conjunto de times num ponteiro de strings, e veja também como foi declarado
a matriz de strings contendo todos os times do mesmo conjunto citado acima.
Veja também como foram organizados os ifs que comparam as variáveis contendo os números digitados,
e que no final do programa mostram os resultados certinhos conforme foram digitados, Sei que por aqui tem bons programadores,
más minha indicação mesmo é para iniciantes que ainda tem dúvidas de como usar estes comandos que foram apresentados aqui.
Mostro aqui também como usar acentuação em c, muito fácil, más também não sabia por isso estou compartilhando com quem não sabe.

Copie, cole e compile o código abaixo, a IDE que usei foi o eclipse.



#include <stdio.h>
#include <conio.h>
#include <time.h>
#include <locale.h>

void Janela6 ( ) {
     int lin, col;
     col = 0;
     for ( lin = 2; lin <= 24; lin++ )
         for ( col = 3; col <= 78; col++ ) {
              gotoxy ( col, lin );
              textbackground ( 6 );
              printf ( " " );
         }
     col = 0;
     for ( lin = 5; lin <= 21; lin++ )
         for ( col = 6; col <= 75; col++ ) {
              gotoxy ( col, lin );
              textbackground ( 16 );
              cprintf ( " " );
         }
}
void Funcexit ( ) {
     system ( "cls" );
     setlocale ( LC_ALL, "" );
     time_t hora_atual;
     Janela6 ( );
     gotoxy ( 32, 11 );
     textcolor ( LIGHTBLUE );
     printf ( "OPERAÇÃO FINALIZADA" );
     gotoxy ( 2, 23 );
     Sleep ( 1800 );
     gotoxy ( 20, 13 );
     textcolor ( LIGHTCYAN );
     printf ( "MUITO OBRIGADO POR TER USADO ESTE PROGRAMA\n" );
     time ( &hora_atual );
     gotoxy ( 20, 15 );
     textcolor ( YELLOW );
     printf ( "A data e hora atuais são: %s", ctime ( &hora_atual ) );
     gotoxy ( 3, 24 );
     Sleep ( 2800 );
     exit ( 0 );
}
void inicio ( ) {
     int main ( );
     void campeonato ( );
     system ( "title CAMPEONATO BRASILEIRO DE 2012" );
     textbackground ( BLACK );
     int I;
     do {
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 7 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( YELLOW );
         gotoxy ( 22, 10 );
         printf ( "Programa desenvolvido por:" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 49, 10 );
         printf ( "Samuel Lima" );
         textcolor ( LIGHTGREEN );
         gotoxy ( 30, 12 );
         printf ( "roccoataca@hotmail.com" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 21, 14 );
         printf ( "DIGITE    PARA SAIR OU   PARA CONTINUAR:  " );
         textcolor ( LIGHTRED );
         gotoxy ( 29, 14 );
         printf ( "1" );
         textcolor ( LIGHTRED );
         gotoxy ( 44, 14 );
         printf ( "2" );
         gotoxy ( 21, 16 );
         scanf ( "%d", &I );
         fflush ( stdin );
         if ( I == 1 ) {
              textcolor ( LIGHTBLUE );
              gotoxy ( 30, 20 );
              printf ( "O ROCCO AGRADECE" );
              Sleep ( 1800 );
              exit ( 0 );
         }
         if ( I == 2 ) {
              campeonato ( );
         } else {
              textcolor ( LIGHTBLUE );
              gotoxy ( 30, 20 );
              printf ( "\aOPÇÃO ERRADA" );
              Sleep ( 1800 );
              inicio ( );
         }
     } while ( I );
}
int cont, a, b, c, d, e, f, g, h, i, j, l, m, gools;
int main ( ) {
     setlocale ( LC_ALL, "" );
     inicio ( );
}
void campeonato ( ) {
     char *Times [ ] = { "Palmeiras", "Portuguesa", "Sports", "Flamengo",
              "Figueirense", "Náutico", "Botafogo", "São Paulo", "Corinthians",
              "Fluminense", "Internacional", "Coritiba" };
     //char ch;
     char posicao [ 6 ] [ 40 ] = { "Palmeiras X Portuguesa", "Sports X Flamengo",
              "Figueirense X Náutico", "Botafogo X São Paulo",
              "Corinthians X Fluminense", "Internacional X Coritiba" };
     system ( "title CAMPEONATO BRASILEIRO DE 2012" );
     textbackground ( BLACK );
     do {
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTGREEN );
         gotoxy ( 20, 8 );
         printf ( "%s", posicao [ 0 ] );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 10 );
         printf ( " Digite os gools do Palmeiras: " );
         scanf ( "%d", &a );
         fflush ( stdin );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 12 );
         printf ( " Digite os gools da Portuguesa: " );
         scanf ( "%d", &b );
         fflush ( stdin );
         Sleep ( 800 );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTGREEN );
         gotoxy ( 20, 8 );
         printf ( "%s", posicao [ 1 ] );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 10 );
         printf ( " Digite os gools do Sports: " );
         scanf ( "%d", &c );
         fflush ( stdin );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 12 );
         printf ( " Digite os gools do Flamengo: " );
         scanf ( "%d", &d );
         fflush ( stdin );
         Sleep ( 800 );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTGREEN );
         gotoxy ( 20, 8 );
         printf ( "%s", posicao [ 2 ] );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 10 );
         printf ( " Digite os gools do Figueirense: " );
         scanf ( "%d", &e );
         fflush ( stdin );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 12 );
         printf ( " Digite os gools do Náutico : " );
         scanf ( "%d", &f );
         fflush ( stdin );
         Sleep ( 800 );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTGREEN );
         gotoxy ( 20, 8 );
         printf ( "%s", posicao [ 3 ] );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 10 );
         printf ( " Digite os gools do Botafogo: " );
         scanf ( "%d", &g );
         fflush ( stdin );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 12 );
         printf ( " Digite os gools do São Paulo: " );
         scanf ( "%d", &h );
         fflush ( stdin );
         Sleep ( 800 );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTGREEN );
         gotoxy ( 20, 8 );
         printf ( "%s", posicao [ 4 ] );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 10 );
         printf ( " Digite os gools do Corinthians: " );
         scanf ( "%d", &i );
         fflush ( stdin );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 12 );
         printf ( " Digite os gools do Fluminense: " );
         scanf ( "%d", &j );
         fflush ( stdin );
         Sleep ( 800 );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTGREEN );
         gotoxy ( 20, 8 );
         printf ( "%s", posicao [ 5 ] );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 10 );
         printf ( " Digite os gools do Internacional: " );
         scanf ( "%d", &l );
         fflush ( stdin );
         textcolor ( LIGHTCYAN );
         gotoxy ( 14, 12 );
         printf ( " Digite os gools do Coritiba: " );
         scanf ( "%d", &m );
         fflush ( stdin );
         Sleep ( 800 );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 33, 8 );
         printf ( "RESULTADOS" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 14 );
         printf ( "%s: %d", Times [ 0 ], a );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 16 );
         printf ( "%s: %d", Times [ 1 ], b );
         if ( a > b ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 0 ], a );
         }
         if ( b > a ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 1 ], b );
         }
         if ( a < b ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 0 ], a );
         }
         if ( b < a ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 1 ], b );
         }
         if ( b == a ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "EMPATE 1 ponto pra cada um" );
         }
         getche ( );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 33, 8 );
         printf ( "RESULTADOS" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 14 );
         printf ( "%s: %d", Times [ 2 ], c );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 16 );
         printf ( "%s: %d", Times [ 3 ], d );

         if ( c > d ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 2 ], c );
         }
         if ( d > c ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 3 ], d );
         }
         if ( c < d ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 2 ], c );
         }
         if ( d < c ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 3 ], d );
         }
         if ( d == c ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "EMPATE 1 ponto pra cada um" );
         }
         getche ( );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 33, 8 );
         printf ( "RESULTADOS" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 14 );
         printf ( "%s: %d", Times [ 4 ], e );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 16 );
         printf ( "%s: %d", Times [ 5 ], f );

         if ( e > f ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 4 ], e );
         }
         if ( f > e ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 5 ], f );
         }
         if ( e < f ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 4 ], e );
         }
         if ( f < e ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 5 ], f );
         }
         if ( f == e ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "EMPATE 1 ponto pra cada um" );
         }
         getche ( );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 33, 8 );
         printf ( "RESULTADOS" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 14 );
         printf ( "%s: %d", Times [ 6 ], g );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 16 );
         printf ( "%s: %d", Times [ 7 ], h );
         if ( g > h ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 6 ], g );
         }
         if ( h > g ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 7 ], h );
         }
         if ( g < h ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 6 ], g );
         }
         if ( h < g ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 7 ], h );
         }
         if ( h == g ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "EMPATE 1 ponto pra cada um" );
         }
         getche ( );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 33, 8 );
         printf ( "RESULTADOS" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 14 );
         printf ( "%s: %d", Times [ 8 ], i );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 16 );
         printf ( "%s: %d", Times [ 9 ], j );

         if ( i > j ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 8 ], i );
         }
         if ( j > i ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 9 ], j );
         }
         if ( i < j ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 8 ], i );
         }
         if ( j < i ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 9 ], j );
         }
         if ( j == i ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "EMPATE 1 ponto pra cada um" );
         }
         getche ( );
         system ( "cls" );
         Janela6 ( );
         textcolor ( LIGHTRED );
         gotoxy ( 28, 3 );
         printf ( "CAMPEONATO BRASILEIRO DE 2012" );
         textcolor ( LIGHTBLUE );
         gotoxy ( 33, 6 );
         printf ( "PRIMEIRA RODADA:" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 33, 8 );
         printf ( "RESULTADOS" );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 14 );
         printf ( "%s: %d", Times [ 10 ], l );
         textcolor ( LIGHTCYAN );
         gotoxy ( 15, 16 );
         printf ( "%s: %d", Times [ 11 ], m );
         if ( l > m ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 10 ], l );
         }
         if ( m > l ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "%s: %d = Três Pontos", Times [ 11 ], m );
         }
         if ( l < m ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 10 ], l );
         }
         if ( m < l ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 20 );
              printf ( "%s: %d = Não pontuou", Times [ 11 ], m );
         }
         if ( m == l ) {
              textcolor ( LIGHTCYAN );
              gotoxy ( 15, 18 );
              printf ( "EMPATE 1 ponto pra cada um" );
         }
         if ( m == l ) {
              getche ( );
              fflush ( stdin );
              inicio ( );
         } else {
              textcolor ( LIGHTGREEN );
              gotoxy ( 36, 18 );
              printf ( "\aopção errada!" );
              Sleep ( 1000 );
         }
     } while ( 1 );
}

 



Nenhum comentário:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.