Предмет: Информатика, автор: Malry13

Python. Cтрока вводится с клавиатуры. Подсчитать количество содержащихся в ней латинских букв. Вывести это число на экран.
Подсказка: Попробуйте сравнивать символы по кодам ASCII (Например, если символ больше A и меньше Z).


gukaroslav104: А есть какая-нибудь теория по кодам ascii?
gukaroslav104: сейчас посмотрел, 3 пайтон работает исключительно в юникоде
Malry13: Помогите, что-то с этим сделать, иначе я никогда не решу :D
gukaroslav104: Я не хочу писать код, так что напишу так: делим введённую строку по символу "" (т.е. без пробела) - .split(""), получаем каждый элемент строки в списке. Для каждого элемента списка узнаем его код unicode при помощи команды ord()
gukaroslav104: проверяем полученный код с каждым кодом латинской буквы. Если подходит, то к условному счётчику прибавляем 1
gukaroslav104: в конце выводим через print счётчик

Ответы

Автор ответа: MrSolution
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);

Похожие вопросы
Предмет: Русский язык, автор: Саид111111111111г