用 C++ 统计给定数字时钟显示相同数字的次数
假设我们有一个 HH:MM 类型的数字时钟,它只显示小时和分钟。我们得到小时和分钟作为输入。目标是计算所有数字都相同(H=M)的次数。
这种情况一天发生 3 次,第一次在午夜 00:00,然后是 11:11,最后是 22:22。时间采用 24 小时制表示。
输入
Input: 12 hours 22 minutes.
输出
2
说明 − 对于 00:00 和 11:11。12 小时内出现两次。
输入
Input: 48 hours 22 minutes.
输出
5
说明 − 对于 00:00、11:11 和 22:22。
下面程序中使用的步骤如下
- 变量 hours 和 minutes 存储输入。
- 函数 countIdentical(int hours, int minutes) 获取分钟和小时并返回 HH:MM 数字都相同的次数。
- 对于 00:00,将计数初始化为 1。
- 对于每个小时为 11 和 22,以及分钟为 11 和 22,计数加 1。
- 循环结束后返回结果。
- Count 是期望的结果。
- 打印计数。
示例
// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
// examples- 11:11 11hrs 11 mins, 22:22
int countIdentical(int hours, int minutes){
// Initialized to 1 because of 00:00
int i, count=1;
// For double digit hours
for (i = 0; i <= 99 && i < hours; i = i + 11) {
// Double digit minutes
if ((i % 10) < minutes)
count++;
}
return count;
}
int main(){
int hours = 48;
int minutes = 22;
cout <<"Times when all digits are identical in HH:MM :"
<< countIdentical(hours, minutes);
return 0;
}输出
Times when all digits are identical in HH:MM : 6
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP