Būtinas
„PascalABC. NET“arba „PascalTurbo“programavimo aplinka
Nurodymai
1 žingsnis
Taigi, pirmiausia atidarykime programą. Sukurkime naują failą ir nurodykime papildinius. Šiuo atveju mums reikia modulio darbui su konsole - CRT.
tam mes parašysime:
naudoja
CRT;
2 žingsnis
Nurodykime kintamuosius i, s, m - tikrojo tipo kintamuosius.
var
i, s, m: Tikrasis;
3 žingsnis
Norėdami paleisti programą, parašykite:
pradėti
Mes nurodysime konsolės lango pavadinimą:
„SetWindowTitle“(„Chronometras“);
4 žingsnis
Procedūra „TextColor“priskiria tekstui spalvą, o „Write“sakinyje tekstas rodomas ekrane:
„TextColor“(„LightGreen“);
WriteLn ('Paspauskite Enter, kad pradėtumėte chronometrą');
WriteLn ('Paspauskite dar kartą, kad sustabdytumėte');
Rašyti ('Spustelėkite dar kartą, kad pradėtumėte iš naujo');
Pabaiga Ln pereina į kitą eilutę.
5 žingsnis
Operatorius „ReadLn“įveda reikšmes iš klaviatūros, tačiau šiuo atveju jis tiesiog laukia, kol vartotojas paspaus „Enter“:
SkaitytiLn;
6 žingsnis
Mes darome begalinę kilpą:
kol (tiesa) daro
pradėti
Nors (true) do begin konstravimas verčiamas taip: Nors (condition) do (). Kodėl čia prasideda?
Šiuo atveju mums reikia sudėtinio operatoriaus, o tai reiškia, kad nors sąlyga yra įvykdyta, vykdomi keli operatoriai. Jei tai nebūtų pradžia, tada po „While“buvo įvykdytas tik vienas sakinys, kuris sukeltų neteisingą programos veikimą. Norėdami užbaigti „Wh“sakinį pabaigoje rašome „end“.
7 žingsnis
Dabar iš naujo nustatykime skaitiklį:
i: = 0;
8 žingsnis
Šis sakinys verčiamas taip: tol, kol bus paspaustas „do“() mygtukas.
o ne paspaudus
pradėti
„ClrScr“operatorius išvalo ekraną:
ClrScr;
9 žingsnis
Mes nustatome sąlygą: jei sekundės yra daugiau nei 60 ir mažiau nei 3600 (tai reikalinga, kad kai laikas yra didesnis nei valanda, programa atspausdintų tik tai, kas yra po trečiosios, jei), tada:
jei (i> 60) ir (i <3600) tada prasideda
Kintamasis m (minutėmis) yra lygus: sekundės padalintos iš 60 ir suapvalintos į priekį.
m: = Int (i / 60);
Kintamasis s (sekundės be minučių) yra lygus: visos sekundės minus minutės padaugintos iš 60.
s: = i - m * 60;
10 žingsnis
Pareiškime „Rašyti“rašoma, kiek minučių ir sekundžių praėjo, o pabaigos sakinys baigia pradžios darbą pagal sąlygą „if“:
Rašykite (m, „minutės (-ės) ir„ (-ės): 1: 2, „sekundės (-ės)“)
galas;
Funkcija: 1: 2 reiškia, kad sekundės turėtų būti parašytos dviem skaičiais po kablelio.
11 žingsnis
Jei sekundės yra mažesnės nei 60, tada tiesiog parašykite, kiek sekundžių praėjo dviem skaičiais po kablelio:
jei aš <60, tada
Rašyti ('', i: 1: 2, 'sekundės (a / s)');
12 žingsnis
Jei sekundės yra daugiau nei 3600 (tai yra daugiau nei valanda), tada:
jei i> 3600, tada prasideda
m: = Int (i / 60);
s: = i - m * 60;
ch: = vidurkis (m / 60);
m: = m - ch * 60;
Rašykite (ch, „valanda (s)“, m, „minutės (-ės) ir„, s: 1: 2, „sekundės (-ės)“);
galas;
13 žingsnis
Taigi, programa parašė, kad praėjo 0 sekundžių, dabar ji padidina skaitiklį i 10 milisekundžių, o kadangi programa viską padaro akimirksniu, mes vėluojame tą patį laiką:
i: = i + 0,01;
Vėlavimas (10);
Tada mes užbaigsime teiginį „Nors (ne paspaustas)“:
galas;
Jei vartotojas paspaudė klavišą Enter, programa laukia, kol jis vėl paspaus, kad vėl paleistų chronometrą:
Readln;
Readln;
Neatsitiktinai mes nustatome skaitiklį į nulį po teiginio Nors (tiesa), nes vartotojui paspaudus Enter antrą kartą, programa bus paleista iš ten, iš naujo nustatys skaitiklį ir vėl pradės skaičiuoti.
Tada mes baigsime „While“ir visai programai:
galas;
14 žingsnis
Čia yra visa programa:
naudoja
CRT;
var
aš tikras;
s: Tikra;
m: Tikra;
ch: Tikra;
pradėti
„SetWindowTitle“(„Chronometras“);
„TextColor“(„LightGreen“);
WriteLn ('Paspauskite Enter, kad pradėtumėte chronometrą');
WriteLn ('Paspauskite dar kartą, kad sustabdytumėte');
Rašyti ('Spustelėkite dar kartą, kad pradėtumėte iš naujo');
SkaitytiLn;
kol (tiesa) daro
pradėti
i: = 0;
o ne paspaudus
pradėti
ClrScr;
jei (i> 60) ir (i <3600) tada prasideda
m: = Int (i / 60);
s: = i - m * 60;
Rašykite (m, „minutės (-ės) ir„ (-ės): 1: 2, „sekundės (-ės)“)
galas;
jei aš <60, tada
Rašyti ('', i: 1: 2, 'sekundės (a / s)');
jei i> 3600, tada prasideda
m: = Int (i / 60);
s: = i - m * 60;
ch: = vidurkis (m / 60);
m: = m - ch * 60;
Rašykite (ch, „valanda (s)“, m, „minutės (s) ir„, s: 1: 2, „sekundės (-ės)“);
galas;
i: = i + 0,01;
Vėlavimas (10);
galas;
Readln;
Readln;
galas;
galas.
15 žingsnis
Pasirodė nelabai gražu, bet programa veikia teisingai!