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

Zegar dziwnie liczy czas w C++

Object Storage Arubacloud
0 głosów
1,650 wizyt
pytanie zadane 28 czerwca 2019 w C i C++ przez KosaTV Obywatel (1,260 p.)
edycja 28 czerwca 2019 przez Arkadiusz Waluk

Pomyślałem dziś, że zrobię program zliczający sekundy, minuty, godziny i dni, gdy skończyłem zaskoczyło coś nie wiem dlaczego tak się stało ale niby zegar liczy normalnie, ponieważ z czasu 0:0:0:59 po sekundzie przechodzi na 0:0:1:0 , ale gdy przechodzi z minuty na godzine lub z godziny na dni to dzieje się coś takiego 0:0:59:59 a potem zamiast 0:1:0:0 jest 0:0:60:0 a potem idzie normalnie czyli 0:1:0:1 i gdy dojdzie do 0:1:59:59 to sytuacja się powtarza i tak w kółko tutaj daje kod:
 

#include <iostream>
#include <time.h>
#include <windows.h>
#include <cstdlib>
using namespace std;
int minuty;
int sekundy;
int godziny;
int dni;
int main()
{
    while(true)
    {
        cout << "D " << "H " << "M " << "S" << endl;
        cout << dni << ":" << godziny << ":" << minuty << ":" << sekundy << endl;
        sekundy++;
        Sleep(1000);
        system("cls");

        if (sekundy==60)
        {
            minuty++;
            sekundy-=60;
        }
        else if (minuty>=60)
        {
            godziny++;
            minuty-=60;
        }
        else if (godziny==24)
        {
            dni++;
            godziny-=24;
        }
    }

    return 0;
}

// Jeżeli ktoś chciałby to sprawdzić polecam usunąć komendę system("cls"); i zmniejszyć opużnienie.

1 odpowiedź

–1 głos
odpowiedź 28 czerwca 2019 przez ExtraSoft_User Nowicjusz (140 p.)
if (sekundy==60)
        {
            minuty++;
            sekundy-=60;
        }

 

 

w minucie jest 60 sekund w c++ liczy sie od 0
komentarz 28 czerwca 2019 przez KosaTV Obywatel (1,260 p.)
Okej., ale sekundy działają normalnie, przecież mimo że  mają wartość 60, tylko reszta nie działa
komentarz 28 czerwca 2019 przez DragonCoder Nałogowiec (36,500 p.)
Wyrzuc else if i zrob same ify. I co to za sekundy-=0? Ustaw je na 0 i tyle, sekundy = 0;

EDIT::

1. Po cholere jest tam windows.h? Chcesz pobierac czas systemowy lub uzyc jakies funkcji, czy jest tam bo tak? Ktos kto ma linuxa nie skompiluje tego

2. Co to za zmienne globalne, ktore w dodatku nie maja wartosci poczatkowej?

3. Czemu ten warunek: minuty>=60 jest inny od pozostalych?
komentarz 28 czerwca 2019 przez KosaTV Obywatel (1,260 p.)
Ok dzięki

Podobne pytania

0 głosów
1 odpowiedź 2,154 wizyt
pytanie zadane 20 czerwca 2017 w PHP przez sapero Gaduła (4,100 p.)
–1 głos
1 odpowiedź 232 wizyt
pytanie zadane 12 lutego 2018 w C i C++ przez Pabiak Gaduła (4,450 p.)
0 głosów
0 odpowiedzi 241 wizyt
pytanie zadane 11 grudnia 2018 w JavaScript przez Zelek Użytkownik (960 p.)

92,555 zapytań

141,402 odpowiedzi

319,541 komentarzy

61,939 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!

...