Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda com Relógio que desperta em C


fsemensa

Pergunta

Olá Galera, sou novo por aqui esse é meu primeiro post.

Minha dúvida é a seguinte,

Criei um relógio, até ai tudo normal, mas o professor passou um trabalho que esse mesmo relógio deveria piscar da seguinte forma:

o usuário digita a hora que o mesmo deverá despertar.

quando der a hora aparecer-a na tela uma mensagem e a mesma deverá ficar 2 minutos na tela.

após esse tempo a mesma devera sumir por 30 segundos, retornando após esse tempo e ficando mais 2 minutos na tela (isso deve ser repetido 3 vezes).

Acontece o seguinte, fazer a mensagem piscar trabalhando apenas com minutos eu consegui fazer, mas agora que entrou os segundos estou perdido.

vou colocar o código abaixo para visualizarem o que já tenho.

abraço a todos e espero a ajuda de vocêsn tenho que enviar esse trabalho por e-mail amanha 03/04/2010 se falta.

#include<stdio.h>
#include<stdlib.h>
#include <time.h>
#include<windows.h>
//função-----------------------------------------
int gotoxy (int coluna, int linha)
{
     COORD ponto;
     HANDLE ambiente;
     ponto.X = coluna;
     ponto.Y = linha;
     ambiente = GetStdHandle(STD_OUTPUT_HANDLE);
     SetConsoleCursorPosition(ambiente, ponto);
}
//programa---------------------------------------
int main (){
int h, m, s, i, hora, minuto, cont, fim, vx, contseg;
fim = 0;
vx = 0;
printf("Digite a hora: ");
scanf("%d", &hora);
printf("Digite os minutos: ");
scanf("%d", &minuto);
while(1)
{
for (h=0; h < 24; h++)
{
    for (m = 0; m < 60; m++)
    {
//-----------------------------------------------------------------------------------------------       
   if (vx <= 1){                                          // numero de vezes que executou
       if (m == cont + 2){                                // verifica se os minutos são iguais ao atual mais 2
         system("cls");                               // limpa a tela
         printf("Digite a hora: %d\n", hora);         // imprimi o cabeçalho novamente
         printf("Digite os minutos: %d\n", minuto);   // imprimi o cabeçalho novamente
         cont = m;}                                    // o contador recebe o minuto atual
         //fim = contseg;                          // o fim recebe o minuto atual mais 1
         
       if (m == cont && contseg + 30 == s){                        // verifica se os minutos são iguais ao atual mais 1
         gotoxy(35,10);                               // posiciona o relogio na tela
         printf("\n é hora de acordar");             //imprime a mensagem na tela
                      
         cont = m;                                    // o contador recebe o minuto atual
         vx ++;}                                      // o numero de vezes de execução aumenta 1 vez
    }
//------------------------------------------------------------------------------------------------
        for (s = 0; s < 60; s++)
        {
            gotoxy(35,12); printf("%d : %d : %d", h,m,s);
            for (i = 0; i < 10000000;i++);
         
            if (h == hora && m == minuto){
            gotoxy(35,10);printf("\n é hora de acordar");
            cont = m;
            }
        }
    }
}
}
system("pause>null");
}

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...