Day23:打卡代码题(64-66) + 英语翻译 + 单词打卡
作用域问题:局部变量仅当前函数可访问,全局变量所有函数可访问即不能设置为局部数组,然后调用fun函数,会导致编译错误代码int main()fun(year);i < n;day = 1;month ++;month = 1;year ++;fun(year);return 0;ZS。
题目64:N的倍数
问题描述
明明的爸爸在研究一个复杂的数学问题,研究了很长时间都没有结果。明明看见后就问爸爸在研究什么。明明的爸爸回答说:“我在研究一个整数的倍数问题,想找到某个数的倍数……”明明还没有等他爸爸说完,就抢着说:“这不是很简单嘛,你把这个整数乘以1,乘以2,……,就能得到很多的倍数呀。”明明的爸爸当然知道这种方法,但是他接着说:“这样的方法找倍数当然容易,但是我找的倍数有一个特点,那个倍数只能由0或1组成,且应该尽量的小。例如一个自然数2,它符合要求的那个倍数就是10。”这下明明明白为什么爸爸研究了那么多时间都还没有研究出结果了,因为随着数字的增大,找到它的符合要求的倍数越来越难。明明想帮他爸爸解决这个问题,于是他来求助于你,能否帮他爸爸写一个程序,来求一个整数的倍数,倍数仅有0或1组成,且要尽可能小。 明明的问题可以归结为:任意给定一个自然数N,寻找一个M,要求M是N的倍数,且它的所有各位数字都是由0或1组成,并要求M尽可能小。
输入说明
你写的程序要求从标准输入设备中读入测试数据作为你所写程序的输入数据。标准输入设备中有多组测试数据,每组测试数据仅占一行,每行仅包括一个正整数N(1≤N≤100),代表要求倍数的那个整数。每组测试数据与其后一组测试数据之间没有任何空行,第一组测试数据前面以及最后一组测试数据后面也都没有任何空行。
输出说明
对于每一组测试数据,你写的程序要求计算出一组相应的运算结果,并将这一组运算结果作为你所写程序的输出数据依次写入到标准输出设备中。每组运算结果为一个整数,即N的倍数M。每组运算结果单独形成一行数据,其行首和行尾都没有任何空格,每组运算结果与其后一组运算结果之间没有任何空行,第一组运算结果前面以及最后一组运算结果后面也都没有任何空行。 注:通常,显示屏为标准输出设备。
输入范例
1
2
输出范例
1
10
代码
#include <iostream>
#include <cstdio>
using namespace std;
bool fun(int x)
{
while(x > 0)
{
if(x % 10 != 1 && x % 10 != 0) return false;
x /= 10;
}
return true;
}
int main()
{
int n;
while(cin >> n)
{
for(int i = 1; ; i ++)
{
int m = i * n;
if(fun(m))
{
cout << m << endl;
break;
}
}
}
return 0;
}
题目65:求n天后的日期
问题描述
写一个函数,传入年月日,计算它的第二天,并返回该日期。由用户输入年月日和一个n值,使用前述函数,计算该日期加n天的日期为多少。
输入说明
输入year,month,day和n共4个正整数,以空格分隔。n的值不超过2000。
输出说明
输出计算得到的结果年月日共3个正整数,整数之间以一个空格分隔,行首与行尾无多余空格。
输入范例
2000 1 1 366
输出范例
2001 1 1
个人总结
作用域问题:局部变量仅当前函数可访问,全局变量所有函数可访问
即不能设置为局部数组,然后调用fun函数,会导致编译错误
代码
#include <iostream>
#include <cstdio>
using namespace std;
int mon[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
void fun(int year)
{
if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
{
mon[2] = 29;
}
else mon[2] = 28;
}
int main()
{
int year, month, day, n;
cin >> year >> month >> day >> n;
fun(year);
for(int i = 0; i < n; i ++)
{
day ++;
if(day > mon[month])
{
day = 1;
month ++;
if(month > 12)
{
month = 1;
year ++;
fun(year);
}
}
}
cout << year << ' ' << month << ' ' << day;
return 0;
}
题目66:菱形输出
问题描述
明明这次又碰到问题了:
给定一个正整数N,明明的爸爸让他输出一个以Z开始的菱形,以后依次为Y,X…,
比如当N等于1的时候输出图形:
Z
当N等于2的时候,输出图形:(Y前没有空格,Z、X和W前一个空格)
Z
Y X
W
当N等于3的时候,输出图形(Z前两个空格,Y、X前一个空格,W前没有空格......):
Z
Y X
W V
U T
S
明明发现当N很大的时候就不是很容易了,所以找到了你,希望你编写一个程序帮助他
明明的问题可以归结为:输入一个正整数N,输出一个以Z开始的菱形,以后依次为Y,X…。
请尝试定义函数,该函数的功能是输出以上图形的一行。
输入说明
你写的程序要求从标准输入设备中读入测试数据作为你所写程序的输入数据。标准输入设备中有多组测试数据,每组测试数据仅占一行,每行仅包括一个正整数n(1≤n≤7)。每组测试数据与其后一组测试数据之间没有任何空行,第一组测试数据前面以及最后一组测试数据后面也都没有任何空行。
输出说明
对于每一组测试数据,你写的程序要求计算出一组相应的运算结果,并将这一组运算结果作为你所写程序的输出数据依次写入到标准输出设备中。每组输出一个以Z开始的菱形,具体格式参照样例输出。每组运算结果与其后一组运算结果之间有一个空行,最后一组运算结果之后没有空行。 注:通常,显示屏为标准输出设备。
输入范例
1
3
输出范例
Z
Z
Y X
W V
U T
S
个人总结
Z
Z Y0X
Z Y0X W101V
W U0T
S
代码
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main()
{
int n;
while(cin >> n)
{
char c = 'Z';
int cx = n - 1, cy = n - 1;
for(int i = 0; i < 2 * n - 1; i ++)
{
int cnt = 0;
for(int j = 0; j < 2 * n - 1; j ++)
{
if(abs(cx - i) + abs(cy - j) == n - 1)
{
cout << c;
c --;
cnt ++;
if(cnt == 1)
{
if(i == 0 || i == 2 * n - 2)
{
cout << endl;
break;
}
}
else if(cnt == 2)
{
cout << endl;
break;
}
}
else cout << ' ';
}
}
cout << endl;
}
return 0;
}
英语翻译
Today's sensor networks are mostly wireless, and are known as wireless sensor networks (WSNs). A typical WSN consists of spatially distributed autonomous sensors to cooperatively monitor physical or environmental conditions, such as temperature, sound, vibration, pressure, motion, or pollutants. The development of wireless sensor networks was motivated by military applications such as battlefield surveillance. WSN technology is now used in many industrial and civilian application areas, including process monitoring and control, machine health monitoring, environment and habitat monitoring, health care and home automation, and intelligent traffic control.
当今的传感器网络大多是无线的,被称为无线传感器网络。典型的无线传感器网络由在空间上分布的自主传感器组成,协同监测物理或环境状况,例如温度、声音、振动、压力、运动或污染物。无线传感器网络的发展最初受到如战场监视的军事应用的推动。如今,WSN 技术已广泛应用于众多工业和民用领域,包括过程监控与控制、设备健康监测、环境与栖息地监测、医疗保健与家居自动化,以及智能交通控制。
cooperative /kəu'ɔpərətiv/ a. 合作的,协作的
pollutant /pə'luːtənt/ n. 污染性物质
battlefield /'bætlfiːld/ n. 战场
habitat /'hæbitæt/ n.(动植物的)自然生存环境,栖息地
The GPS was developed in 1973 by the U. S. Air Force. Similar developments have also occurred in the European Union, Russia, and China. Since 1994, a degraded GPS has been made available for civilian applications in providing reliable positioning, navigation, and timing services. For anyone with a GPS receiver, the system will provide accurate location and time information for an unlimited number of users in all weather conditions, day and night, anywhere in the world.
全球定位系统由美国空军于1973年研制开发。欧盟、俄罗斯和中国也相继开展了类似的系统研发。自1994年起,一种精度有所降低的GPS信号已向民用领域开放,用于提供可靠的定位、导航和授时服务。对于任何拥有GPS接收器的用户,无论白天黑夜、在任何天气条件下、在全球任何地点,系统都能提供准确的位置和时间信息,且用户数量不受限制。
Table 12C-1: Enabling and Synergistic Technologies for the IoT
表 12C-1:物联网的使能技术与协同技术
Synergistic technologies play supporting roles. For example, biometrics could be widely applied to personalize the interactions among humans, machines, and objects. Artificial intelligence, computer vision, robotics, and telepresence can make our lives more automated in the future.
协同技术起到辅助作用。例如,生物测定学可被广泛应用,以实现人、机器与物体之间交互的个性化。人工智能、计算机视觉、机器人技术和远程呈现技术将使我们的未来生活更加自动化。
单词打卡
更多推荐



所有评论(0)