Vajalik
PascalABC. NET või PascalTurbo programmeerimiskeskkond
Juhised
Samm 1
Nii et kõigepealt avame programmi. Loome uue faili ja määrake pistikprogrammid. Sellisel juhul vajame konsooliga töötamiseks moodulit - CRT-d.
selleks kirjutame:
kasutab
CRT;
2. samm
Märgime muutujad i, s, m - reaaltüübi muutujad.
var
i, s, m: Reaalne;
3. samm
Programmi käivitamiseks kirjutage:
algama
Ja me näitame konsooliakna pealkirja:
SetWindowTitle ('Stopper');
4. samm
Protseduur TextColor määrab tekstile värvi ja käsk Write kirjutab teksti ekraanile:
TextColor (heleroheline);
WriteLn ('Stopperi käivitamiseks vajutage sisestusklahvi');
WriteLn ('Peatamiseks vajutage uuesti );
Write ('Alustamiseks klõpsake uuesti');
Lõpp Ln liigub järgmisele reale.
5. samm
Operaator ReadLn sisestab väärtused klaviatuurilt, kuid sellisel juhul ootab kasutaja lihtsalt Enteri:
LoeLn;
6. samm
Me teeme lõputu aasa:
samas (tõsi) tegema
algama
Kuigi (true) do begin konstruktsioon tõlgitakse järgmiselt: While (tingimus) teeb (). Miks siin algab?
Sel juhul vajame liitoperaatorit, mis tähendab, et kuigi tingimus on tõene, käivitatakse mitu operaatorit. Kui seda ei alustaks, siis pärast seda, kui käivitati, käivitati ainult üks lause, mis viis programmi vale toimimiseni. Avalduse Kuigi lõpus lõpetuseks kirjutame lõppu.
7. samm
Lähtestame loenduri:
i: = 0;
8. samm
Järgmine lause tõlgitakse järgmiselt: kuni do () klahvi vajutatakse.
samal ajal kui seda pole klahvivajutusega
algama
Operaator ClrScr puhastab ekraani:
ClrScr;
9. samm
Seadsime tingimuse: kui sekundid on üle 60 ja vähem kui 3600 (see on vajalik selleks, et kui aega on rohkem kui tund, prindib programm ainult selle, mis on pärast kolmandat, kui), siis:
kui (i> 60) ja (i <3600) siis algavad
Muutuja m (minutid) on võrdne: sekundid jagatud 60-ga ja ümardatud ettepoole.
m: = Int (i / 60);
Ja muutuja s (sekundid ilma minutita) on võrdne: kõik sekundid miinus minutid korrutatuna 60-ga.
s: = i - m * 60;
10. samm
Lausel Kirjutamine kirjutatakse, mitu minutit ja sekundit on möödas ning lõpplause lõpetab alguse töö järgides tingimust if:
Kirjutage (m, 'minutid (s) ja', s: 1: 2, 'sekundid (s)')
lõpp;
Funktsioon: 1: 2 tähendab, et sekundid tuleks kirjutada kahe kümnendkohaga.
11. samm
Kui sekundid on vähem kui 60, kirjutage lihtsalt, mitu sekundit on möödunud kahe kümnendkohaga:
kui ma <60 siis
Kirjutamine ('', i: 1: 2, 'sekundit (a / s)');
12. samm
Kui sekundeid on rohkem kui 3600 (st rohkem kui tund), siis:
kui i> 3600, siis alustage
m: = Int (i / 60);
s: = i - m * 60;
ch: = Int (m / 60);
m: = m - ch * 60;
Kirjutage (ch, 'tund (s)', m, 'minutid (s) ja', s: 1: 2, 'sekundid (s)');
lõpp;
13. samm
Niisiis, programm kirjutas, et 0 sekundit on möödas, nüüd suurendab see loendurit i 10 millisekundi võrra ja kuna programm teeb kõik koheselt, viivitame sama ajaga:
i: = i + 0,01;
Viivitus (10);
Järgmisena teeme lause lause (mitte klahvivajutamata) lõpu:
lõpp;
Kui kasutaja vajutas klahvi Enter, ootab programm stopperi uuesti käivitamiseks seda uuesti vajutama:
Readln;
Readln;
Pole juhus, et seadsime loenduri Kuigi (tõene) pärast nulli, sest kui kasutaja vajutab teist korda Enter, siis programm algab sealt, lähtestab loenduri ja hakkab uuesti loendama.
Järgmisena lõpetame kogu programmi ja samal ajal:
lõpp;
14. samm
Siin on täielik programm:
kasutab
CRT;
var
i: tõeline;
s: Päris;
m: Reaalne;
ch: Päris;
algama
SetWindowTitle ('Stopper');
TextColor (heleroheline);
WriteLn ('Stopperi käivitamiseks vajutage sisestusklahvi');
WriteLn ('Peatamiseks vajutage uuesti );
Write ('Alustamiseks klõpsake uuesti');
LoeLn;
samas (tõsi) tegema
algama
i: = 0;
kui seda pole klahvivajutuses, siis
algama
ClrScr;
kui (i> 60) ja (i <3600) siis algavad
m: = Int (i / 60);
s: = i - m * 60;
Kirjutage (m, 'minutid (s) ja', s: 1: 2, 'sekundid (s)')
lõpp;
kui ma <60 siis
Kirjutamine ('', i: 1: 2, 'sekundit (a / s)');
kui i> 3600, siis alustage
m: = Int (i / 60);
s: = i - m * 60;
ch: = Int (m / 60);
m: = m - ch * 60;
Kirjutage (ch, 'tund (s)', m, 'minutid (s) ja', s: 1: 2, 'sekundid (s)');
lõpp;
i: = i + 0,01;
Viivitus (10);
lõpp;
Readln;
Readln;
lõpp;
lõpp.
15. samm
See ei osutunud eriti toredaks, kuid programm töötab õigesti!