кодесурса
«JavaScript

JavaScript: Проверьте, содержит ли данная строка только латинские буквы, и что в соседних позициях не должно быть двух прописных и двух строчных букв.

script1adsense2code
script1adsense3code

JavaScript Basic: упражнение 101 с решением

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

Иллюстрированная презентация:

«JavaScript:

Пример решения:

HTML-код:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title> Check whether a given string contains only Latin letters and no two uppercase and no two lowercase letters are in adjacent positions</title>
</head>
<body>
</body>
</html>

Код JavaScript:

function test_string(input_str) {
  var is_lower_case = function(symbol) {
    if ('a' <= symbol && symbol <='z') {
      return true;
    }
    return false;
  }
  var is_upper_case = function(symbol) {
    if ('A' <= symbol && symbol <='Z') {
      return true;
    }
    return false;
  }
  var is_first_char_lower = is_lower_case(input_str[0]),
    is_first_char_upper = is_upper_case(input_str[0]);
  if (!(is_first_char_lower || is_first_char_upper)) {
    return false;
  }
  for (var i = 1; i < input_str.length; i++) {
    if (i % 2) {
      if (is_lower_case(input_str[i]) === is_first_char_lower ||
        is_upper_case(input_str[i]) === is_first_char_upper) {
        return false;
      }
    } else {
      if (is_lower_case(input_str[i]) !== is_first_char_lower ||
        is_upper_case(input_str[i]) !== is_first_char_upper) {
        return false;
      }
    }
  }
  return true;
}
console.log(test_string('xYr'));   
console.log(test_string('XXyx'));   

Пример вывода:

 правда
ложный

Блок - схема:

«Блок-схема:

Версия ES6:

function test_string(input_str) {
  const is_lower_case = symbol => {
    if ('a' <= symbol && symbol <='z') {
      return true;
    }
    return false;
  };
  const is_upper_case = symbol => {
    if ('A' <= symbol && symbol <='Z') {
      return true;
    }
    return false;
  };
  const is_first_char_lower = is_lower_case(input_str[0]);
  const is_first_char_upper = is_upper_case(input_str[0]);
  if (!(is_first_char_lower || is_first_char_upper)) {
    return false;
  }
  for (let i = 1; i < input_str.length; i++) {
    if (i % 2) {
      if (is_lower_case(input_str[i]) === is_first_char_lower ||
        is_upper_case(input_str[i]) === is_first_char_upper) {
        return false;
      }
    } else {
      if (is_lower_case(input_str[i]) !== is_first_char_lower ||
        is_upper_case(input_str[i]) !== is_first_char_upper) {
        return false;
      }
    }
  }
  return true;
}
console.log(test_string('xYr'));   
console.log(test_string('XXyx'));

Демонстрация в реальном времени:

См. Pen javascript-basic-упражнение-101 от w3resource ( @ w3resource ) на CodePen .


Внесите свой код и комментарии через Disqus.

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

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code