script.js 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. /* 1.Нарисуйте блок-схему, иллюстрирующую алгоритм приготовления чашечки чая.*/
  2. /* Алгоритм изображен на странице */
  3. /* 2. Сформируйте строку вида ".#.#.#.#.#." чередованием символов . и # с помощью цикла for.*/
  4. var l, w, k;
  5. l='';
  6. for (var i = 0; i < 10; i++) {
  7. if (i % 2===0){
  8. w='.';
  9. l+=w;
  10. }else if(i % 2===1) {
  11. k='#';
  12. l+=k;
  13. }
  14. }
  15. console.log (l);
  16. /* 3. Напишите цикл с шагом 1, в теле которого распечатываются квадраты каждого четного значения счетчика.*/
  17. for (var i = 0; i < 10; i++) {
  18. if (i % 2===0){
  19. console.log (Math.pow(i,2));
  20. }
  21. }
  22. /* 4. Напишите цикл с confirm, который продолжается при нажатии на Отмена и прерывается при нажатии на Ok. */
  23. while (!(confirm("Hello")));
  24. /* 5. В окно prompt вводится число. Напишите цикл, в котором суммируются все нечетные числа до диапазона, введенного пользователем. Результат отобразите в окне alert.*/
  25. var n = prompt ('Input n', 10);
  26. var sum = 0;
  27. for (var i = 0; i < n; i++) {
  28. if ((i%2)){
  29. sum=sum+i;
  30. }
  31. }
  32. alert ('Сумма нечетных чисел в цикле '+ sum);
  33. /* 6. Напишите бесконечный цикл, который прерывается при помощи команды break, когда Math.random() > 0.9. Выведите в окно alert случайное число, прервавшее цикл, и количество итераций цикла.*/
  34. label: for (var j = 0; ; j++) {
  35. if ((x=Math.random()) > 0.9) break label;
  36. }
  37. alert('Случайное число '+x+', итерация '+j);
  38. /* 7. Используя вложенные циклы, распечатайте на странице значения таблицы умножения: 1х1=1, 1x2=2 ... 2x1=2, 2x2=4... */
  39. for (var i = 1; i < 11; i++) {
  40. var l = '';
  41. for (var j = 1; j < 11; j++) {
  42. l += i+'x'+j+'='+(i*j)+' ';
  43. }
  44. console.log (l);
  45. }
  46. /* 8. Используя вложенные циклы, сформируйте строку чередованием символов . и # таким образом, чтобы получилась шахматный узор. Для перевода строки используйте символ \n. Код должен поддерживать легкое изменение размеров доски.
  47. .#.#.#.#.#.#
  48. #.#.#.#.#.#.
  49. .#.#.#.#.#.#
  50. #.#.#.#.#.#.
  51. .#.#.#.#.#.# */
  52. var n = prompt ('Число строк', 6);
  53. var m = prompt ('Число столбцов', 12);
  54. for (var i =0; i < n; i++) {
  55. var l='';
  56. if (i % 2===0) {
  57. var w='.';
  58. var k='#';
  59. }
  60. else if(i % 2===1) {
  61. var w='#';
  62. var k='.';
  63. }
  64. for (var j = 0; j < m; j++) {
  65. if (j % 2===0){
  66. l+=w;
  67. } else if(j % 2===1) {
  68. l+=k;
  69. }
  70. }
  71. console.log (l);
  72. }
  73. /* 9. С помощью цикла for с пустым телом сформируйте строку, представляющую из себя ряд Фибоначчи: 0 1 1 2 3 5 8 13... */
  74. var a = 0;
  75. var b = 1;
  76. var l = '';
  77. for (i=0; c=a+b, i < 20; a = b, b = c, i++) l+=c+' ';
  78. console.log ('0 '+'1 '+l);
  79. /*10. Запустите цикл, в котором пользователю предлагается вводить число с клавиатуры, до тех пор, пока не будет нажата Отмена. После выхода из цикла распечатайте количество введенных чисел, их общую сумму и среднее арифметическое.*/
  80. var i = 0;
  81. var sum = 0;
  82. var a;
  83. while (a = prompt ("Введите чило",8)) {
  84. sum = Number(sum) + Number(a);
  85. i++;
  86. }
  87. var med = sum/i;
  88. alert ('Количество итераций - ' + i + ', сумма введенных чисел - ' + sum + ', среднее арифметическое - ' + med);
  89. /* 11. Сделать елочку */
  90. var i = 1, j = 1;
  91. var max = 26; /*Строчная высота елки*/
  92. while (i < max) {
  93. var w = '.';
  94. var k = '*';
  95. var l = '.';
  96. for (j = 1; j < max - i; j++) w += ".";
  97. for (j = 1; j < 2 * i - 1; j++) k += "*";
  98. for (j = max+i-1; j < 2*max-2; j++) l += ".";
  99. console.log(w+k+l);
  100. i++;
  101. }