C#学习笔记——sin函数

·纵向打印sin函数
思路:利用双重循环定位一个矩形区域,在区域中找出sin函数对应的点并标记为“ * ”,不在函数图像上的点就标记为“ ”,最后进行适当放缩即可。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 纵向打印sin函数
{
    class Program
    {
        static void Main(string[] args)
        {
            for (double i = 0; i < 50; i++)
            {
                for (int j = 0; j < 30; j++)
                {
                    double k = 15 * (Math.Sin(i / 3) + 1);
                    if (j >= k - 1 && j < k)
                    {
                        Console.Write("*");
                    }
                    else
                    {
                        Console.Write(" ");
                    }
                }
                Console.WriteLine();
            }

            Console.ReadLine();
        }
    }
}

运行效果:
C#学习笔记——sin函数_第1张图片
·横向打印sin函数
思路:与纵向打印相同,找出点并标记,对纵向打印的代码稍加修改即可实现。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 纵向打印sin函数
{
    class Program
    {
        static void Main(string[] args)
        {
            for (int i = 0; i < 30; i++)
            {
                for (int j = 0; j < 100; j++)
                {
                    double k = 10 * (Math.Sin(j / 5.0) + 1);

                    if (Math.Abs(k - i) <= 0.5)
                    {
                        Console.Write("*");
                    }
                    else
                    {
                        Console.Write(" ");
                    }
                }
                Console.WriteLine();
            }

            Console.ReadLine();
        }
    }
}

运行效果:
C#学习笔记——sin函数_第2张图片
最值附近效果不是很好,有待改进。

你可能感兴趣的:(C#初学,c#)