大家好,本篇文章主要讲的是使用用C++做一颗会跳动的爱心实例代码,感兴趣的同学赶快来看一看吧,欢迎借鉴学习C++做一颗会跳动的爱心实例代码
前言
大家好,本篇文章主要讲的是使用用C++做一颗会跳动的爱心实例代码
开始
先来看看效果:
程序描述:
程序先以较慢的速度画一个大爱心,之后跳动的心其实从视觉上看就是一大一小两个心相互切换,但是要调整一下大小爱心变化时的时间间隔。代码主要是通过设置两个函数,利用cls来清屏,重复打印大心和小心,并设置颜色为红色。
详细代码:
在这里插入#include<iostream>
#include<cmath>
#include<Windows.h>
using namespace std;
//关键公式(x^2+y^2-1)^3-x^2*y^3=0,小于零的时候在心形内部,大于零的时候在外部
void big_heart(){//大爱心的打印,一行一行打印爱心
double x_1,y_1,m_1,n_1;
for(y_1=1.5;y_1>-1.5;y_1-=0.1){ //心型的最大长度
for(x_1=-1.5;x_1<=1.5;x_1+=0.05){//心型的最大宽度
m_1=x_1*x_1+y_1*y_1-1;
n_1=pow(m_1,3)-pow(x_1,2)*pow(y_1,3);
n_1<0? cout<<'x': cout<<' ';
}
Sleep(100);
cout<<endl;
}
}
void big_heart_2(){ //大爱心的打印,迅速的完成爱心的打印
double x_1,y_1,m_1,n_1;
for(y_1=1.5;y_1>-1.5;y_1-=0.1){ //心型的最大长度
for(x_1=-1.5;x_1<=1.5;x_1+=0.05){//心型的最大宽度
m_1=x_1*x_1+y_1*y_1-1;
n_1=pow(m_1,3)-pow(x_1,2)*pow(y_1,3);
n_1<0? cout<<'x': cout<<' ';
}
cout<<endl;
}
}
void small_heart(){ //小爱心的打印
double x,y,m,n;
for(y=3.0;y>-3.0;y-=0.2){ //心型的最大长度
for(x=-3.0;x<=3.0;x+=0.1){//心型的最大宽度
m=x*x+y*y-1;
n=pow(m,3)-pow(x,2)*pow(y,3);
n<0? cout<<'x': cout<<' ';
}
cout<<endl;
}
}
//为了美观和舒适,隐藏打印时的光标
HANDLE han = GetStdHandle(-11);
void hide(){
CONSOLE_CURSOR_INFO cursor;
cursor.bVisible = 0;
cursor.dwSize = 1;
SetConsoleCursorInfo(han,&cursor);
}
int main(){ //主函数入口
hide();
system("color C"); //颜色调节
big_heart();
int a=1;
while(1){
system("cls");
if(a%2==0){
small_heart();
Sleep(400); //控制停顿时间
}else{
big_heart_2();
Sleep(100); //控制停顿时间
}
a++;
}
return 0;
}代码片
总结
到此这篇关于使用用C++做一颗会跳动的爱心实例代码的文章就介绍到这了,更多相关C++爱心内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
沃梦达教程
本文标题为:使用用C++做一颗会跳动的爱心实例代码
基础教程推荐
猜你喜欢
- 如何C++使用模板特化功能 2023-03-05
- C++详细实现完整图书管理功能 2023-04-04
- C/C++编程中const的使用详解 2023-03-26
- C++使用easyX库实现三星环绕效果流程详解 2023-06-26
- C利用语言实现数据结构之队列 2022-11-22
- 一文带你了解C++中的字符替换方法 2023-07-20
- C++中的atoi 函数简介 2023-01-05
- C语言基础全局变量与局部变量教程详解 2022-12-31
- 详解c# Emit技术 2023-03-25
- C语言 structural body结构体详解用法 2022-12-06