Titlul: problema criptare simpla Scris de: Achirei Emanuel din Martie 06, 2011, 23:04:10 Citat #include <iostream> Programul citeste un text dintr-un fisier text, iar apoi il cripteaza(creste valoarea codului ASCII a literei cu 3).#include <fstream> using namespace std; int main() {char x; fstream f("intrare.txt",ios::in); fstream g("iesire.txt",ios::out); while(!f.eof()) {f>>x; x=x+3; g<<x; } f.close(); g.close(); } In urma criptarii apar urmatoarele disfunctionalitati: 1.programul nu citeste spatiile; 2.programul adauga un caracter(aleatoriu, cred) la sfarsitul materialului criptat. Care ar fi problema? Titlul: Răspuns: problema criptare simpla Scris de: Alex Palcuie din Martie 07, 2011, 00:15:41 Programul tău îți citește spațiile, dar ți le „criptează†împreună cu ultimul caracter care este endline '\n'.
Dacă vrei să nu se întâmple asta, pune condiția asta: Cod: if (x!=' ' && x!='\n') Titlul: Răspuns: problema criptare simpla Scris de: Parfene Narcis din Martie 07, 2011, 10:17:59 Intr-adevar programul nu citeste spatiile.
Operatorul >> nu poate fi utilizat asa pentru a citi un sir cu spatii, deoarece valoarea returnata este de tip intreg, nu un obiect istream. Solutia cea mai simpla este folosirea functiei get() sau getline(). |