#include <iostream>
#include <string>
using namespace std;
string dectobin(int num) // функция для перевода
{
string result; // строка для результата
for (; num!=0; num>>=1) // цикл со сдвигом вправо на 1 бит (работает быстрее чем деление на 2,
//но также делит)
result.insert(0, num&1 ? "1" : "0"); // вставка цифры в начало строки (1 если последний бит 1, 0 если 0)
return result; // возврат результата
}
int main(int argc, char *argv[])
{
// тут думаю понятно, ввод данных и вызов функции
int num;
cout<<"Enter number: ";
cin>>num;
cout<<dectobin(num);
return 0;
}
То есть вы знаете, что такое filter, что такое лямбда-выражения, для чего нужен префикс " * ", но при этом не знаете, как считывать какие либо данные с клавиатуры?)))
Если вам нужно считывать слова по одному, вы можете воспользоваться генератором списков:
words = [input() for _ in range(N)] #где N - произвольная длина вводимого списка
Если вы хотите ввести все слова, которые нужно обработать, разом в одну строку, используйте строковый метод .split(sep) и вводите слова разделяя каким либо уникальным символом (обычно это просто пробел)
words = input().split(' ')
Если у вас есть сомнения по поводу вводимого текста, или в задании обговорено, что вводимый текст может быть хоть статьёй из газеты, используйте модули string и re, что бы удалить из текста всякую шелуху и уже потом с ним работать
import re
import string
rawInput = input()
CleanText = re.sub(r' +', ' ', re.sub(rf'[{string.punctuation}]|\n', '', rawInput)) #Это удалит из введённого текста повторяющиеся пробелы, знаки препинания и символы переноса строки
words = CleanText.split(' ')
Подготовка текста документа к выводу на печать в необходимой для этого форме. Включает в себя форматирование абзацев, отдельных символов, заголовков, сносок, колонцифр и т.д.