Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _CRT_SECURE_NO_WARNINGS
- #include <stdio.h>
- #include <stdlib.h>
- int main() {
- int interval = -1, hours = -1, minutes = -1, startingTime = -1, endingTime = -1, busCount = 0, totalTime;
- char temp;
- // Getting starting time and converting into minutes
- printf("Starting time (hh:mm)\n> ");
- scanf("%i%c%i", &hours, &temp, &minutes);
- if (hours >= 25 || minutes >= 61 || hours < 0 || minutes < 0) {
- printf("Invalid time");
- return 1;
- }
- startingTime = hours * 60 + minutes;
- // Getting ending time and converting into minutes
- printf("Ending time (hh:mm)\n> ");
- scanf("%i%c%i", &hours, &temp, &minutes);
- if (hours >= 25 || minutes >= 61 || hours < 0 || minutes < 0) {
- printf("Invalid time");
- return 1;
- }
- endingTime = hours * 60 + minutes;
- ! if (endingTime < startingTime) {
- ! endingTime += (24 * 60);
- ! }
- // Getting interval
- printf("Interval (m)\n> ");
- scanf("%i", &interval);
- // Counting total time
- totalTime = endingTime - startingTime;
- for (startingTime; startingTime <= endingTime; startingTime += interval) {
- ! if (startingTime >= (24 * 60)) {
- ! startingTime = 0;
- ! endingTime -= (24 * 60);
- ! }
- busCount++;
- minutes = startingTime % 60;
- hours = (startingTime - minutes) / 60;
- printf("%02i:%02i ", hours, minutes);
- if (busCount % 3 == 0) {
- printf("Barrier-free bus");
- }
- printf("\n");
- }
- // Converting total time into (hh:mm)
- minutes = totalTime % 60;
- hours = (totalTime - minutes) / 60;
- // Output
- printf("\n\t\t==++STATISTICS++==\n\n\tTimeframe: %i minutes or %02i:%02i\n", totalTime, hours, minutes);
- printf("\tTotal buses in given time period: %i\n\tTotal barrier-free buses: %i\n\n", busCount, busCount / 3);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement