網站首頁 編程語言 正文
前言
大家好,本篇文章主要講的是使用用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; }代碼片
總結
原文鏈接:https://blog.csdn.net/weixin_52543147/article/details/122001021
相關推薦
- 2022-12-07 C語言?如何求兩整數的最大公約數與最小公倍數_C 語言
- 2022-10-11 Xshell連接centOS7并與CentOS7聯網_Linux
- 2022-09-06 Django的restframework接口框架自定義返回數據格式的示例詳解_python
- 2023-07-16 spring boot 多環境配置
- 2022-12-30 解決React報錯useNavigate()?may?be?used?only?in?context
- 2022-01-21 Flink中實現自定義ProcessFunction實現定時器、側輸出
- 2022-09-26 數據結構---圖、十字鏈表及其代碼實現
- 2022-03-09 軟件構建工具makefile基礎講解_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支