Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.05.2012, 21:10
Новичок на форуме
Отправить личное сообщение для franzee Посмотреть профиль Найти все сообщения от franzee
 
Регистрация: 08.05.2012
Сообщений: 7

Решаем задачи в javascript
Такие дела, надо в кратчайшие сроки решать несколько задач, буду писать сюда решение, надеюсь на вашу помощь.

Задача 1.

Используя оператор while, на страницу сгенерировать таблицу из нескольких строк по четыре ячейки в строке. Содержимое каждой первой ячейки строки - число, вводимое с клавиатуры; содержимое остальных ячеек соответствует их номеру в строке. Генерацию строк таблицы продолжить до тех пор, пока произведение введенных чисел не достигнет 1000.

Здесть не могу додумать последний пункт: Генерацию строк таблицы продолжить до тех пор, пока произведение введенных чисел не достигнет 1000.


<script type="text/javascript">

		var num, num1=0, sum, row=0;

		document.write("ПРИВЕТ <br>");

		document.write('<table border="1">');

		do {
			document.write('<tr>');
				for ( cell = 0;  cell < 4; cell++ ){

					if (cell == 0){

					num = window.prompt('Введите первый элемент '+row+' строки');
					num = Number(num);
					num1 = sum;
					if (row == 0) {num1 = num1 + num;}
					if (row > 0) {sum=num*num1}
						document.write('<td>'+ num +'</td>');
					}
					else{
						document.write('<td>'+ cell +'</td>');
					}
					
				}
			document.write('</tr>');

			row = row + 1;

		} while (sum < 1000);

		document.write('</table>');

		document.write('Пока');

		</script>
Ответить с цитированием
  #2 (permalink)  
Старый 08.05.2012, 21:50
Новичок на форуме
Отправить личное сообщение для franzee Посмотреть профиль Найти все сообщения от franzee
 
Регистрация: 08.05.2012
Сообщений: 7

А вот проде бы разобрался, посмотрите пожалуйста, может можно реализовать лучше?

<script type="text/javascript">

		var num, num1=0, sum=0, row=0;

		document.write("ПРИВЕТ <br>");

		document.write('<table border="1">');

		do {
			document.write('<tr>');
				for ( cell = 0;  cell < 4; cell++ ){

					if (cell == 0){ // если первый элемент строки записываем туда пользовательское значение

					num = window.prompt('Введите первый элемент '+row+' строки');
					num = Number(num);
					//num1 = sum; // запоминаем предыдущее произведение чисел
					//if (row == 0) {num1 = num1 + num;} // если цикл работает впервый раз, запоминаем число введеное впервый раз
					//if (row > 0) {sum=num*num1} // 


					if (row == 0) {num1 = num;} // если первая строка, запоминаем значение
					if (row != 0) // если строка не первая, т.е. все последующие, начинаем обрабатывать 
					{
						sum = num*num1; // сумма произведения чисел в первых строках
						num1 = sum; // запоминаем сумму произвед
					}



						document.write('<td>'+ num +'</td>');
					}
					else{ // если не первый элемент, то записываем туда их номера в порядке следования
						document.write('<td>'+ cell +'</td>');
					}
					
				}
			document.write('</tr>');

			
			

			row = row + 1;

		} while (row > 0 && sum < 1000);

		document.write('</table>');

		document.write('Пока');

		</script>
Ответить с цитированием
  #3 (permalink)  
Старый 09.05.2012, 00:55
Новичок на форуме
Отправить личное сообщение для franzee Посмотреть профиль Найти все сообщения от franzee
 
Регистрация: 08.05.2012
Сообщений: 7

Задача 2.

Ввести с клавиатуры три целых числа. При помощи оператора switch реализовать меню, которое позволит выполнять по выбору пользователя одну из следующих альтернатив: 1) определить и вывести наименьшее их них 2) определить и вывести два меньших их них 3) вычислить среднее арифметическое. Предусмотреть возможность выхода из программы без выполнения указанныз действий.

Вот написал код только немогу понять почему картинка не уменьшается?

<script type="text/javascript">

		document.write("ПЗ-2 Вар. 11. А)<br>");

		var a, g, h, i, x=800, y=600;

		document.write('<img height="'+ y +'" width="'+ x +'" src="img/Nature_Beach_Beach_005125_.jpg"><br>');

			g = window.prompt('Введите g элемент');
			g = Number(g);

			h = window.prompt('Введите h элемент');
			h = Number(h);

			i = window.prompt('Введите i элемент');
			i = Number(i);

			if (i < g*2 || h != 0) { g = g-1; x = x/2; y = y/2; }
			else { document.write ('<br><h3>Переменной g не повезло!</h3>'); }

			document.write ('<br>переменная g равна: '+g);


		</script>

