玩原神,学程序设计

1.时钟系统

实现效果:鼠标拖拽时钟指针转动,鼠标只要按着时钟就会始终面向鼠标,转完后,时间会调整

知识点:

        1.三角函数

        2.勾股定理

首先我们来讲勾股定理(望你精神状态处于良好的状态)

        对于一个直角三角形

        

        根据以上公式可以推出任何一个直角三角形的斜边。

        用C++代码表示如下

// 不会C++的根据注释理解一下
#include <iostream>// 导入库文件
#include <cmath>
#include <algorithm>
using namespace std;// 使用命名空间(基础格式)

int main()// 主函数(基础格式)
{
    int a, b;// 定义底边和高的变量
    cin >> a >> b;// 输入
    cout << sqrt(a * a + b * b)// 输出a的平方+b的平方和的开方,也就是斜边c;
    return 0;
}

然后浅浅的讲一下函数

        函数就是关系 

        例如:θ=sin(x)

        这是一个函数sin的使用,在这个式子中,x叫做自变量,θ叫做因变量,这是什么意思呢?意思是x先自己改变,然后θ变化,因为x变了。

        这听起来不好理解,举一个形象的例子,你爸爸是自变量,你是因变量,那你们之间的函数就是:你=儿子(你爸爸),你们的关系,叫父子关系,更加确切地说,是儿子关系。

        

 三角函数

        这是三角形角度与边长的关系。

        

        当然有反三角函数。

        以下比较复杂,我们用最简单的scratch来做演示

        反三角函数,顾名思义,就是把一些东西颠倒,那应该颠倒什么呢?应该颠倒的倒是自变量和因变量的关系。

好了,实现时钟功能。

        首先我们要设置时钟中央为坐标轴(0,0)

        时钟的原理是角度(0~360)=   asin(a / c);

                                                          也就是邻边 / 斜边

        而斜边的计算需要勾股定理。

        我们就能开始套公式了。

        首先,我们要明白,如果指针根部在scratch舞台0, 0的位置,那么获取到的邻边为

        然后 ,通过勾股定理求斜边

scratch的角度是-180~180,所以我们要用映射把另一面的转动实现。 

我们可以用C++编写,告诉电脑我的鼠标位置,判断应该角度多少,而使用C++,python等语言编写可以省去下面的映射

多说一句scratch中的面向[]的效果和以上代码等价,但是请注意,C++等代码语言中可没有面向!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值