<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	Comentários sobre: Implementando Cifra de César em Python &#8211; Criptografia	</title>
	<atom:link href="https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/</link>
	<description>Artigos e Tutoriais sobre Desenvolvimento de Software, Bancos de Dados SQL, Linux, Lógica de Programação, Inteligência Artificial, Hardware, Eletrônica, Arduino, Técnicas e Teorias de Estudo e Aprendizagem, Carreira em TI, Ciências Cognitivas, e muito mais!</description>
	<lastBuildDate>Thu, 21 Dec 2023 17:50:20 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.6</generator>
	<item>
		<title>
		Por: Willian Delmiro		</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-50254</link>

		<dc:creator><![CDATA[Willian Delmiro]]></dc:creator>
		<pubDate>Wed, 29 Nov 2023 01:35:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=8777#comment-50254</guid>

					<description><![CDATA[Em resposta a &lt;a href=&quot;https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-35671&quot;&gt;Kokatrix&lt;/a&gt;.

o seu tbm tem varias falhas, como identação por exemplo
e eu executei o seu codigo e ainda assim ele não funciona corretamente]]></description>
			<content:encoded><![CDATA[<p>Em resposta a <a href="https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-35671">Kokatrix</a>.</p>
<p>o seu tbm tem varias falhas, como identação por exemplo<br />
e eu executei o seu codigo e ainda assim ele não funciona corretamente</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Kokatrix		</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-35671</link>

		<dc:creator><![CDATA[Kokatrix]]></dc:creator>
		<pubDate>Thu, 03 Sep 2020 23:43:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=8777#comment-35671</guid>

					<description><![CDATA[def cifraDeCesar(chave,arq):
    &#039;&#039;&#039;
    Codifica um texto segunda as regras da Cifra de Cesar
    :param chave: Chave básica para a códificação
    :param arq: Arquivo que será codificado
    :return: texto codificado
    &#039;&#039;&#039;

    #codificação das eltras minúsculas
    alfaLow = &#039;abcdefghijklmnopqrstuvxwyz&#039;
    quebraLow = alfaLow.partition(alfaLow[:chave])
    tradLow = quebraLow[2]+quebraLow[1]

    #codificação das eltras maiúsculas
    alfaUp = &#039;ABCDEFGHIJKLMNOPQRSTUVXZ&#039;
    quebraUp = alfaUp.partition(alfaUp[:chave])
    tradUp = quebraUp[2]+quebraUp[1]

    trad = str.maketrans(alfaLow+alfaUp,tradLow+tradUp)

    arquivo = open(arq,&#039;r&#039;)
    return arquivo.read().translate(trad)
    arquivo.close()

print(cifraDeCesar(3,&#039;clear.txt&#039;))]]></description>
			<content:encoded><![CDATA[<p>def cifraDeCesar(chave,arq):<br />
    &#8221;&#8217;<br />
    Codifica um texto segunda as regras da Cifra de Cesar<br />
    :param chave: Chave básica para a códificação<br />
    :param arq: Arquivo que será codificado<br />
    :return: texto codificado<br />
    &#8221;&#8217;</p>
<p>    #codificação das eltras minúsculas<br />
    alfaLow = &#8216;abcdefghijklmnopqrstuvxwyz&#8217;<br />
    quebraLow = alfaLow.partition(alfaLow[:chave])<br />
    tradLow = quebraLow[2]+quebraLow[1]</p>
<p>    #codificação das eltras maiúsculas<br />
    alfaUp = &#8216;ABCDEFGHIJKLMNOPQRSTUVXZ&#8217;<br />
    quebraUp = alfaUp.partition(alfaUp[:chave])<br />
    tradUp = quebraUp[2]+quebraUp[1]</p>
<p>    trad = str.maketrans(alfaLow+alfaUp,tradLow+tradUp)</p>
<p>    arquivo = open(arq,&#8217;r&#8217;)<br />
    return arquivo.read().translate(trad)<br />
    arquivo.close()</p>
<p>print(cifraDeCesar(3,&#8217;clear.txt&#8217;))</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Vitor		</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-25449</link>

		<dc:creator><![CDATA[Vitor]]></dc:creator>
		<pubDate>Sat, 28 Apr 2018 17:06:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=8777#comment-25449</guid>

					<description><![CDATA[Em resposta a &lt;a href=&quot;https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-24079&quot;&gt;Fábio dos Reis&lt;/a&gt;.

Na verdade está tudo errado mesmo e o código não funciona, há falhas na identação e o algoritmo acaba não funcionando, dê uma revisada nisso, precisa colocar a linha:
convertido = convertido + CARACTERES[num] 
Apenas uma vez no final do primeiro IF do FOR.

O código corrigido:

# Cifra de César em Python
# Adaptado do livro &quot;Hacking Secret Ciphers with Python&quot;, de Al Sweigart
# Licença Creative Commons Attribution-Noncommercial-Share Alike 3.0

# Solicitando o texto a ser encriptado ou decriptado:
texto = input(&#039;Digite a mensagem a ser encriptada ou decifrada: &#039;)
# Chave a ser utilizada
chave = int(input(&#039;Entre com o valor da chave (deslocamento): &#039;))
# Determinar modo de operação (E = encriptar; D = decriptar)
modo = input(&#039;Escolha E para encriptar ou D para decriptar o texto: &#039;)
# Conjunto de caracteres válidos no algoritmo
CARACTERES = &#039;ABCDEFGHIJKLMNOPQRSTUVWXYZ&#039;
# Variável para armazenar o texto criptografado (ou decifrado)
convertido = &#039;&#039;
# Converter todo o texto em maiúsculas:
texto = texto.upper()
# Código que será executdo em cada caractere do texto:
for caractere in texto:
    if caractere in CARACTERES:
        # Obter o número criptografado ou decriptado do caractere
        num = CARACTERES.find(caractere)
        # Obter o número do caractere
        if modo == &#039;E&#039;:
            num = num + chave
        elif modo == &#039;D&#039;:
            num = num - chave
            # Manipulando a rotação se o valor de num for maior do que o comprimento de CARACTERES ou menor que 0
        if num &#062;= len(CARACTERES):
            num = num - len(CARACTERES)
        elif num &#060; 0:
            num = num + len(CARACTERES)
        # Adicionar (concatenar) o caractere correspondente a num na variável convertido
        convertido = convertido + CARACTERES[num]
    else:
        convertido = convertido + caractere
# Mostrar o texto encriptado ou decifrado na tela:
if modo == &#039;E&#039;:
    print(&#039;O texto criptografado é &#039;, convertido)
if modo == &#039;D&#039;:
    print(&#039;O texto decriptado é &#039;, convertido)]]></description>
			<content:encoded><![CDATA[<p>Em resposta a <a href="https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-24079">Fábio dos Reis</a>.</p>
<p>Na verdade está tudo errado mesmo e o código não funciona, há falhas na identação e o algoritmo acaba não funcionando, dê uma revisada nisso, precisa colocar a linha:<br />
convertido = convertido + CARACTERES[num]<br />
Apenas uma vez no final do primeiro IF do FOR.</p>
<p>O código corrigido:</p>
<p># Cifra de César em Python<br />
# Adaptado do livro &#8220;Hacking Secret Ciphers with Python&#8221;, de Al Sweigart<br />
# Licença Creative Commons Attribution-Noncommercial-Share Alike 3.0</p>
<p># Solicitando o texto a ser encriptado ou decriptado:<br />
texto = input(&#8216;Digite a mensagem a ser encriptada ou decifrada: &#8216;)<br />
# Chave a ser utilizada<br />
chave = int(input(&#8216;Entre com o valor da chave (deslocamento): &#8216;))<br />
# Determinar modo de operação (E = encriptar; D = decriptar)<br />
modo = input(&#8216;Escolha E para encriptar ou D para decriptar o texto: &#8216;)<br />
# Conjunto de caracteres válidos no algoritmo<br />
CARACTERES = &#8216;ABCDEFGHIJKLMNOPQRSTUVWXYZ&#8217;<br />
# Variável para armazenar o texto criptografado (ou decifrado)<br />
convertido = &#8221;<br />
# Converter todo o texto em maiúsculas:<br />
texto = texto.upper()<br />
# Código que será executdo em cada caractere do texto:<br />
for caractere in texto:<br />
    if caractere in CARACTERES:<br />
        # Obter o número criptografado ou decriptado do caractere<br />
        num = CARACTERES.find(caractere)<br />
        # Obter o número do caractere<br />
        if modo == &#8216;E&#8217;:<br />
            num = num + chave<br />
        elif modo == &#8216;D&#8217;:<br />
            num = num &#8211; chave<br />
            # Manipulando a rotação se o valor de num for maior do que o comprimento de CARACTERES ou menor que 0<br />
        if num &gt;= len(CARACTERES):<br />
            num = num &#8211; len(CARACTERES)<br />
        elif num &lt; 0:<br />
            num = num + len(CARACTERES)<br />
        # Adicionar (concatenar) o caractere correspondente a num na variável convertido<br />
        convertido = convertido + CARACTERES[num]<br />
    else:<br />
        convertido = convertido + caractere<br />
# Mostrar o texto encriptado ou decifrado na tela:<br />
if modo == &#039;E&#039;:<br />
    print(&#039;O texto criptografado é &#039;, convertido)<br />
if modo == &#039;D&#039;:<br />
    print(&#039;O texto decriptado é &#039;, convertido)</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: Fábio dos Reis		</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-24079</link>

		<dc:creator><![CDATA[Fábio dos Reis]]></dc:creator>
		<pubDate>Mon, 27 Nov 2017 11:37:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=8777#comment-24079</guid>

					<description><![CDATA[Em resposta a &lt;a href=&quot;https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-22572&quot;&gt;anonimo&lt;/a&gt;.

Amigo, dê uma revisada em seu código, aqui está funcionando normalmente.
Temo como você postar o código que você usou aqui?]]></description>
			<content:encoded><![CDATA[<p>Em resposta a <a href="https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-22572">anonimo</a>.</p>
<p>Amigo, dê uma revisada em seu código, aqui está funcionando normalmente.<br />
Temo como você postar o código que você usou aqui?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Por: anonimo		</title>
		<link>https://www.bosontreinamentos.com.br/programacao-em-python/implementando-cifra-de-cesar-em-python-criptografia/#comment-22572</link>

		<dc:creator><![CDATA[anonimo]]></dc:creator>
		<pubDate>Thu, 17 Aug 2017 15:49:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.bosontreinamentos.com.br/?p=8777#comment-22572</guid>

					<description><![CDATA[Nao funciona, só muda uma letra ou duas, e depois nao decripta.]]></description>
			<content:encoded><![CDATA[<p>Nao funciona, só muda uma letra ou duas, e depois nao decripta.</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
