Ver código fonte

Певрое ДЗ по JS

oleg 6 anos atrás
pai
commit
8ea978a656
2 arquivos alterados com 262 adições e 0 exclusões
  1. 12 0
      JS_23.02.2018/index.html
  2. 250 0
      JS_23.02.2018/script.js

+ 12 - 0
JS_23.02.2018/index.html

@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+	<meta charset="UTF-8">
+	<title>Java Script 1</title>
+	<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
+	<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+
+</body>
+</html>

+ 250 - 0
JS_23.02.2018/script.js

@@ -0,0 +1,250 @@
+$(document).ready(function() {
+
+	var arr = [task_1, task_2, task_3, task_4, task_5, task_6, task_7, task_8, task_9, task_10],
+		n = prompt("Здравствуйте! Введите номер задания");
+
+	if (n<1 || n>10 || n%1 || isNaN(n)) {
+		alert("Номер введен неправильно!");
+		return;
+	}
+
+	arr[n-1]();
+
+});
+
+
+
+
+// 1. Создайте три переменные. Присвойте первой переменной числовое значение. 
+// 	Вторая переменная равна первой переменной, увеличенной в три раза.
+// 	Tретья переменная равна сумме двух первых. Распечатайте все три.
+
+
+function task_1() {
+
+	alert("1. Создайте три переменные. Присвойте первой переменной числовое значение.\nВторая переменная равна первой переменной, увеличенной в три раза.\nTретья переменная равна сумме двух первых. Распечатайте все три.");
+
+	var a, 
+		b, 
+		c;
+
+	a = 10;
+	b = a * 3;
+	c = a + b;
+
+	alert("a="+a+" b="+b+" c="+c);
+}
+
+
+
+// 2. Создайте переменные firstName и lastName для хранение имени и фамилии, 
+// 	запишите в них значения из модального окна prompt. 	Выведите на экран приветствие (“What’s up John Doe”), 
+// 	используя конкатенацию и экранирование символов.
+
+function task_2() {
+
+	alert("Создайте переменные firstName и lastName для хранение имени и фамилии,\nзапишите в них значения из модального окна prompt.\nВыведите на экран приветствие (“What’s up John Doe”),используя конкатенацию и экранирование символов.");
+
+	var firstName = prompt("Type your name:"),
+	lastName = prompt("Type your last name:");
+
+	alert("What's up " + firstName + " " + lastName);
+}
+
+
+
+// 3. Создайте переменные x и y для хранения числа. Значения переменные получают из prompt. 
+// 	Рассчитайте произведение, частное, разность и сумму этих значений. 
+// 	Результат последовательно отобразите в модальном окне.
+
+
+function task_3() {
+
+	alert("3. Создайте переменные x и y для хранения числа. Значения переменные получают из prompt. Рассчитайте произведение, частное, разность и сумму этих значений. Результат последовательно отобразите в модальном окне.");
+
+	var x = +prompt("Введите переменную X"),
+		y = +prompt("Введите переменную Y");
+
+	if (isNaN(x) || isNaN(y) || x=="" || y=="") {
+		alert("Неверный ввод");
+		return;
+	}
+
+	alert("X * Y = " + x*y);
+	alert("X / Y = " + x/y);
+	alert("X - Y = " + (x-y));
+	alert("X + Y = " + (x + y));
+}
+
+
+
+// 4. Напишите программу, которая без использования оператора сравнения определяет, 
+// 	является ли число, введенное пользователем, нечётным. Результат отобразите в alert.
+
+function task_4() {
+
+	alert("4. Напишите программу, которая без использования оператора сравнения определяет, является ли число, введенное пользователем, нечётным. Результат отобразите в alert.");
+
+	var a = prompt("Type a number");
+
+	if (a == 0) {
+
+		alert("Your number is 0");
+
+	} else if (a%2) {
+
+		alert("Your namber is odd");
+
+	} else
+
+		alert("Your number is even");
+}
+
+
+
+// 5.Напишите программу, которая проверяет, является ли значение, введенное пользователем, числом.
+
+function task_5() {
+
+	alert("5.Напишите программу, которая проверяет, является ли значение, введенное пользователем, числом.");
+
+	var a = prompt("Type something");
+
+	if (isNaN(a) || a == "") {
+		
+		alert("It's not a number");
+	} else
+
+		alert("It's a number");
+}
+
+
+
+// 6. Напишите калькулятор для конвертации единиц измерения количества информации (байт, килобайт, мегабайт, гигабайт). 
+// Значения считаются из prompt, результаты отображаются в alert. 
+
+function task_6() {
+
+	alert("6. Напишите калькулятор для конвертации единиц измерения количества информации (байт, килобайт, мегабайт, гигабайт). Значения считаются из prompt, результаты отображаются в alert. ");
+
+	var str = prompt("Введите кол-во данных в формате \"10 mb gb\" (Т.е. 10 mb будут переведены в gb)\nДоступные единицы измерения: b, kb, mb, gb"),
+		number,
+		arr = ["b", "kb", "mb", "gb"],
+		arr2 = [ 
+				[1, 1024, Math.pow(1024, 2), Math.pow(1024, 3)],
+				[1/1024, 1, 1024, Math.pow(1024, 2)],
+				[1/(Math.pow(1024, 2)), 1/1024, 1, 1024],
+				[1/(Math.pow(1024, 3)), 1/(Math.pow(1024, 2)), 1/1024, 1]	 
+				],
+		k,
+		n,
+		result;
+
+	number = parseInt(str);  
+	var arr3 = str.split(" ");  // Разделяем введенную строку по пробелу и получаем массив из 3-х значений.
+
+	for (var i = 0; i < arr.length; i++) {
+		if (arr[i] == arr3[1]) {
+			k = i;
+			break;
+		}
+		
+	}
+	
+
+	for (var i = 0; i < arr.length; i++) {
+		if (arr[i] == arr3[2]) {
+			n = i;
+			break;
+		}
+	}
+
+	
+
+	result = number * arr2[n][k];
+
+	alert(number + arr3[1] + " - это " + result + arr3[2]);
+}
+
+
+
+// 7. У Чжуан-цзы было N яблок, Цзэн-Цзы съел несколько, Чжуан-цзы утверждает, что все. 
+// Запишите повествование в переменных и выражениях, читая значения из prompt. 
+// Покажите, правду говорит Чжуан-цзы или ложь. (Не используя оператор сравнения.)
+
+function task_7() {
+
+	alert("7. У Чжуан-цзы было N яблок, Цзэн-Цзы съел несколько, Чжуан-цзы утверждает, что все. Запишите повествование в переменных и выражениях, читая значения из prompt. Покажите, правду говорит Чжуан-цзы или ложь. (Не используя оператор сравнения.)");
+
+	var n = prompt("У Чжуан-цзы было N яблок:", "введите N"),
+	k = prompt("Цзэн-Цзы съел несколько:", "введите, сколько яблок съел Цзэн-Цзы");
+
+	alert("Чжуан-цзы утверждает, что все.");
+
+	if (n-k) {
+
+		alert("Но Чжуан-цзы врет, потому что " + n + ">" + k);
+
+	} else 
+		alert("И он таки прав, потому что " + n + "=" + k);
+}
+
+
+
+// 8. На сайте есть три колонки разной высоты, заданной в единицах измерения веб 
+// 	(значения вводятся в prompt в формате “50px”, “20px”...). Используя функцию из библиотеки Math, 
+// 	найдите наибольшее значение из трех и покажите его. Учтите, что Math.max не работает со строками.
+
+function task_8() {
+
+	alert("8. На сайте есть три колонки разной высоты, заданной в единицах измерения веб (значения вводятся в prompt в формате “50px”, “20px”...). Используя функцию из библиотеки Math, найдите наибольшее значение из трех и покажите его. Учтите, что Math.max не работает со строками.");
+
+	var col_1 = prompt("First column height:", "100px"),
+		col_2 = prompt("Second column height:", "100px"),
+		col_3 = prompt("Third column height:", "100px");
+
+	alert(Math.max(parseInt(col_1), parseInt(col_2), parseInt(col_3)) + "px is the highest column");
+}
+
+
+
+// 9. Запишите в переменную случайное число (Math.random()), умножьте его на 100 и округлите. 
+// 	Получите второе число из окна prompt. Сравните и отобразите в модальном окне: первое число меньше 
+// 	второго или нет, а также оба значения.
+
+function task_9() {
+
+	alert("9. Запишите в переменную случайное число (Math.random()), умножьте его на 100 и округлите. Получите второе число из окна prompt. Сравните и отобразите в модальном окне: первое число меньше второго или нет, а также оба значения.");
+
+	var a = Math.random(),
+	b= prompt("Type the second number");
+
+	a = Math.round(a * 100);
+
+	if (a > b) {
+
+		alert(a + " is higher than " + b + ". a=" + a + ", b=" + b);
+
+	} else if (a < b) {
+
+		alert(a + " is lower than " + b + ". a=" + a + ", b=" + b);
+	}
+}
+
+
+
+// 10. Решение предыдущей задачи запишите в одну строку и отобразите в alert
+
+function task_10() {
+
+	alert("10. Решение предыдущей задачи запишите в одну строку и отобразите в alert");
+
+	var a = Math.round(Math.random() * 100),
+		b = prompt("Type the second number");
+
+	a > b ? alert(a + " is higher than " + b + ". a=" + a + ", b=" + b) : alert(a + " is lower than " + b + ". a=" + a + ", b=" + b);
+
+}
+
+
+