杨校老师课堂之C++备战全国青少年科技教育成果展示大赛(一)

全国青少年科技教育成果展示大赛是经教育部批准,由中国下一代教育基金会主办的全国性竞赛活动。

全国青少年科技教育成果展示大赛是经教育部批准,由中国下一代教育基金会主办的全国性竞赛活动。

在这里插入图片描述

赛事描述

主题:“科技强国・未来有我”。
目标: 坚持立德树人根本任务,培养具有家国情怀、崇尚科学的新时代好少年。
宗旨: 彰显公益普惠风尚,助力全面实施素质教育,为建设高质量教育体系贡献力量。

比赛内容

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


知识储备 (一)

在这里插入图片描述

任务1 绘制正方形

在这里插入图片描述


int main(){
    // 让画笔向前移动100个单位距离
    pen.fd(100); 
    // 让画笔向右旋转90度
    pen.rt(90); 
    // 让画笔向前移动200个单位距离
    pen.fd(200); 
    // 让画笔向右旋转90度
    pen.rt(90); 
    // 让画笔向前移动100个单位距离
    pen.fd(100); 
    // 让画笔向右旋转90度
    pen.rt(90); 
    // 让画笔向前移动200个单位距离
    pen.fd(200); 
    // 让画笔向右旋转90度
    pen.rt(90);   
    // 程序正常结束,返回值0表示程序执行成功
    return 0;
}

任务2 绘制帽子

在这里插入图片描述

int main(){
    // 控制画笔向右旋转90度
    pen.rt(90); 
    // 控制画笔向前移动100个单位距离
    pen.fd(100); 
    // 控制画笔向左旋转90度
    pen.lt(90); 
    // 控制画笔向前移动100个单位距离
    pen.fd(100); 
    // 控制画笔向右旋转90度
    pen.rt(90); 
    // 控制画笔向前移动200个单位距离
    pen.fd(200); 
    // 控制画笔向右旋转90度
    pen.rt(90); 
    // 控制画笔向前移动100个单位距离
    pen.fd(100); 
    // 控制画笔向左旋转90度
    pen.lt(90); 
    // 控制画笔向前移动100个单位距离
    pen.fd(100); 
    // 控制画笔向后移动300个单位距离
    pen.bk(300);   
    // 程序正常结束,返回值0表示程序执行成功
    return 0;
}

任务3 绘制万花筒

在这里插入图片描述

int main() {
    // 隐藏画笔,这样在绘图过程中不会显示画笔的样式
    p.hide();

    // 设置画笔的大小为100,设置画笔颜色为2(颜色值可能根据具体绘图库的定义来确定)
    // 并将画笔移动到坐标 (0, 0) 的位置
    p.size(100);
    p.color(2);
    p.moveTo(0, 0);

    // 绘制一个边长为300的正方形
    p.fd(300);  // 画笔向前移动300个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(300);  // 画笔向前移动300个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(300);  // 画笔向前移动300个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(300);  // 画笔向前移动300个单位
    p.rt(90);   // 画笔向右旋转90度

    // 再次设置画笔的大小为100,设置画笔颜色为3
    // 并将画笔移动到坐标 (50, 50) 的位置
    p.size(100);
    p.color(3);
    p.moveTo(50, 50);

    // 绘制一个边长为200的正方形
    p.fd(200);  // 画笔向前移动200个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(200);  // 画笔向前移动200个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(200);  // 画笔向前移动200个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(200);  // 画笔向前移动200个单位
    p.rt(90);   // 画笔向右旋转90度

    // 又一次设置画笔的大小为100,设置画笔颜色为4
    // 并将画笔移动到坐标 (100, 100) 的位置
    p.size(100);
    p.color(4);
    p.moveTo(100, 100);

    // 绘制一个边长为100的正方形
    p.fd(100);  // 画笔向前移动100个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(100);  // 画笔向前移动100个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(100);  // 画笔向前移动100个单位
    p.rt(90);   // 画笔向右旋转90度
    p.fd(100);  // 画笔向前移动100个单位
    p.rt(90);   // 画笔向右旋转90度

    // 程序正常结束,返回值0表示程序执行成功
    return 0;
}


知识储备(二)

在这里插入图片描述

任务1 绘制双螺旋

在这里插入图片描述

int main() {
    // 将画笔移动到坐标为 (-200, 0) 的位置,确定绘图的起始点
    pen.moveTo(-200, 0);

    // 开始第一个循环,循环5次,用于绘制特定形状的一部分
    for (int i = 0; i < 5; i++) {
        // 画笔向前移动50个单位距离,然后向右旋转90度
        pen.fd(50).rt(90);
        // 画笔继续向前移动50个单位距离,然后向左旋转90度
        pen.fd(50).lt(90);
    }

    // 画笔向左旋转180度,改变画笔的方向
    pen.lt(180);

    // 开始第二个循环,同样循环5次,用于绘制与前面形状对称的另一部分
    for (int i = 0; i < 5; i++) {
        // 画笔向前移动50个单位距离,然后向右旋转90度
        pen.fd(50).rt(90);
        // 画笔继续向前移动50个单位距离,然后向左旋转90度
        pen.fd(50).lt(90);
    }

    // 程序正常结束,返回值0表示程序执行成功
    return 0;
}

任务2 绘制计时器

在这里插入图片描述

int main() {
    // 调用 pen 对象的 rr 方法,传入参数 200、100 和 14
    //  rr 方法是绘制实心矩形操作
    pen.rr(200, 100, 14);

    // 再次调用 pen 对象的 rr 方法,传入参数 160、80 和 0
    // 同样是进行绘制操作,可能绘制的图形与上面的类似,但由于参数不同,图形会有差异
    pen.rr(160, 80, 0);

    // 开始一个循环,循环变量 i 从 0 开始,到 18 结束(包含 18)
    for(int i = 0; i <= 18; i++) {
        // 在每次循环中,调用 pen 对象的 rr 方法,传入参数 159、79 和 3
        // 持续绘制特定图形,由于参数相同,每次绘制的图形相同
        pen.rr(159, 79, 3);

        // 调用 pen 对象的 text 方法,并传入当前的循环变量 i
        // 推测 text 方法可能是在绘制的图形上显示文本,这里显示当前循环的序号
        pen.text(i);

        // 调用 wait 函数,传入参数 1
        // 推测 wait 函数是用于暂停程序执行一段时间,这里暂停 1 个时间单位(具体时间单位根据函数实现而定)
        wait(1);
    }

    // 程序正常结束,返回值 0 表示程序执行成功
    return 0;
}

📢 关注《算法少年阁》,解锁更多算法干货!

✍️ 每日更新:CSP-J/S 竞赛真题解析、算法模板、高效刷题技巧
💡 独家资源:回复关键词领取「信奥赛高频考点PDF」
👥 加入社群:与1000+算法爱好者交流学习,解答疑问

微信搜索🔍:算法少年阁 或 扫码关注,一起成长为算法高手!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨校

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值