Jak Zrobić Program Stopera W Pascalu

Spisu treści:

Jak Zrobić Program Stopera W Pascalu
Jak Zrobić Program Stopera W Pascalu

Wideo: Jak Zrobić Program Stopera W Pascalu

Wideo: Jak Zrobić Program Stopera W Pascalu
Wideo: Программирование на паскаль за 26 минут основы 2024, Może
Anonim
Jak zrobić program stopera w Pascalu
Jak zrobić program stopera w Pascalu

Niezbędny

Środowisko programistyczne PascalABC. NET lub PascalTurbo

Instrukcje

Krok 1

Więc najpierw otwórzmy program. Stwórzmy nowy plik i określmy wtyczki. W takim przypadku potrzebujemy modułu do pracy z konsolą - CRT.

w tym celu napiszemy:

używa

CRT;

Krok 2

Wskażmy zmienne i, s, m - zmienne typu rzeczywistego.

var

ja, s, m: prawdziwe;

Krok 3

Aby uruchomić program, napisz:

zaczynać

A my wskażemy tytuł okna konsoli:

SetWindowTitle („Stoper”);

Krok 4

Procedura TextColor przypisuje kolor do tekstu, a instrukcja Write wyświetla tekst na ekranie:

Kolor tekstu (jasnozielony);

WriteLn ('Naciśnij Enter, aby uruchomić stoper');

WriteLn ('Naciśnij ponownie, aby zatrzymać');

Napisz („Kliknij ponownie, aby zacząć od nowa”);

Końcowe Ln przechodzi do następnej linii.

Krok 5

Operator ReadLn wprowadza wartości z klawiatury, ale w tym przypadku po prostu czeka, aż użytkownik wciśnie Enter:

CzytajLn;

Krok 6

Tworzymy nieskończoną pętlę:

podczas gdy (prawda)

zaczynać

Konstrukcja while (true) do begin tłumaczy się jako: While (warunek) do (). Dlaczego zaczyna się tutaj?

W tym przypadku potrzebujemy operatora złożonego, co oznacza, że gdy warunek jest prawdziwy, wykonywanych jest kilka operatorów. Gdyby nie begin, to po while wykonywana była tylko jedna instrukcja, co prowadziłoby do nieprawidłowego działania programu. Aby zakończyć instrukcję While na końcu piszemy end.

Krok 7

Teraz zresetujmy licznik:

i: = 0;

Krok 8

Poniższa instrukcja jest tłumaczona jako: do momentu naciśnięcia klawisza do ().

gdy nie jest naciśnięty, rób

zaczynać

Operator ClrScr czyści ekran:

ClrScr;

Krok 9

Ustawiamy warunek: jeśli sekundy są większe niż 60 i mniejsze niż 3600 (jest to konieczne, aby przy czasie dłuższym niż godzina program wypisywał tylko to, co jest po trzecim if) to:

jeśli (i> 60) i (i <3600) to zacznij

Zmienna m (minuty) jest równa: sekundy podzielone przez 60 i zaokrąglone do przodu.

m: = Int (i / 60);

A zmienna s (sekundy bez minut) jest równa: wszystkie sekundy minus minuty pomnożone przez 60.

s: = ja - m * 60;

Krok 10

Instrukcja Write zapisuje, ile minut i sekund minęło, a instrukcja end kończy pracę początku po spełnieniu warunku if:

Napisz (m, 'minuty (s) i', s: 1: 2, 'sekundy (s)')

koniec;

Funkcja: 1:2 oznacza, że sekundy należy pisać z dwoma miejscami po przecinku.

Krok 11

Jeśli sekundy są mniejsze niż 60, po prostu napisz, ile sekund minęło z dwoma miejscami po przecinku:

jeśli ja <60 to

Napisz ('', i: 1: 2, 'sekundy (a / s)');

Krok 12

Jeśli sekundy są dłuższe niż 3600 (czyli więcej niż godzina), to:

jeśli ja> 3600 to zacznij

m: = Int (i / 60);

s: = ja - m * 60;

ch: = Int (m / 60);

m: = m - ch * 60;

Napisz (ch, 'godzina (s)', m, 'minuty (s) i', s: 1:2, 'sekundy (s)');

koniec;

Krok 13

Czyli program napisał, że minęło 0 sekund, teraz zwiększa licznik i o 10 milisekund, a skoro program robi wszystko natychmiast, robimy opóźnienie o ten sam czas:

ja: = ja + 0,01;

Opóźnienie (10);

Następnie kończymy instrukcję While (nie wciśnięty klawisz):

koniec;

Jeśli użytkownik nacisnął klawisz Enter, program czeka, aż naciśnie go ponownie, aby ponownie uruchomić stoper:

Czytajln;

Czytajln;

Nie jest przypadkiem, że ustawiamy licznik na zero po stwierdzeniu While (prawda), ponieważ gdy użytkownik naciśnie Enter po raz drugi, program uruchomi się od tego miejsca, zresetuje licznik i zacznie odliczać od nowa.

Następnie kończymy While i dla całego programu:

koniec;

Krok 14

Oto kompletny program:

używa

CRT;

var

i: Prawdziwe;

s: prawdziwe;

m: prawdziwe;

c: Prawdziwe;

zaczynać

SetWindowTitle („Stoper”);

Kolor tekstu (jasnozielony);

WriteLn ('Naciśnij Enter, aby uruchomić stoper');

WriteLn ('Naciśnij ponownie, aby zatrzymać');

Napisz („Kliknij ponownie, aby zacząć od nowa”);

CzytajLn;

podczas gdy (prawda)

zaczynać

i: = 0;

gdy nie jest wciśnięty

zaczynać

ClrScr;

jeśli (i> 60) i (i <3600) to zacznij

m: = Int (i / 60);

s: = ja - m * 60;

Napisz (m, 'minuty (s) i', s: 1: 2, 'sekundy (s)')

koniec;

jeśli ja <60 to

Napisz ('', i: 1: 2, 'sekundy (a / s)');

jeśli ja> 3600 to zacznij

m: = Int (i / 60);

s: = ja - m * 60;

ch: = Int (m / 60);

m: = m - ch * 60;

Napisz (ch, 'godzina (s)', m, 'minuty (s) i', s: 1:2, 'sekundy (s)');

koniec;

ja: = ja + 0,01;

Opóźnienie (10);

koniec;

Czytajln;

Czytajln;

koniec;

koniec.

Obraz
Obraz

Krok 15

Okazało się to niezbyt miłe, ale program działa poprawnie!

Zalecana: