• Предмет: Информатика
  • Автор: Nastiaonelove
  • Вопрос задан 8 лет назад

Во многих интернет-сервисах при регистрации нужно указывать желаемое имя пользователя, причём в имени разрешается использовать только латинские буквы, цифры и символ «_». Напишите программу, которая проверяет, подходит ли строка для того, чтобы быть именем пользователя в таком сервисе.

Формат ввода
Вводится одна строка — предполагаемое имя пользователя.

Формат вывода
Выводится одна строка: если введённая строка состоит только из маленьких латинских букв, цифр и символа «_», то выводится «OK» (латиницей); иначе выводится: «Неверный символ: », после чего следует первый не подходящий символ из введённой строки.
Ввод
пользователь
Ожидаемый результат
Неверный символ: п
пробовала вот получилось но ему не нравится:
a = ['_', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', 'п']
s = list(input())
for i in s:
if i != i.upper() or i in a:
pass
else:
print('Неверный символ:', i)
break
else:
print('OK')

Ответы

Ответ дал: thedomidy
0
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4. int main() {
  5. system("chcp 1251");
  6. string str;
  7. bool stringIsAllow = false;
  8. getline(cin, str);
  9. if (str.empty())
  10. {
  11.  return -1;
  12. }
  13. else
  14. {
  15.  for (int i = 0; i < str.length(); i++)
  16.  {
  17.   if ((str[i] >= 65 && str[i] <= 90) ||
  18.    (str[i] >= 97 && str[i] <= 122) ||
  19.    (str[i] >= 48 && str[i] <= 57) ||
  20.    str[i] == 95) {
  21.    stringIsAllow = true;
  22.    continue;
  23.   }
  24.   else
  25.   {
  26.    cout << "Wrong symbol: " << str[i] << endl;
  27.    stringIsAllow = false;
  28.    break;
  29.   }
  30.  }
  31. }
  32. if (stringIsAllow) {
  33.  cout << "OK!" << endl;
  34. }
  35. return 0;
  36. }
Ответ дал: Nastiaonelove
0
мне нужно было на питоне
Ответ дал: Nastiaonelove
0
там в коментах было написано
Ответ дал: csharp
0
thedomidy дал решение раньше, чем Вы написали про питон. Надо было указывать в самом задании.
Вас заинтересует