Member 13807158 Ответов: 1

Получить площадь и окружность круга из пользовательского ввода


Я пытаюсь сделать код, в котором я ввожу ось x, ось y и радиус окружности. Эти значения вводятся в объект, а затем отображаются площадь окружности и длина окружности. Это все, что мне удалось узнать. Поскольку код находится прямо сейчас, я не получаю никаких выходных данных, и я не совсем уверен, что мои объекты правильны. Мой вопрос заключается в том, как я могу исправить этот код, чтобы я мог вводить значения, которые я хочу в формах, и он выводит площадь круга и окружность, через объект.

Что я уже пробовал:

<html>
<head>
</head>
<body>
<form id="register">
	<h1>Area and circumference of a circle</h1>
	<fieldset> 
		<legend>Enter Information</legend> 
		<div> 
			<label>Enter the radius of a circle
			<input id="rad" name="rad" type="number" placeholder="Numbers Only" required autofocus> 
			</label>
		</div>
		<div> 
			<label>Enter the x-axis of a circle
			<input id="xAxis" name="xAxis" type="number" placeholder="Numbers Only" required autofocus> 
			</label>
		</div>
		<div> 
			<label>Enter the y-axis of a circle
			<input id="yAxis" name="yAxis" type="number" placeholder="Numbers Only" required autofocus> 
			</label>
		</div>
	</fieldset>
	
	<fieldset> 
		<div> 
			<input id="calculate" name="calculate" type="button" value="Calculate" onClick='Circle();'> 
		</div> 
	</fieldset> 
</form> 
</body>
</html>

<title>Object Circle</title>

body {
	margin: 2em 5em;
	font-family:Georgia, "Times New Roman", Times, serif;
}
h1, legend {
	font-family:Arial, Helvetica, sans-serif;
}
label, input, select {
	display:block;
}
input, select {
	margin-bottom: 1em;
}
fieldset {
	margin-bottom: 2em;
	padding: 1em;
}


function Circle(xAxis, yAxis, rad){
	this.xCord = x;
	this.yCord = y;
	this.radius = r;

	this.area = function(){
		return Math.PI * this.radius * this.radius;
	};

	this.perimeter = function(){
		return 2*Math.PI*this.radius;
	};
}
this.move = function(){
	this.xCord = x;
	this.yCord = y;
}

var c1 = new Circle(3, 4, 5);
	c1.area(0, 0);
	alert ("The area = " + c1.area);

GKP1992

Пожалуйста, точно укажите, с какой проблемой вы столкнулись. Никто не знает, что вы хотите, чтобы ваш код делал и что он делает вместо этого.

F-ES Sitecore

В чем вопрос?

Member 13807158

Мой вопрос заключается в том, как я могу исправить этот код, чтобы я мог вводить значения, которые я хочу в формах, и он выводит площадь круга и окружность, через объект.

Member 13807158

Поскольку код находится прямо сейчас, я не получаю никаких выходных данных, и я не совсем уверен, что мои объекты правильны.

1 Ответов

Рейтинг:
2

GKP1992

Попробуйте вместо этого эту функцию.

function Circle(){
        //First you need to read the value from the textboxes and store them in a 
        //variable. Your current function does not do that, so it does not what you 
        //enter in the textboxes, you'll never get a good result. Read more about 
        //reading values from at https://www.w3schools.com/jsref/prop_text_value.asp
	var xAxis = parseInt(document.getElementById("xAxis").value);
        var yAxis = parseInt(document.getElementById("yAxis").value);
        var radius = parseInt(document.getElementById("rad").value);
 
	var area = Math.PI * radius * radius;
	

	var perimeter =  2*Math.PI*radius;
	
    //you can use these variables to either display on the page or do something like 
    //this.
    alert("Area: " + area + " and Circumference: " + perimeter );
}
//I don't know what you're trying to do with this function.
this.move = function(){
	this.xCord = x;
	this.yCord = y;
}
//Or with this.
var c1 = new Circle(3, 4, 5);
	c1.area(0, 0);
	alert ("The area = " + c1.area);


Member 13807158

То, как вы это сделали, не дает результатов.

GKP1992

Проверь сейчас.