Предмет: Информатика,
автор: Malry13
Python. Cтрока вводится с клавиатуры. Подсчитать количество содержащихся в ней латинских букв. Вывести это число на экран.
Подсказка: Попробуйте сравнивать символы по кодам ASCII (Например, если символ больше A и меньше Z).
gukaroslav104:
А есть какая-нибудь теория по кодам ascii?
сейчас посмотрел, 3 пайтон работает исключительно в юникоде
Помогите, что-то с этим сделать, иначе я никогда не решу :D
Я не хочу писать код, так что напишу так: делим введённую строку по символу "" (т.е. без пробела) - .split(""), получаем каждый элемент строки в списке. Для каждого элемента списка узнаем его код unicode при помощи команды ord()
проверяем полученный код с каждым кодом латинской буквы. Если подходит, то к условному счётчику прибавляем 1
в конце выводим через print счётчик
Ответы
Автор ответа:
2
Ответ:
(см. объяснение)
Объяснение:
Напишем программу на Python 3:
k = 0
for i in input():
if (ord(i) in range(65, 91)) or (ord(i) in range(97, 123)):
k += 1
print(k)
Задание выполнено!
Комментарий 1:
Замечу, что то же самое легко сделать на паскале:
##
var k: integer := 0;
foreach var c: char in ReadString do
if((ord(c) in [65..90]) or (ord(c) in [97..122]))
then k:= k+1;
print(k);
Комментарий 2:
Задачу можно было решить несколько иначе:
k = 0
for i in input():
if ('a' <= i <= 'z') or ('A' <= i <= 'Z'):
k += 1
print(k)
Комментарий 3:
Решение из комментария 2 тоже несложно написать на паскале:
##
var k: integer := 0;
foreach var c: char in ReadString do
if((c in ['a'..'z']) or (c in ['A'..'Z']))
then k:= k+1;
print(k);
Похожие вопросы
Предмет: Английский язык,
автор: lena0312
Предмет: Английский язык,
автор: Danyamasters
Предмет: Английский язык,
автор: kricty1
Предмет: Русский язык,
автор: Саид111111111111г
Предмет: Право,
автор: pinkunicorn386