[#] Строки
vit01(mira, 1) — All
2015-12-04 04:13:27


В тексте найти слово под определенным номером (например, пятое слово по
счету). Вывести на экран его первую букву.
В программе ниже переменная count используется, чтобы считать слова, а f -
чтобы определять, находимся ли мы внутри очередного слова или началось новое
слово.
Если началось новое слово, то счетчик слов увеличивается, и если счетчик равен
искомому по номеру слову, то цикл завершается.
    s = input()
    l = len(s)
    n = int(input("Номер слова: "))
    count = 0
    f = 0
    i = 0
    while i < l:
    	if s[i] != ' ' and f == 0:
    		count += 1
    		f = 1
    		if count == n: 
    			break
    	elif s[i] == ' ': 
    		f = 0
    	i += 1
    print(s[i])
Пример выполнения кода:
    один два три четы пять шесть    Номер слова: 4
    ч
Однако с помощью Python решение этой задачи может быть существенно короче:
    s = input()
    l = len(s)
    n = int(input("Номер слова: "))
    s = s.split()
    print(s[n][0])
Метод split() без аргумента разбивает строку на слова по пробелу. Выражение
s[n][0] извлекает из списка n-ый элемент, а затем берет из сроки первый
символ.