У меня возникла проблема с запуском программы шифрования. Для строк с одним словом он работает хорошо (например, abcd), но когда я печатаю два или три или более слова (например, abcd ab ac), он не запрашивает ключ, но переписывает введенное предложение , Что я делаю не так? Заранее спасибо. Код:Цезарный шифр - Что случилось?
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <conio.h>
#include <string>
#include <stdlib.h>
#include <stdio.h>
int main()
{
int key, l;
char choose;
string message;
cout<<"Type the message"<<endl;
cin>>message;
cout<<"Give me a key from 0 to 26"<<endl;
cin>>key;
for (int i=0,l=message.size(); i<=l; i++)
{
if (isalpha(message[i]))
{
if (isupper(message[i]))
{
cout<<(char)('A'+(message[i]-'A'+key)%26);
}
if (islower(message[i]))
{
cout<<(char)('a'+(message[i]-'a'+key)%26);
}
}
else
{
cout<<message[i];
}
}
return 0;
}
Это было бы намного легче ответить, если бы мы могли видеть, какой код вы написали. В противном случае это конкурс того, кто может догадываться и/или читать ваш ум. – CoryKramer
Извините, я пропустил об этом. Я отредактировал его. – DominikM
Если я запустил его и ввел несколько слов, он не повторяет предложение, которое я набрал; он запрашивает ключ, затем печатает первое введенное мной слово. Вы уверены, что используете эту программу? – molbdnilo