Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.01.2013, 16:54   #1
bestnicer
Пользователь
 
Аватар для bestnicer
 
Регистрация: 29.05.2012
Сообщений: 59
Восклицание Упрощение кода.

Код:
<HTML>
 <HEAD>
 <TITLE> Вычисление периметра и площади</TITLE>
 <script language="JavaScript">
     function Figure(name, length, perimetr, square) 
     {
         this.name = name;
         this.length = length;
         this.perimetr = perimetr;
         this.square = square;
     }
     Figure.prototype.get_perimetr = function () {
         return this.perimetr;
     };
     Figure.prototype.get_square = function () {
         return this.square;
     };

     Foursquare.prototype = new Figure();
     Foursquare.prototype.constructor = Foursquare;

     function Foursquare(length) {
         Figure.call(this, "Square", length, length*4, length*length);
     };
     
     function Foursquare_do() {
         var new_Foursquare = new Foursquare(document.getElementsByName("st1")[0].value);
         document.getElementsByTagName("div")[0].innerHTML = 'Площадь квадрата: ' + new_Foursquare.get_square() + '<br />Периметр квадрата: ' + new_Foursquare.get_perimetr();

     };


	 Triangle.prototype = new Figure();
	 Triangle.prototype.constructor = Triangle;

	 function Triangle(length) {
	     Figure.call(this, "Triangle", length, length * 3, length * length * 0.25 * Math.sqrt(3));
	 };

	 function Triangle_do() {
	     var new_Triangle = new Triangle(document.getElementsByName("st1")[0].value);
	     document.getElementsByTagName("div")[1].innerHTML = 'Площадь треугольника: ' + new_Triangle.get_square() + '<br />Периметр треугольника: ' + new_Triangle.get_perimetr();
	 };

	 Circle.prototype = new Figure();
	 Circle.prototype.constructor = Circle;

	 function Circle(length) {
	     Figure.call(this, "Circle", length * 2 * 3.14, length * length * 3.14);
	 };
	function Circle_do() {
        var new_Circle = new Circle(document.getElementsByName("st1")[0].value);
	    document.getElementsByTagName("div")[2].innerHTML = 'Площадь круга: ' + new_Circle.get_square() + '<br />Периметр круга: ' + new_Circle.get_perimetr();
	};

	function calculate() {
	    Foursquare_do();
	    Triangle_do();
	    Circle_do();
	}
</script>
</HEAD>
<BODY>
<center> 
<table border="1" cellpadding="130">
<tr>
<td>
<center>
Вычисление площади и периметра геометрических фигур
<h4>Введите значениe стороны:</h4>
 <form name="form2">
     Сторона: <input type="text" size="7" name="st1" 
         style="width: 52px"><br>
     <input type="button" value="Вычислить" onClick="calculate()"><br>
 <div>
 </div>
 <div>
 </div>
 <div>
 </div>
</center> 
</td>
</tr>
</table>
</center>
 </form>
 </BODY>
 </HTML>
Помогите мне сделать, чтобы функции function Foursquare_do(), function Triangle_do() и function Circle_do(), которые выводят всё на экран сделать в классе Figure, так чтобы эти почти одинаковые функции объединить в одну.
bestnicer вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Упрощение кода. Паскаль. ArsGo Помощь студентам 4 21.09.2011 03:10
Упрощение кода программы Alex TGM Общие вопросы C/C++ 7 30.06.2010 22:40
Упрощение кода R@Ziel Помощь студентам 0 26.12.2009 20:27
Упрощение дроби k1r1ch Общие вопросы Delphi 2 10.10.2009 16:16
Упрощение кода программы за счет использования процедур uraura Общие вопросы Delphi 10 26.03.2009 21:54