输入一个正整数,用*号画一朵玫瑰花,如何用js编写
时间: 2023-06-10 13:08:01 浏览: 124
好的,让我来回答您的问题。以下是使用JavaScript编写一个画玫瑰花的程序代码:
```
function drawRose(n) {
for (let i = -n; i <= n; i++) {
let line = "";
for (let j = -n; j <= n; j++) {
const x = j / n;
const y = i / n;
const equation = Math.pow(Math.pow(Math.abs(x), 2), 1 / 3) + Math.pow(Math.pow(Math.abs(y), 2), 1 / 3);
if (equation <= 1) line += "*";
else line += " ";
}
console.log(line);
}
}
// 输入正整数n, 如 n=20
drawRose(20);
```
您可以在控制台中运行此代码,将会输出一个用星号画出的玫瑰花,玫瑰花的大小与输入的正整数n有关。
相关问题
用js和html编写一个小程序,输入一个正整数,在页面画一朵玫瑰花
好的,我可以给您提供一些简单的代码,您可以自行尝试:
HTML部分:
```html
<label for="num">输入正整数:</label>
<input type="number" id="num" name="num">
<button onclick="drawRose()">画玫瑰花</button>
<br><br>
<canvas id="canvas"></canvas>
```
JS部分:
```javascript
function drawRose() {
// 获取输入的数字
const num = document.getElementById("num").value;
// 获取canvas元素和上下文
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
// 计算需要的常量
const factor = num * 0.02;
const radius = 50 * Math.sin(factor);
const delta = 2 * Math.PI / num;
// 绘制玫瑰花
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.beginPath();
for (let i = 0; i < num; i++) {
const theta = delta * i;
const x = radius * Math.cos(theta) * Math.cos(factor) + canvas.width / 2;
const y = radius * Math.sin(theta) * Math.cos(factor) + canvas.height / 2;
ctx.lineTo(x, y);
}
ctx.closePath();
ctx.fillStyle = "pink";
ctx.fill();
}
```
当您输入一个正整数并单击“画玫瑰花”按钮时,JS函数将计算偏移量、半径和角度,并根据这些变量在canvas上绘制玫瑰花。 如果您需要更多的帮助,请告诉我。
用C语言编写:描述 输入一个整数 n,打印一个正三角形 输入描述 输入一个整数 n 输出描述 NULL 用例输入 1 4 用例输出 1 * ** *** ****
以下是用C语言编写的描述打印正三角形的代码:
```c
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
return 0;
}
```
阅读全文