Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-10-2015
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 12
aguml Va por buen camino
¿cin en modo binario?

Bueno pues sigo trasteando con el tema del cifrado y ahora estoy con el cifrado Cesar y tengo esto:
Código PHP:
//---------------------------------------------------------------------------

#include <iostream>

using namespace std;

string CesarEncript(string entradaint desplazamiento);
string CesarDecript(string entradaint desplazamiento);
//---------------------------------------------------------------------------

int main(int argccharargv[])
{
   
char aux[1024];
   
string desencriptado;
   
string encriptado;

   
cout << "Introduce el texto a encriptar: ";
   
cin.getline(aux,1023,'\n');
   
desencriptado=aux;

   if((
encriptado=CesarEncript(desencriptado,5)) != ""){
      
cout << encriptado << endl;
      
desencriptado="";
      if((
desencriptado =CesarDecript(encriptado,5)) != ""){
         
cout << desencriptado << endl;
      }else{
         
cout << "Caracteres no validos en el texto a desencriptar" << endl;
      }
   }else{
         
cout << "Caracteres no validos en el texto a encriptar" << endl;
   }
   
cin.get();
   return 
0;
}
//---------------------------------------------------------------------------

string CesarEncript(string textoint desplazamiento)
{
   
int i,posInicial,posFinal;
   
string Letras="ABCDEFGHIJKLMNÑOPQRSTUVWXYZabcdefghijklmnñopqrstuvwxyz1234567890ÁÉÍÓÚáéíóúÜü \".,:;-+*/=\\_<>¡!¿?|@#$%&()[]{}\'^ºª";
   
string final;

   for(
i=0;i<texto.length();i++){
      
posInicial Letras.find(texto.at(i));
      if(
posInicial 0){
         final=
"";
         break;
      }
      
posFinal = (Letras.length() + posInicial desplazamiento) % Letras.length();
      final.
append(LetrasposFinal1);
   }
   return final;
}

string CesarDecript(string textoint desplazamiento)
{
   
int i,posInicial,posFinal;
   
string Letras="ABCDEFGHIJKLMNÑOPQRSTUVWXYZabcdefghijklmnñopqrstuvwxyz1234567890ÁÉÍÓÚáéíóúÜü \".,:;-+*/=\\_<>¡!¿?|@#$%&()[]{}\'^ºª";
   
string final;

   for(
i=0;i<texto.length();i++){
      
posInicial Letras.find(texto.at(i));
      if(
posInicial 0){
         final=
"";
         break;
      }
      
posFinal = (Letras.length() + posInicial desplazamiento) % Letras.length();
      final.
append(LetrasposFinal1);
   }
   return final;

El problema que tengo es que hay caracteres que al usar find no los encuentra y creo que es porque al hacer cin.getline lee texto y no lee en binario. ¿por que creo esto? porque cuando estuve trasteando con el vigenese vi que al abrir el archivo en modo texto fallaba pero al abrirlo en modo binario funcionaba bien. ¿hay alguna manera de hacer que cin me lea el texto en binario? creo que con eso se solucionaria y he estado buscando info y lei que con cin.read se puede pero no encuentro ningun ejemplo que me permita leer del buffer de entrada con read. ¿podeis ayudarme?
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Binario a Texto gusspagano Varios 10 05-06-2013 21:19:37
decimal a binario luisito2011 C++ Builder 2 05-12-2011 04:43:08
Leer Binario con php marcos.ramos PHP 5 22-11-2010 22:20:38
Binario en string 3NK1 Varios 4 16-04-2009 01:10:31
Modo diseño y modo ejecución buildero_d OOP 3 11-09-2005 06:45:00


La franja horaria es GMT +2. Ahora son las 21:55:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi