`
yeshaoting
  • 浏览: 686028 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

趣味编程 - 绘制余弦曲线

阅读更多

 


问题: 在屏幕上用*显示0°~360°的余弦函数cos(x)函数


分析: 余弦曲线在0°~360°的区间内,一行中要显示两个点;而对一般的显示器来说,只能按行输出,即:输出第一行信息后,只能向下一行输出,不能再返回到上一行.为了获得本题要求的图形就必须在一行中一次顺序输出两个*.


算法: 为了同时得到余弦函数cos(x)图形在一行上的两个点,考虑利用cos(x)的左右对称性.将屏幕的行方向定义为x,列方向定义为y,则0°~180°的图形与180°~360°的图形是左右对称的.若定义图形的总宽度为62列,计算出x行0°~180°时y点的坐标m,那么在同一行与之对称的180°~360°的y点的坐标就应为62-m.程序中利用反余弦函数acos计算坐标(x,y)的对应关系.

 

实现程序:

 

/*
@TODO 绘制余弦曲线 
@author jarg
http://jarg.iteye.com/
*/

import static java.lang.System.*;
import static java.lang.Math.*;

public class COS
{
	private static final int MULTI = 12;					// 图形放大倍数
	private static final int LEN = (int)(acos(-1)*MULTI)*2;	// 图形横坐标长度
	private static int X;									// 横坐标
	private static int Y;									// 纵坐标

	public static void main(String[] args)
	{
		display();
	}

	public static void display()
	{
		for(Y=10; Y>=-10; Y--)
		{
			X = (int)(acos((double)Y/10)*MULTI);
			for(int m=0; m<X; m++)
			{
				out.print(" ");
			}
			out.print("*");
			for(int n=X; n<LEN-X; n++)
			{
				out.print(" ");
			}
			out.println("*");
		}
	}
}
  

  

问题及解析来自<<C语言趣味程序百合精解>>

 

  • 大小: 9 KB
分享到:
评论

相关推荐

    D语言版趣味程序 1.绘制余弦曲线

    绘制余弦曲线" 提供了我们即将探讨的知识点——使用D语言来实现一个程序,该程序的功能是绘制余弦曲线。D语言是一种现代的、通用的、系统级的编程语言,它具有C/C++的语法风格,但加入了更多现代编程语言的特性,如...

    c+c++语言经典、实用、趣味程序设计编程

    C/C++语言经典、实用、趣味程序设计编程的特点是使用C/C++语言设计和实现经典、实用、趣味的程序,涵盖了多个领域,例如绘制余弦曲线、绘制余弦曲线和直线、绘制圆等。这些程序设计编程不仅可以帮助学习者掌握C/C++...

    正余弦曲线-少儿编程scratch项目源代码文件案例素材.zip

    "正余弦曲线-少儿编程scratch项目源代码文件案例素材.zip" 是一个专为孩子们设计的教学资源,旨在通过游戏化的方式,教授他们理解和绘制正余弦曲线的基本概念。这个压缩包内包含了一个名为 "正余弦曲线.sb2" 的源...

    C++语言经典实用趣味程序设计编程百例精解.pdf

    绘制余弦曲线 **知识点概述:** 本例通过C++程序在命令行界面中绘制0到360度之间的余弦曲线。为了实现这一目标,程序采用了一些巧妙的方法来克服输出限制。这里涉及到的主要技术包括数学库的使用、循环结构、条件...

    趣味编程100例

    绘制余弦曲线 **知识点解析:** - **编程背景:** - 使用C语言编程环境完成图形的绘制任务。 - 利用了C语言强大的数学库(`math.h`)来处理数学运算。 - **程序结构与算法设计:** - **问题简化:** 利用屏幕...

    C/C++趣味编程100例

    绘制余弦曲线 这一实例展示了如何使用C/C++的绘图库来绘制数学函数图像,如余弦曲线。通过设置坐标轴,利用循环和数学函数`cos()`,可以在屏幕上绘制出平滑的余弦曲线。这不仅考验了编程者对图形库的熟悉程度,还...

    Java趣味编程100例 共20页.doc

    "Java趣味编程100例"文档涵盖了多种利用Java语言实现的图形绘制,其中包括金字塔图案、九九乘法表、余弦曲线、奥运五环旗、杨辉三角、国际象棋棋盘以及心形图。这些例子不仅锻炼了编程者的逻辑思维能力,还让他们在...

    趣味编程.pdf

    ### 趣味编程知识点概览 #### 一、绘制余弦曲线 **知识点解析:** 1. **问题分析与算法设计:** - **不使用数组:** 本例中,程序需在屏幕上绘制0至360度的余弦函数图像,且限制条件为不得使用数组。 - **解决...

    Cc++趣味程序百例(献给CC++初学者)借鉴.pdf

    首先,我们以绘制余弦曲线的程序为起点,引领初学者进入C/C++编程的迷人世界。这个程序利用了数学库中的acos函数,来计算角度对应的余弦值,并通过for循环迭代每一个角度,再使用printf函数输出对应的坐标点,形成...

    C/C++语言经典实用趣味程序设计编程百例精解

    绘制余弦曲线 2.绘制余弦曲线和直线 3.绘制圆 4.歌星大奖赛 5.求最大数 6.高次方数的尾数 7.阶乘尾数零的个数 8.借书方案知多少 9.杨辉三角形 10.数制转换

    C语言趣味程序设计编程百例精解.pdf

    书中的例子涵盖了一系列有趣的编程实践,如绘制余弦曲线,这不仅能够帮助读者巩固基础,还能激发他们对编程的兴趣。 在C语言中,绘制图形通常涉及到控制字符的输出,以及利用终端或控制台的特性。例如,要在屏幕上...

    C C++语言经典、实用、趣味程序设计编程百例精解

    1. 程序设计:本文讲解了多个程序设计的例子,包括绘制余弦曲线、绘制余弦曲线和直线的迭加图形、绘制圆等。 2. 算法设计:本文讨论了多个算法设计的思路和方法,包括使用数学函数 acos 和 printf 函数来实现图形的...

    C语言趣味编程

    绘制余弦曲线(`cos(x)`) 此示例展示了如何使用标准数学库中的函数来绘制从0到360度的余弦曲线。具体实现如下: - 首先定义了两个变量`y`和`x`,其中`y`表示余弦值的范围从1到-1递减,步长为0.1;`x`则用于控制...

    c趣味编程案例

    - **描述**:案例中提到了利用C语言来绘制正弦曲线和余弦曲线的图形。 - **知识点**: - **数学库**:在C语言中,`&lt;math.h&gt;`头文件提供了各种数学函数,如`sin()`、`cos()`等。 - **坐标系与图形绘制**:通过计算...

    百味编程趣味编程百例

    C/C++语言经典实用趣味程序设计编程百例精解(1) ...1.绘制余弦曲线 2.绘制余弦曲线和直线 3.绘制圆 4.歌星大奖赛 5.求最大数 6.高次方数的尾数 7.阶乘尾数零的个数 8.借书方案知多少 9.杨辉三角形 10.数制转换

    C/C++经典实用趣味程序设计编程例子精解(DOC)

    绘制余弦曲线 2.绘制余弦曲线和直线 3.绘制圆 4.歌星大奖赛 5.求最大数 6.高次方数的尾数 7.阶乘尾数零的个数 8.借书方案知多少 9.杨辉三角形 10.数值转换 11.打鱼还是晒网 ...

    C/C++语言经典、实用、趣味程序设计编程百例精解

    1. 绘制余弦曲线 这个例子展示了如何在终端上用星号(*)模拟0到360度的余弦曲线。在不使用数组的情况下,程序员巧妙地利用了余弦函数的对称性。程序首先定义了屏幕的行(x)和列(y)方向,然后通过反余弦函数acos计算...

    c趣味编程100例

    1. 绘制余弦曲线:该例子展示了如何在屏幕上不使用数组来绘制0~360度的余弦曲线。关键在于利用余弦函数的左右对称性,通过计算每个点的对称点来在一行中同时输出两个点。程序通过反余弦函数`acos`计算弧度,并将其...

    scratch编程项目源代码文件案例素材-[正余弦曲线].zip

    6. **绘制曲线**:为了让曲线更明显,可以创建多个角色,每个角色代表曲线的一部分,通过不同颜色和位置来组合成完整的正余弦曲线。 7. **优化与交互**:为了增加趣味性,可以添加用户交互元素,如通过按键改变曲线...

    C语言趣味程序百例C语言趣味程序百例.doc

    1. **绘制余弦曲线**: - 使用C语言的`&lt;stdio.h&gt;`和`&lt;math.h&gt;`库,`&lt;math.h&gt;`库提供了数学函数如`acos`(反余弦函数)。 - 利用余弦函数的左右对称性,以行x和列y定义屏幕坐标,0~180度的余弦曲线与180~360度的...

Global site tag (gtag.js) - Google Analytics