mnbcv Napisano Styczeń 3, 2006 Zgłoś Share Napisano Styczeń 3, 2006 Nie wiem czy ktos bedzie w stanie mi tu pomoc... Ale co mi szkodz sprobowac. Mam taki kod w c++. Niestety, pod dodaniu linijki cin >> w; program zaczął się sypać... Tzn teraz po wybraniu opcji 1. Reszta programu wykonywana jest jednym ciągiem. Program nie zatrzymuje się, aby zaczekać aż wpiszę tekst do zaszyfrowania. Nie chcę pomocy z resztą programu... Nie wiem tylko jak ugryźdź, tego cina. Przed dodaniem tej linijki jeszcze wszystko bylo dobrze... Pomocy. To moja praca na zaliczenie przedmiotu na studiach. I juz niedługo musze go oddac do oceny. Z góry dzięki....... Kod:[cpp][/cpp]// zmień temat na bardziej opisowy - Iskar Link do komentarza Udostępnij na innych stronach More sharing options...
Firen Napisano Styczeń 4, 2006 Zgłoś Share Napisano Styczeń 4, 2006 Czlowieku zlituj sie ;pEhh albo dobra wali mnie to i tak ide zaraz spac. [code=C++] #include <iostream> using namespace std; //-- Zadekl[YH[H^KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKŚ6\"6WŚ\"6\"FV7BBśV7śćV2FVśĆ ŃŹą int main(void) { //--Deklaracja zmiennych--------------- KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKCBZMNBśV7sśV736 WBfCfC%7g& 5Ź,p4(ąąp źcesz zrobic?n1. Wpisac tekst do zakodowanian\"; cout << \"2. ]XZZ[XHZ[B] #2w62FV7BFFśFvć#6WBfCfC#B=ŃŃź ąp4(ąą \"Twoj wybor:n> \"; cin >> w; cin.ignoreJNBYOLJCBB] ZZŚ7g&vćFV7BćRŚR'ŚV&72#SgŚćśrŚfwC4(ŃąĄŃ4(ąąpQo zaszyfrowaniu:n> \"; //--Uruchomienie funkcji Cezar, kHXHY[HZY[HZKKKKKCB] C6WŚ\"FV7BśV7fCfC&#vWF6\"4(Ń4)4(4(źź -------------------------------------- char* cezar(char* te[XCBBKT]Z]KHYYHZ]ćFś&w&ćRv7FFF&Ć7w77Fś6ąŃ4(or(int j=0; j<257; j++) { //--Instrukcje wykonywaneH^X]KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKCBKMHFĆ7Ś&&W&WŚVGVŚ6ĆFW&śRF4(ĄŃŃmtŃŃmtą=90) { //--zwiekszenie cyfry reprezentujacej literHZY[ZXKKKKKKKCBKX[H KKKKKKKKKKKŃŃmtĄŃŃmt ą4(źź)ąra bedzie wieksza od 90 - ostatniej litery w-------- //--alXXYK[^HX]KZHYvćR'Ć& amp;vćR24(ĄŃŃmt { tekst[j]=(int)tekst[j]-90+64; CBCBKR[ZHZ][HHX[XĆFW\"ÓrFĆ7Ś&ŃąŃŃź if(tekst[j]>=97 && tekst[j]<=122) & nbsp;BK^YZ[YHYH^[ZXZ]H62ŚVććVśV77Ć 24(Ńst[j]=(int)tekst[j ]+klucz; //--Jezeli zwiekszona cyfra bedzYHYZHLH]YZ]HKKKKKKKCBKX[XXYKFćĆWw&62F7ŚFRF'Ś7f'vćR4(źźąź-------------------- if(tekst[j]>=123) BZOJ[ ]ZKLLMBw&6VćRŚVććVFV7B4)ŃŃ4)4(źź-------------------------------------------------- [/code]Moze to byc nienajlepsze rozwiazanie, sam je przed chwila wymyslilem, ale dziala Down With The Sickness Link do komentarza Udostępnij na innych stronach More sharing options...
proktor Napisano Styczeń 20, 2006 Zgłoś Share Napisano Styczeń 20, 2006 Pascal #include <iostream>#include <string> using namespace std; int main(){ string oryginal, zaszyfrowany, odszyfrowany; const int przesuniecie=3; // wartosc dodawana do znaku (mniejsza od 256) cout <<"Podaj tekst do szyfrowania: "; cin >>oryginal; cin.ignore(); cout <<"Tekst oryginalny: "<<oryginal<<"nn"; //ustalenie rozmiaru tekstu zaszyfrowanego zaszyfrowany.resize(oryginal.size()); for (unsigned int i=0; i<oryginal.size(); ++i) zaszyfrowany[i]= (oryginal[i]+przesuniecie)%256; cout <<"Tekst zaszyfrowany: "<<zaszyfrowany<<"nn"; //ustalenie rozmiaru tekstu odszyfrowanego odszyfrowany.resize(zaszyfrowany.size()); for (unsigned int i=0; i<zaszyfrowany.size(); ++i) odszyfrowany[i]=(zaszyfrowany[i]+256-przesuniecie)%256; cout <<"Tekst odszyfrowany: "<<odszyfrowany<<"nn"; if( oryginal == odszyfrowany) cout <<"Szyfrowanie przebieglo prawidlowonn"; else cout <<"Wystapil NIEZNANY blad podczas szyfrowania!!!nn"; cout <<"Nacisnij ENTER aby zakonczycn"; getchar(); return 0; } źródło: www.it.hl.plNie dało się dać całego linka więc podałem kod :]pzdr Link do komentarza Udostępnij na innych stronach More sharing options...
marek_haj Napisano Styczeń 23, 2006 Zgłoś Share Napisano Styczeń 23, 2006 tak na marginesie ... kod powinien wygladac nastepujaco ... Pascal//---------------------------------------------------------------------------#include <iostream.h>#include <conio.h>#include <string.h> //--------------------------------------------------------------------------- int main(int argc, char* argv[]){ char * tekst = new char [256]; int klucz,w; klucz = 3; std::cout << "Szyfrowanie kodem Cezara - Marek K nn"; std::cout << "Co chcesz zrobic?n1. Wpisac tekst do zakodowanian"; std::cout << "2. Odczytac tekst do zakodowania z plikun"; std::cout << "3. Wpisac tekst do odkodowanian"; std::cout << "4. Odczytac tekst do odkodowania z plikunn"; std::cout << "Twoj wybor:n> "; std::cin >> w; std::cout << "nn"; switch (w) { case 1 : { std::cout << "Podaj tekst do zaszyfrowania (tekst nie moze przekroczyc 256znakow):n> "; std::cin.ignore(1); std::cin.getline(tekst, 256); std::cout << "Tekst po zaszyfrowaniu:n> "; //--Uruchomienie funkcji Cezar, ktora zwraca zaszyfrowana zmienna tekst------ // cout << cezar(tekst, klucz) << "n"; break; } } delete [] tekst; system("pause"); return 0;}nieco czysciej, ladniej i przynajmniej wiadomo jakiego rozmiaru jest zmnienna tekst ... Pozdrawiam Link do komentarza Udostępnij na innych stronach More sharing options...
Kezard Napisano Styczeń 23, 2006 Zgłoś Share Napisano Styczeń 23, 2006 Usuwanie komentarzy opisujących program (pierwsze 4 linie) nie jest najmądrzejszym rozwiązaniem. Otrzymując taki kod mamy trudniejsze zadanie do jego rozszyfrowania i zrozumienia ( np. gdy dostajemy rozbudowany projekt skaładający sie z kilkudziesięciu plików). Link do komentarza Udostępnij na innych stronach More sharing options...
marek_haj Napisano Styczeń 23, 2006 Zgłoś Share Napisano Styczeń 23, 2006 a co to ma do rzeczy ? opisy mozna sobie wstawic ... Link do komentarza Udostępnij na innych stronach More sharing options...
Kezard Napisano Styczeń 23, 2006 Zgłoś Share Napisano Styczeń 23, 2006 [quote] a co to ma do rzeczy ? [/quote]A no to, że przedstawiałeś jak "powinien" wyglądać kod. A mój post to mała korekta. Link do komentarza Udostępnij na innych stronach More sharing options...
marek_haj Napisano Styczeń 23, 2006 Zgłoś Share Napisano Styczeń 23, 2006 napisalem kod a nie program ... malo wazne ... kazdy komentuje to co uwaza za stosowne i wiesz doskonale iz nie ma zadnych ytycznych w tej kwestii. Ten fragment kodu ktory umiescilem nie wymaga zadnych wyjasnien bo nawet poczatkujacy wyczai bez problemu co sie tam dzieje. Przeksztalcenia typu ...PascalB_32 = (((Init32[0] << 6) ^ Init32[0]) >> 13); moga wymagac ineco komentarza choc zwykle sie opisuje co to robi a nie ... [quote] przesuwam bity w leso o tyle i tyle pozycji ... [/quote]to nie wypracowanie z polskiego ...Kod umiescilem, dziala poprawnie wiec sie odcinam od dalszej dyskusji na temat komentarzy. Jest bez sensu. HowghPozdrawiam Link do komentarza Udostępnij na innych stronach More sharing options...
Kezard Napisano Styczeń 23, 2006 Zgłoś Share Napisano Styczeń 23, 2006 Nie wiem czy zauważyłeś ale napisałem : [quote] pierwsze 4 linie [/quote]Wiem, że komentowanie każdej lini mija się z celem bo jak sam zauważyłeś to nie wypracowanie Mimo, że każdy programista ma swój indywidualny styl pisania ja jednak polecam pisanie wstępu który ułatwia analizę innym programistą. Link do komentarza Udostępnij na innych stronach More sharing options...
marek_haj Napisano Styczeń 23, 2006 Zgłoś Share Napisano Styczeń 23, 2006 skusiles mnie jednak ... ja osobiscie wole tak ... styl ala VCL i Borland Pascal//---------------------------------------------------------------------// method: bool THash_EBP::Hash(...)// description: calculates the EBP hash with HashWidth width for levels between LevelStart and LevelEnd// returns: boolean value (true) if successful// last modification: 13.01.2006//--------------------------------------------------------------------- daje cos takiego przed kazda funkcja klasie i jazda ... a w kodzie juz niewiele tekstu, najwyzej jak jakas zamotana sie trafi zebym sam wiedzial co to jest. Mam jeden plus. Mojego kodu nikt poza moim teatem nie oglada wiec sie biedacyjuz przyzwyczaili i wiedza mniej wiecej co jest co ...na zewnatrz wychodzi tylko kod opisany juz przez innych ... mamy ludzi od tworzeni aopis projektow i to juz ich dzielo .. Link do komentarza Udostępnij na innych stronach More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.