Programação Orientada à Procedimentos II Programação Orientada à Procedimentos I Processamento Paralelo Lógica de Programação Introdução à Computação Informática Básica

 

 

Informática Básica
Introdução à Computação
Lógica de Programação
Programação Orientada à Procedimentos I
Programação Orientada à Procedimentos II

Processamento Paralelo

Aula 14

Aula 15

Aula 16




Usando Cores e Sons

Para colorir a cor do texto ou colorir a cor de fundo da tela, pode-se usar as seguintes funções:


Função TextAttr

Função TextColor

Função TextBackground

Função Sound

Função Delay


Função TextAttr

Seu programa pode usar o controlador de dispositivo ansi.sys para exibir saída colorida na tela. Para colorir a cor do texto, pode-se usar a função textattr. O textattr consulta a biblioteca conio.h.

sintaxe: textattr (atributo);

O parâmetro atributo contém oito bits que especificam as cores desejada. Os quatro bits menos significativos especificam a cor da frente. Os três bits seguintes especificam a cor de fundo, e o bit mais significativo controla a intermitência. Para selecionar uma cor, é necessário atribuir o valor da cor desejada para os bits corretos. A tabela abaixo especifica os valores das cores.

Constante de Cor
Valor
Frente/Fundo
preto 0 frente/fundo
azul 1 frente/fundo
verde 2 frente/fundo
ciano 3 frente/fundo
vermelho 4 frente/fundo
magenta 5 frente/fundo
marrom 6 frente/fundo
cinza claro 7 frente/fundo
cinza escuro 8 frente
azul claro 9 frente
verde claro 10 frente
ciano claro 11 frente
vermelho claro 12 frente
magenta claro 13 frente
amarelo 14 frente
branco 15 frente
piscante 128 frente

exemplo:

O programa a seguir, faz um teste com as cores.


#include <stdio.h>
#include <conio.h>
void main(void)
{
   clrscr();
   int i;
   for (i=1;i <16;i++)
   {
      textattr(i);
      cprintf("Esta ‚ a cor %d\r\n", i);
   }
   textattr(128+15);
   printf("Isto ‚ piscante");
   getch();
}

Função TextColor
 

Para simplificar o processo de atribuir uma cor de frente, pode-se usar a função textcolor. O textcolor consulta a biblioteca conio.h.


sintaxe: textcolor (int corfrente);

O parâmetro corfrente especificará um dos valores de cores listados na tabela abaixo:

Constante de Cor
Valor
preto 0
azul 1
verde 2
ciano 3
vermelho 4
magenta 5
marrom 6
cinza claro 7
cinza escuro 8
azul claro 9
verde claro 10
ciano claro 11
vermelho claro 12
magenta claro 13
amarelo 14
branco 15
piscante 128

exemplo:

O programa a seguir, ilustra como usar a função textcolor para definir a cor de frente.


#include <stdio.h>
#include <conio.h>
void main(void)
{
   clrscr();
   int i;
   for (i=1;i <16;i++)
   {
      textcolor(i);
      cprintf("Esta é a cor %d\r\n", i);
   }
   textattr(128+15);
   printf("Isto é piscante"\r\n);
   getch();
}

 
Função TextBackground
Para simplificar o processo de atribuir cor de fundo, pode-se usar a função textbackground. O textbackground consulta a biblioteca conio.h.

sintaxe: textbackground (int corfundo);

O parâmetro corfundo especificará um dos valores listados na tabela abaixo:

 

Constante de Cor
Valor
preto 0
azul 1
verde 2
ciano 3
vermelho 4
magenta 5
marrom 6
cinza claro 7

exemplo:

O programa a seguir, faz um teste com as cores.


#include <stdio.h>
#include <conio.h>
void main(void)
{
   clrscr();
   int i;
   for (i=1;i <16;i++)
   {
      textbackground(i);
      cprintf("Esta é a cor %d\r\n", i);
      cprintf("pressione qualquer tecla");
      getch();
   }
}

Função Sound

Dentro de quase todo PC há um alto-falante que os programas usam para gerar avisos sonoros. No entanto, usando a função sound, seus programas podem gerar sons que emitem diferentes frequências. A função nosound desativa o alto-falante. As funções sound e nosound consultam a biblioteca dos.h.


sintaxe: void sound (unsigned frequencia);
void nosound(void);


exemplo:

O programa a seguir, usa a função sound para gerar um som similar a uma sirene. Quando o usuário pressiona qualquer tecla, o programa desativa o alto-falante usando a função nosound.


#include <stdio.h>
#include <conio.h>
#include <dos.h>
void main()
{
   unsigned freq;   //tipo sem sinal
   do
   {
      for (freq=500;freq <=1000;freq+=50)
      {
         sound(freq);
         delay(50);
      }
      for (freq=1000;freq <=500;freq-=50)
      {
         sound(freq);
         delay(50);
      }
   }while (! kbhit());
   nosound();
}

Função Delay

Dependendo do seu programa, algumas vezes é necessário retarda-lo por um determinado número de milessegundos. Por exemplo, para imprimir uma mensagem na tela e mante-la por algum tempo e logo em seguida continuar as execução do programa, sem forçar o usuário a pressionar uma tecla, pode-se usar a função delay. A função delay consulta a biblioteca dos.h.


sintaxe: void delay (unsigned milissegundos);


Usando a função delay, os programas podem especificar um período de retardo de até 64.535 milessegundos.

exemplo:

O programa a seguir, retarda a mensagempor 5 segundos (5.000 milessegundos).


#include <stdio.h>
#include <dos.h>
#include <conio.h>
void main(void)
{
   clrscr();
   printf("Prestes a fazer uma pausa de 5 segundo \n");
   delay(5000);
   printf("Acabado \n");
   getch();
}