აუცილებელია
PascalABC. NET ან PascalTurbo პროგრამირების გარემო
ინსტრუქციები
Ნაბიჯი 1
პირველ რიგში, მოდით გავხსნათ პროგრამა. მოდით შევქმნათ ახალი ფაილი და მიუთითოთ დანამატები. ამ შემთხვევაში, ჩვენ გვჭირდება მოდული კონსოლთან მუშაობისთვის - CRT.
ამისათვის ჩვენ დავწერთ:
იყენებს
CRT;
ნაბიჯი 2
მოდით, მიუთითოთ i, s, m ცვლადები - რეალური ტიპის ცვლადები.
ვარი
i, s, m: ნამდვილი;
ნაბიჯი 3
პროგრამის დასაწყებად დაწერეთ:
დაიწყოს
ჩვენ მიუთითებთ კონსოლის ფანჯრის სათაურს:
SetWindowTitle ('წამზომი');
ნაბიჯი 4
TextColor პროცედურა ტექსტს ანიჭებს ფერს, ხოლო ჩაწერის განცხადება აჩვენებს ტექსტს ეკრანზე:
TextColor (ღია მწვანე);
WriteLn ('წამზომი რომ დაიწყოთ დააჭირეთ Enter');
WriteLn ('დააჭირეთ ისევ შეჩერებისთვის');
დაწერეთ ('დააჭირეთ ხელახლა დასაწყებად');
დასრულებული Ln გადადის შემდეგ სტრიქონზე.
ნაბიჯი 5
ReadLn ოპერატორი კლავიდან შეიტანებს მნიშვნელობებს, მაგრამ ამ შემთხვევაში ის უბრალოდ ელოდება მომხმარებლის მოხვედრას Enter:
ReadLn;
ნაბიჯი 6
ჩვენ ვაკეთებთ გაუთავებელ მარყუჟს:
ხოლო (ჭეშმარიტი) ამის გაკეთება
დაიწყოს
While (ნამდვილი) მშენებლობის დაწყებას ითარგმნება შემდეგნაირად: while (პირობა) do (). რატომ იწყება აქ?
ამ შემთხვევაში, ჩვენ გვჭირდება რთული ოპერატორი, რაც ნიშნავს, რომ მიუხედავად იმისა, რომ პირობა მართალია, რამდენიმე ოპერატორი შესრულებულია. ეს რომ არ ყოფილიყო დასაწყისში, მაშინ while- ს შემდეგ მხოლოდ ერთი განცხადება შესრულდა, რაც პროგრამის არასწორ მუშაობას გამოიწვევს. დასასრულს, როდესაც განცხადება დასრულებულია, ჩვენ ვწერთ ბოლოს.
ნაბიჯი 7
ახლა გადავიყენოთ მრიცხველი:
მე: = 0;
ნაბიჯი 8
შემდეგი ფრაზა ითარგმნება შემდეგნაირად: სანამ ღილაკს do () არ დააჭირეთ.
ხოლო არ არის გასაღები
დაიწყოს
ClrScr ოპერატორი ასუფთავებს ეკრანს:
ClrScr;
ნაბიჯი 9
ჩვენ დავაყენეთ პირობა: თუ წამი 60-ზე მეტია და 3600-ზე ნაკლები (ეს აუცილებელია ისე, რომ როდესაც დრო ერთ საათზე მეტია, პროგრამა ბეჭდავს მხოლოდ იმას, თუ რა არის მესამეზე შემდეგ), შემდეგ:
თუ (i> 60) და (i <3600) მაშინ იწყება
ცვლადი m (წუთი) ტოლია: წამი გაყოფილი 60-ზე და მომრგვალებული წინა მხარეს.
მ: = Int (i / 60);
და ცვლადი s (წამი წუთების გარეშე) ტოლია: ყველა წამი მინუს წუთი გამრავლებული 60-ზე.
s: = i - მ * 60;
ნაბიჯი 10
დაწერე განცხადება წერს რამდენი წუთი და წამი გავიდა და დასასრული დებულებას ამთავრებს დაწყების მუშაობას შემდეგ პირობით:
დაწერეთ (მ, 'წუთი (s) და', s: 1: 2, 'seconds (s)')
დასასრული;
ფუნქცია: 1: 2 ნიშნავს, რომ წამი უნდა დაიწეროს ორი ათობითი ნიშნით.
ნაბიჯი 11
თუ წამი 60-ზე ნაკლებია, მაშინ დაწერე რამდენი წამი გავიდა ორი ათობითი ნიშნით:
თუ მე <60 მაშინ
დაწერეთ ('', i: 1: 2, 'წამი (ა / წმ)');
ნაბიჯი 12
თუ წამი 3600-ზე მეტია (ეს არის საათზე მეტი), მაშინ:
თუ i> 3600 მაშინ დავიწყო
მ: = Int (i / 60);
s: = i - მ * 60;
ch: = Int (მ / 60);
მ: = მ - ჩ * 60;
დაწერეთ (ch, 'hour (s)', m, 'minutes (s) და', s: 1: 2, 'seconds (s)');
დასასრული;
ნაბიჯი 13
ამრიგად, პროგრამამ დაწერა, რომ 0 წამი გავიდა, ახლა ის ზრდის მრიცხველს 10 მილიწამით და რადგან პროგრამა ყველაფერს აკეთებს მყისიერად, ჩვენ ვაწარმოებთ დაგვიანებას იმავე დროში:
მე: = მე + 0,01;
შეფერხება (10);
შემდეგ, ჩვენ დასასრულს მივცემთ while (არ არის პრესირებული) განცხადებას:
დასასრული;
თუ მომხმარებელმა დააჭირეთ ღილაკს Enter, მაშინ პროგრამა ელოდება, თუ როდის დააჭერს მას წამზომი ისევ რომ დაიწყოს:
Readln;
Readln;
შემთხვევითი არ არის, რომ მრიცხველს ნულის დაყენება გავუწიოთ while (true) განცხადების შემდეგ, რადგან როდესაც მომხმარებელი მეორედ დააჭერს Enter- ს, პროგრამა იქიდან დაიწყება, მრიცხველს გადააყენებს და თავიდან დაიწყებს თვლას.
შემდეგ, ჩვენ ვამთავრებთ მიუხედავად იმისა, რომ მთელი პროგრამა:
დასასრული;
ნაბიჯი 14
აქ არის სრული პროგრამა:
იყენებს
CRT;
ვარი
i: ნამდვილი;
ს: ნამდვილი;
მ: ნამდვილი;
ch: ნამდვილი;
დაიწყოს
SetWindowTitle ('წამზომი');
TextColor (ღია მწვანე);
WriteLn ('წამზომის დასაწყებად დააჭირეთ Enter');
WriteLn ('დააჭირეთ ისევ შეჩერებისთვის');
დაწერეთ ('დააჭირეთ ხელახლა დასაწყებად');
ReadLn;
ხოლო (ჭეშმარიტი) ამის გაკეთება
დაიწყოს
მე: = 0;
ხოლო არ არის გასაღები
დაიწყოს
ClrScr;
თუ (i> 60) და (i <3600) მაშინ იწყება
მ: = Int (i / 60);
s: = i - მ * 60;
დაწერეთ (მ, 'წუთი (s) და', s: 1: 2, 'seconds (s)')
დასასრული;
თუ მე <60 მაშინ
დაწერეთ ('', i: 1: 2, 'წამი (ა / წმ)');
თუ i> 3600 მაშინ დავიწყო
მ: = Int (i / 60);
s: = i - მ * 60;
ch: = Int (მ / 60);
მ: = მ - ჩ * 60;
დაწერეთ (ch, 'hour (s)', m, 'minutes (s) და', s: 1: 2, 'seconds (s)');
დასასრული;
მე: = მე + 0,01;
შეფერხება (10);
დასასრული;
Readln;
Readln;
დასასრული;
დასასრული.
ნაბიჯი 15
აღმოჩნდა, რომ ეს არ არის ძალიან ლამაზი, მაგრამ პროგრამა მუშაობს სწორად!