c# 绘制正玄函数 控制台绘制

1.概要

2.代码

复制代码
using System;

class Program
{
    static void Main()
    {
        const int width = 80; // 控制台宽度  
        const int height = 20; // 正弦波的高度范围  
        const double period = 10.0; // 正弦波的周期  
        const double amplitude = 5.0; // 正弦波的振幅  

        for (int x = 0; x < width; x++)
        {
            double y = amplitude * Math.Sin((2 * Math.PI / period) * x) + height / 2; // 计算y值并调整位置  
            int yPos = (int)y; // 转换为整数位置  
            if (yPos >= 0 && yPos < height) // 确保在可见范围内  
            {
                Console.SetCursorPosition(x, height - yPos - 1); // 设置光标位置  
                Console.Write("*"); // 绘制字符  
            }
        }

        Console.ReadLine(); // 等待用户输入  
    }
}

3.运行结果

相关推荐
liuyt20221 分钟前
【javaweb】day4
前端
研☆香9 分钟前
echarts图表的使用方法
javascript
志尊宝15 分钟前
Vue3 零基础每日笔记(024):组件的创建与使用——从 import 到自动导入
前端·vue.js·笔记·前端框架·html5
@PHARAOH20 分钟前
WHAT - 从前端组件化思维到后端架构设计入门
前端·微服务·架构
是立不是利1 小时前
大文件导致请求被拒的连锁反应
开发语言·前端·javascript
志尊宝1 小时前
Vue3 零基础每日笔记(026):emit 子传父——defineEmits 与事件校验
前端·javascript·html·vue3
风骏时光牛马2 小时前
6个高频实用技术脚本案例,覆盖运维与办公自动化(可直接复用)
前端
鱼听禅2 小时前
C# 学习笔记-使用 类型化客户端搭建HTTP客户端服务
学习·http·c#·工厂方法模式
ssshooter2 小时前
Node.js 天生就是异步的,为什么还要消息队列?
javascript·后端·面试
爱吃红星柚2 小时前
【学习】Elpis 抽离与发布 npm 包
前端·前端框架·node.js