Последний раз редактировалось franzee, 09.05.2012 в 01:37.
Ответить с цитированием
  #4 (permalink)  
Старый 09.05.2012, 01:36
Новичок на форуме
Отправить личное сообщение для franzee Посмотреть профиль Найти все сообщения от franzee
 
Регистрация: 08.05.2012
Сообщений: 7

--
Ответить с цитированием
  #5 (permalink)  
Старый 09.05.2012, 05:15
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

franzee,
И что, вы таки думаете, что будем сидеть и заместо вас(нерадивого студента) решать ваши задачи, чтобы вы могли получить диплом по вашей специальности, не уча и не обладая необходимыми знаниями?

Представьте что врач который будет лечить вас, или ваших родителей, учится по такому же принципу.
По принципу "я нихуя не шарю. спишу у друга, и получу диплом".
А потом с этими знаниями идет лечить людей.
Хотите у него лечится?

Конечно, профессия программиста(особенно в области веб) с меньшей вероятностью калечит здоровье и жизни людей, и к тому же в отличии от хирурга во время операции на сердце, программист может пойти почитать справочник.

Да, программистом можно быть и не зная всего на 100%(в этой динамичной области это вообще трудно, если не сказать что невозможо), но надо как минимум знать азы, уметь анализировать(в частности думать как думает компьютер, выполняя вашу программу), и уметь находить ту информацию, которую вы еще не знаете, и использовать ее, и усваивать.

Тем кто неспособен на эти действия - не место в этой профессии.
Ответить с цитированием
  #6 (permalink)  
Старый 09.05.2012, 06:51
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Gvozd
По принципу "я нихуя не шарю. спишу у друга, и получу диплом".
да у нас так половина потока учится (я отношусь к другой половине, "тут схалявил, тут сделал" - учёба по пути меньшего сопротивления)
Ответить с цитированием
  #7 (permalink)  
Старый 09.05.2012, 10:30
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Сообщение от melky
я отношусь к другой половине, "тут схалявил, тут сделал" - учёба по пути меньшего сопротивления
вы считаете это особым поводом для гордости?
В любом случае изучение основ программирования - не то место, где нужно халявить, учась программированию
Ответить с цитированием
  #8 (permalink)  
Старый 09.05.2012, 10:43
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Gvozd
профессия программиста(особенно в области веб) с меньшей вероятностью калечит здоровье и жизни людей
Не знаю, моё здоровье калечит.
Ответить с цитированием
  #9 (permalink)  
Старый 09.05.2012, 15:46
Аватар для Dim@
Профессор
Отправить личное сообщение для Dim@ Посмотреть профиль Найти все сообщения от Dim@
 
Регистрация: 21.04.2012
Сообщений: 951

не хочу присоединяться к мнению остальных(ведь челевек только помощи просит)
var num, sum=1, row=0;//инициализируем переменные, переменная sum изначально должна являться числом
document.write("ПРИВЕТ <br>");
document.write('<table border="1">');
do {
document.write('<tr>');
for ( cell = 0;  cell < 4; cell++ ){
if (cell == 0){
num = window.prompt('Введите первый элемент '+row+' строки');
num = Number(num);
document.write('<td>'+ num +'</td>'); 
  sum *= num   //sum изменяется каждый раз после ввода числа
}
else{
document.write('<td>'+ cell +'</td>');
}
           
}
document.write('</tr>');
row = row + 1;
} while (sum < 1000);
document.write('</table>'); 
document.write('Пока');

вот и все

Последний раз редактировалось Dim@, 09.05.2012 в 19:59.
Ответить с цитированием
  #10 (permalink)  
Старый 09.05.2012, 15:56
Аватар для Dim@
Профессор
Отправить личное сообщение для Dim@ Посмотреть профиль Найти все сообщения от Dim@
 
Регистрация: 21.04.2012
Сообщений: 951

Задача 2.
Да потому что вы написали строку создающюю изображение до изменения x и y
document.write('<img height="'+ y +'" width="'+ x +'" src="img/Nature_Beach_Beach_005125_.jpg"><br>');
это надо написать после промптов и if с else
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи по Java and JavaScript Другое Имя Работа 1 26.10.2011 00:11
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Подходит ли Javascript для решения следующей задачи? alikol Оффтопик 4 24.10.2010 22:40
Подходит ли Javascript для решения следующей задачи? alikol Общие вопросы Javascript 7 24.10.2010 14:10
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34