• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

język c, odliczanie

Object Storage Arubacloud
0 głosów
2,119 wizyt
pytanie zadane 29 czerwca 2017 w C i C++ przez itzluar Nowicjusz (220 p.)
edycja 29 czerwca 2017 przez Eryk Andrzejewski

Hej, zaczynam uczyć się języka C i wpadłem na taki pomysł. Wiem, że można to zrobić w C++, ale nie wiem jak to zrobić w C. Otóż napisałem prosty kod, który odlicza od 10 do 0 i chciałbym, aby po każdej zmianie liczby program odczekał np. 1 sekundę (coś jak sleep w C++) oraz później usunął z konsoli poprzednią liczbę.

#include <stdio.h>

int main(){
    int i=10;
    for(i=10; i>=0 ;i--){
        printf("\a %d !!!\n", i);
    }
    return 0;
}

 

komentarz 29 czerwca 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Kod wstawiamy w specjalny bloczek - więcej w FAQ (dodałem wcięcia w kodzie, bo bez nich ciężko się go czyta).

1 odpowiedź

+1 głos
odpowiedź 29 czerwca 2017 przez Knayder Nałogowiec (37,640 p.)
edycja 29 czerwca 2017 przez Eryk Andrzejewski
 
Najlepsza
#include <time.h>
#include <stdio.h>

int main() {
	float deltaTime = 0;
	int i;
	for (i = 10; i >= 0; i--) {
		while (clock() - deltaTime < 1000) {}
		deltaTime = clock();
		printf("\a %d !!!\n", i);
	}
	return 0;
}

 

komentarz 29 czerwca 2017 przez Knayder Nałogowiec (37,640 p.)

Użyłem funkcji clock() z biblioteki ctime

2
komentarz 29 czerwca 2017 przez QizmoPL Stary wyjadacz (11,440 p.)
w c niema ctime, za to jest time.h
komentarz 29 czerwca 2017 przez itzluar Nowicjusz (220 p.)
wygląda fajnie tylko u mnie w code blocks wyskakuje error że nie ma takiej biblioteki ;c

fatal error: ctime: No such file or directory
muszę ją jakoś ściągnąć?
1
komentarz 29 czerwca 2017 przez Knayder Nałogowiec (37,640 p.)
Czyli musisz zaincludować time.h zamiast ctime
komentarz 29 czerwca 2017 przez itzluar Nowicjusz (220 p.)
super, działa z tą biblioteką time.h :)
komentarz 29 czerwca 2017 przez itzluar Nowicjusz (220 p.)
a jeszcze bym miał pytanie czy można to jakoś tak fajnie zrobić żeby przy pokazywaniu następnej liczby poprzednia znikała?
1
komentarz 29 czerwca 2017 przez Knayder Nałogowiec (37,640 p.)

Nie wiem czy w C można includować windows.h, ale jeżeli tak, to sporóbuj:
 

#include <time.h>
#include <stdio.h>
#include <windows.h>

int main() {
	float deltaTime = 0;
	int i;
	for (i = 10; i >= 0; i--) {
		while (clock() - deltaTime < 1000) {}
		system("cls");
		deltaTime = clock();
		printf("\a %d !!!\n", i);
	}
	return 0;
}

 

komentarz 29 czerwca 2017 przez itzluar Nowicjusz (220 p.)
Działa :) czyli ta komenda system("cls"); czyści to co było wyżej wypisane?
wielkie dzięki za pomoc :)
komentarz 29 czerwca 2017 przez Knayder Nałogowiec (37,640 p.)
system() wpisuje tak jakby komendę do konsoli.
Komenda cls czyści konsolę.
1
komentarz 29 czerwca 2017 przez Knayder Nałogowiec (37,640 p.)
W takim razie, jeżeli ci pomogłem, to wybierz najlepszą odpowiedź.
1
komentarz 29 czerwca 2017 przez Knayder Nałogowiec (37,640 p.)
Aha no i z przyzwyczajenia dałem deltaTime jako float.
Zamień to na long, albo clock_t (To samo)
komentarz 29 czerwca 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Poprawiłem w odpowiedzi ctime na time.h.

Podobne pytania

0 głosów
5 odpowiedzi 1,712 wizyt
pytanie zadane 12 kwietnia 2018 w C i C++ przez Kiszony Użytkownik (630 p.)
0 głosów
2 odpowiedzi 698 wizyt
pytanie zadane 23 marca 2016 w C i C++ przez Akiz521 Początkujący (480 p.)
0 głosów
1 odpowiedź 653 wizyt

92,624 zapytań

141,482 odpowiedzi

319,824 komentarzy

62,006 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...