• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Program rozszyfrowujący kod ASCII

Cloud VPS
0 głosów
1,111 wizyt
pytanie zadane 25 lipca 2018 w C i C++ przez MatZyN Początkujący (350 p.)

Witam !

Mam problem ze zrobieniem pod programu który będz

#include <iostream>

using namespace std;
string sin;
string deszyfr(string dsz)
{

    getline( cin, dsz );

for( int z = 0; z < dsz.length(); z++)
 {
     cout <<( int ) dsz[ z ]<< "  ";}
 return dsz;
}


int main()
{
   deszyfr(sin);
    return 0;
}

ie deszyfrował kod ASCII. Czy można przerobić program który szyfruje na kod ASCII? Jak tak to co muszę przerobić? Wrzucam kod szyfrujący.

Z góry dzięki za pomoc!

1 odpowiedź

0 głosów
odpowiedź 25 lipca 2018 przez chucksqll Stary wyjadacz (12,930 p.)

Tak, można wystarczy, że będziesz rzutować odwrotnie, czyli z int;a na char.

Coś takiego.

    #include <iostream>
    using namespace std;
     
    int main() {
    	int y=97;
    	cout<<(char)y;
    	return 0;
    }

 

komentarz 25 lipca 2018 przez MatZyN Początkujący (350 p.)
edycja 25 lipca 2018 przez MatZyN
#include <iostream>

using namespace std;
string sin;
string deszyfr(string dsz)
{


    int y=97;
    cout<<(char)y;


    getline( cin, dsz );

for( int z = 0; z < dsz.length(); z++)
 {
     cout <<( int ) dsz[ z ]<< "  ";}
 return dsz;
}
int main()
 {


    int y=97;
    cout<<(char)y;
   deszyfr(sin);
    return 0;
}

Sorry jeśli źle cos zrozumiałem. Jestem dopiero początkującym  a przy okazji męczę się z jeszcze jednym problemem  w którym też mi pomogłeś 

komentarz 25 lipca 2018 przez chucksqll Stary wyjadacz (12,930 p.)

Ahh...

Ja Ci tylko podałem przykład z tym y=97.

Miałeś to wdrożyć w swojej funkcji.

Poniżej zamieszczam kod jak to ma wyglądać z użyciem zadeklarowanej tablicy o 4 elementach. Wystarczy teraz, że przerobisz ten kod na wprowadzenie danych.

#include <iostream>
 
using namespace std;
const int MAX_SIZE=4;
string sin;
string deszyfr(int tab[])
{
	string str;
	for(int i=0; i < MAX_SIZE;i++)
	{
	  str+=(char)tab[i];
	}
	return str;
}
int main()
{
	int tablica[]={72, 97, 108, 111};
	cout<<deszyfr(tablica);
	return 0;
}

Radziłbym użyć jakiegoś kontenera do tego np. vector zamiast zwykłej tablicy.

komentarz 25 lipca 2018 przez MatZyN Początkujący (350 p.)
YYY....

Tak jak mówilem jestem początkującym i nie wiem co to jest vector ale znajde w necie i wypróbuje. Dzięki.
komentarz 25 lipca 2018 przez chucksqll Stary wyjadacz (12,930 p.)

Niech będzie. Zrobiłem wersję z vector'em więcej o nim np. tutaj http://cpp0x.pl/dokumentacja/standard-C++/vector/819

#include <iostream>
#include <string>
#include <vector>
  
using namespace std;

string deszyfr()
{
    string str;
    vector<int> tab;
    cout<<"Aby zakończyć wprowadzanie wpisz dowolną litere:\n";
    int temp;
    while(cin>>temp)
    {
    	tab.push_back(temp);
    }
    for(int i=0; i < tab.size();i++)
    {
      str+=(char)tab[i];
    }
    return str;
}
int main()
{
    cout<<deszyfr();
    return 0;
}

 

komentarz 25 lipca 2018 przez MatZyN Początkujący (350 p.)
Wielkie ale to wielkie dzięki! Czytałem cos o tym wektorze ale mało zrozumiałem, dlatego zabrałem się za ten pierwszy wzór który mi podałeś. Jeszcze raz wielkie dzięki

Podobne pytania

0 głosów
3 odpowiedzi 1,120 wizyt
pytanie zadane 21 czerwca 2018 w C i C++ przez XaFF Użytkownik (610 p.)
0 głosów
0 odpowiedzi 204 wizyt
pytanie zadane 14 stycznia 2018 w C i C++ przez fil1313 Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 1,127 wizyt
pytanie zadane 16 listopada 2019 w C i C++ przez Hubertius Bywalec (2,970 p.)

93,487 zapytań

142,420 odpowiedzi

322,771 komentarzy

62,901 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...