Boas! Eu tenho duas funções a parte e queria juntalas pa ficarem numa só. A primeira função é a do chamar digito, no qual pergunto a linha e a coluna e o numero e vai coloca-lo o digito no local correcto.
A outra funçao é a do cursor que se passa igual, chamo a linha e coluna e o cursor vai piscar no local correcto.
O meu trabalho é juntar estas duas funções numa SÓ. Ficava assim: ia perguntar a linha e a coluna e o numero, depois ia colucar o cursor e o numero nesse devido local correcto.(nota o cursor tem que aparecer a piscar e o digito parado).
Pergunta
duarte_valente
Boas! Eu tenho duas funções a parte e queria juntalas pa ficarem numa só. A primeira função é a do chamar digito, no qual pergunto a linha e a coluna e o numero e vai coloca-lo o digito no local correcto.
A outra funçao é a do cursor que se passa igual, chamo a linha e coluna e o cursor vai piscar no local correcto.
O meu trabalho é juntar estas duas funções numa SÓ. Ficava assim: ia perguntar a linha e a coluna e o numero, depois ia colucar o cursor e o numero nesse devido local correcto.(nota o cursor tem que aparecer a piscar e o digito parado).
A funçao do digito:
int main() { int i, j; textcolor(BLACK, BLACK, BLACK); limpar_ecra(); desenha_tabuleiro(); for(i=0; i<9; i++) for(j=0; j<9; j++) digito(i, j, j+80*i); } int limpar_ecra2() { int x,y; for(y=34; y<60; y++) { for(x=0; x<160; x++) { gotoxy(x, y); printf(" "); } } } int limpar_ecra3() { int x,y; for(y=28; y<34; y++) { for(x=0; x<160; x++) { gotoxy(x, y); printf(" "); } } } void desenha_digito (int linha, int coluna, int digito) { int x,y,n,i; x=8+linha*4; y=3+coluna*2; if(coluna>=3) { y=5+coluna*2; } if(coluna>=6) { y=7+coluna*2; } if(linha>=3) { x=10+linha*4; } if(linha>=6) { x=12+linha*4; } if( digito>=9 || digito<=-1) { gotoxy(3,36); printf("Nº do digito INCORRETO, numeros validos de 0 a 8"); } textcolor(WHITE,BLUE,BLACK); { for(i=0; i<=2; i++) { n=x-1; gotoxy(n,y); textcolor(WHITE,BLUE,BLACK); printf(" \n"); } gotoxy(n,y); textcolor(BLACK, BLACK, BLACK); printf(" \n"); gotoxy(x,y); textcolor(BRIGHT, GREEN, BLACK); printf("%d",digito); } //gotoxy(x,y); //printf("%d",digito); } int digito() { int coluna,linha,digito; textcolor(BLACK, BLACK, BLACK); limpar_ecra3(); gotoxy(3,28); textcolor(BRIGHT, GREEN, BLACK); printf("introduza coluna linha:\n"); scanf("%d%d",&linha,&coluna); if(coluna>=9 || coluna<=-1 || linha>=9 || linha<=-1) { gotoxy(3,34); printf("Numero INCORRETO, numeros validos de 0 a 8"); return 0; } limpar_ecra2(); gotoxy(3,31); printf("introduza numero:\n"); scanf("%d",&digito); desenha_digito(coluna,linha,digito); return 1; }o código do cursor:void desenha_cursor(int linha,int coluna, int digito) { int x,y,i; x=10+linha*4; y=4+coluna*2; if(coluna>=3) { y=6+coluna*2; } if(coluna>=6) { y=8+coluna*2; } if(linha>=3) { x=12+linha*4; } if(linha>=6) { x=14+linha*4; } if( digito>=9 || digito<=-1) { gotoxy(1,36); printf("Nº do digito INCORRETO, numeros validos de 0 a 8"); } //gotoxy(x,y); //printf("%d",digito); for(i=0;i<10;i++) { usleep(500000); textcolor(WHITE,BLACK,BLACK); { gotoxy(x,y); printf("|---|\n"); gotoxy(x,y+1); printf("| |\n"); gotoxy(x,y+2); printf("|---|\n"); } for(i=0;i<1;i++) { usleep(500000); textcolor(WHITE,BLACK,YELLOW); { gotoxy(x,y); printf("|---|\n"); gotoxy(x,y+1); printf("| |\n"); gotoxy(x,y+2); printf("|---|\n"); } } } gotoxy(1,28); printf(" \n"); } int cursor(int linha,int coluna,int digito) { gotoxy(3,32); printf("Insira o numero da linha\n"); scanf("%d",&linha); gotoxy(3,34); printf("Insira o numero da coluna\n"); scanf("%d",&coluna); desenha_cursor(linha,coluna,digito); return 0; }Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.