JavaScript: Проверьте, содержит ли данная строка только латинские буквы, и что в соседних позициях не должно быть двух прописных и двух строчных букв.
JavaScript Basic: упражнение 101 с решением
Напишите программу на 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 программирования