Ir ao conteúdo

Função que armazena valor


SheldonCoper

Posts recomendados

Postado

Bom galere eu to criando um programa q começa com uma contagem regraciva, e eu queria colocar q se nessa contagem eu digitaçe alguma coisa paraçe a contagem.. mais se eu coloco a funçao "scanf(%s, variavel)" n tem contagem por que tem tipo uma pausa.. se alguem souber como faço isso.. vou postar aqui em baixo o codigo da contagem regressiva..

/* clock example: countdown */

#include <stdio.h>

#include <time.h>

void wait ( int seconds )

{

clock_t endwait;

endwait = clock () + seconds * CLOCKS_PER_SEC ;

while (clock() < endwait) {}

}

int main ()

{

int n;

printf ("Starting countdown...\n");

for (n=10; n>0; n--)

{

printf ("%d\n",n);

wait (1);

}

printf ("FIRE!!!\n");

return 0;

}

Postado

#include <stdio.h>

#include <stdlib.h> //pra usar system("cls");

#include <conio.h> //pra usar a getch();

#include <time.h>

void wait ( int seconds )

{

clock_t endwait;

endwait = clock () + seconds * CLOCKS_PER_SEC ;

while (clock() < endwait) {}

}

int main ()

{

int n;

getch();

for (n=10; n>0; n--)

{

system("cls");

printf ("Starting countdown...\n");

printf ("%d\n",n);

wait (1);

}

system("cls");

printf ("FIRE!!!\n");

getch();

return 0;

}

----------------------

getch(); - ela nao espera você digitar enter...qualquer coisa que você digitar, ela 'pega' e começa a rodar...

voce tambem pode usar como: caractere=getch();

system("cls"); limpa a tela, só pra ficar mais elegante

Postado
#include <stdio.h>

#include <stdlib.h> //pra usar system("cls");

#include <conio.h> //pra usar a getch();

#include <time.h>

void wait ( int seconds )

{

clock_t endwait;

endwait = clock () + seconds * CLOCKS_PER_SEC ;

while (clock() < endwait) {}

}

int main ()

{

int n;

getch();

for (n=10; n>0; n--)

{

system("cls");

printf ("Starting countdown...\n");

printf ("%d\n",n);

wait (1);

}

system("cls");

printf ("FIRE!!!\n");

getch();

return 0;

}

----------------------

getch(); - ela nao espera você digitar enter...qualquer coisa que você digitar, ela 'pega' e começa a rodar...

voce tambem pode usar como: caractere=getch();

system("cls"); limpa a tela, só pra ficar mais elegante

entedi o que voc quis dizer, mais n é isso qeu queria rs.. eu falo tipo quando a contagem começa a rodar.. eu digito um codigo tipo "stop" e a contagem para.. pra isso tem uma funçao q armazena o q eu vou escrever e n atrapalha quando tá contando so na ora q eu digito o codigo so que eu n lembro qual era.. =/ mesmo assim obrigado gostei do system("cls");

Postado

putz cara, é mesmo, foi mal...na verdade, pelo seu português, não entendi o que você quis dizer...eu meio que tentei adivinhar e respondi algo...

te apresentar a kbhit();

se tu digitar algo, essa função te retorna 1, senão 0.


#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <string.h>

void wait ( int seconds )
{
clock_t endwait;
endwait = clock () + seconds * CLOCKS_PER_SEC ;
while (clock() < endwait) {}
}

int main ()
{
int n;
char senha[20]="sou ****";
char tentativa[20];

for (n=10; n>0; n--)
{
system("cls");
printf ("Starting countdown...\n");
printf ("%d\n",n);

if(kbhit()==0)
wait (1);
else
{
gets(tentativa);
if(strcmp(tentativa,senha)==0)
{
n=11; //so vai ser 10 se tu digitar a senha corretamente
break;
}
else //se tu nao botar esse else, o countdown volta
{
n=12;
break;
}

}
}

system("cls");

if(n==11)
printf("Countdown abortado, voce salvou o mundo\n");
else
if(n==12)
printf("voce digitou a senha errada, merece a morte\n");
else
printf ("FIRE!!!\n");
getch();
return 0;
}

----------

se nada for digitado, kbhit retorna 0, aí acontece o wait(1);

mas se tu digitar algo, ele retorna 1, aí começa o if, o que vai dar uma pausa no countdown pra que voce possa digitar a senha.

strcmp retorna 0 se as duas strings forem iguais, pra usar ela tem que incluir a string.h

como ao entrar no laço 'for', o 'n' começa com 10, ele só vai admitir 11 se digitar corretamente a senha, 12 se digitar errado...isso serve pra selecionar qual mensagem vai ser exibida do lado de fora do 'for'

o break; faz sair do laço for, caso acerte ou erre a senha...

Postado
putz cara, é mesmo, foi mal...na verdade, pelo seu português, não entendi o que você quis dizer...eu meio que tentei adivinhar e respondi algo...

te apresentar a kbhit();

se tu digitar algo, essa função te retorna 1, senão 0.


#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <string.h>

void wait ( int seconds )
{
clock_t endwait;
endwait = clock () + seconds * CLOCKS_PER_SEC ;
while (clock() < endwait) {}
}

int main ()
{
int n;
char senha[20]="sou ****";
char tentativa[20];

for (n=10; n>0; n--)
{
system("cls");
printf ("Starting countdown...\n");
printf ("%d\n",n);

if(kbhit()==0)
wait (1);
else
{
gets(tentativa);
if(strcmp(tentativa,senha)==0)
{
n=11; //so vai ser 10 se tu digitar a senha corretamente
break;
}
else //se tu nao botar esse else, o countdown volta
{
n=12;
break;
}

}
}

system("cls");

if(n==11)
printf("Countdown abortado, voce salvou o mundo\n");
else
if(n==12)
printf("voce digitou a senha errada, merece a morte\n");
else
printf ("FIRE!!!\n");
getch();
return 0;
}

----------

se nada for digitado, kbhit retorna 0, aí acontece o wait(1);

mas se tu digitar algo, ele retorna 1, aí começa o if, o que vai dar uma pausa no countdown pra que voce possa digitar a senha.

strcmp retorna 0 se as duas strings forem iguais, pra usar ela tem que incluir a string.h

como ao entrar no laço 'for', o 'n' começa com 10, ele só vai admitir 11 se digitar corretamente a senha, 12 se digitar errado...isso serve pra selecionar qual mensagem vai ser exibida do lado de fora do 'for'

o break; faz sair do laço for, caso acerte ou erre a senha...

***** cara, valeu mesmo isso mesmo que eu queria.. desculpa meu portugues.. convivencia dms no computador da nisso haha' brigadao

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!