[c++] problem z konwersją znaków na kod ascii
Ostatnio zmodyfikowano 2016-06-06 14:31
anna61 Temat założony przez niniejszego użytkownika |
[c++] problem z konwersją znaków na kod ascii » 2016-06-06 13:12:32 Mam zadanie: Napisz program, który z klawiatury pobierze ciąg znaków i zapisze do tablicy. 1. Wyświetl numeryczny kod ASCII każdego znaku, 2. wyświetl ciąg znaków w odwrotnej kolejności, 3. przerób pętle z podpunktu wyżej na pętlę while. Mam już część kodu. Ale problem jest taki, że po wpisaniu np. Nc otrzymuję 78 zamiast 7899. Konwertuje mi tylko pierwszy znak. Co mam zmienić w napisanym kodzie? Oraz proszę o pomoc z punktami 2 i 3. Z góry dziękuję. #include "stdafx.h" #include <iostream>
using namespace std;
int main() { unsigned char ciag; int tab[256]; int i = 0; int ascii;
cout << "Wpisz ciag znakow:" << endl; cin >> ciag;
for (int i = 0; i < 256; i++) { tab[i] = ciag; }
for (i = 0; i < 256; i++) { ascii = (int)tab[i]; } cout << "Zamiana na ASCII \n" << ascii << endl;
system("pause"); return 0; }
|
|
anna61 Temat założony przez niniejszego użytkownika |
» 2016-06-06 13:25:28 Udało mi się przerobić kod w ten sposób: #include <iostream> #include <string.h>
int main() { char text[100];
std::cout << "Write text: "; std::cin >> text;
for (int i = 0; i < strlen(text); i++) std::cout << (int)text[i]; return 0; }
Proszę więc tylko o pomoc z punktami 2 i 3. :) |
|
Gibas11 |
» 2016-06-06 13:30:00 W pkt. 2 iteruj po tablicy od długości minus jeden do zera włącznie. Przerobisz na while sam jeśli rozumiesz działanie fora. |
|
carlosmay |
» 2016-06-06 14:22:19 { std::string str; std::getline( std::cin, str ); for( int i = 0; i < str.size(); ++i ) { std::cout << static_cast < int >( str[ i ] ); } for( int i = str.size() - 1; i >= 0; --i ) { std::cout << str[ i ]; } } |
|
carlosmay |
» 2016-06-06 14:31:56 { std: 'vector<char> characters; char ch; while( std::cin.get( ch ) && ch != '\n'; ) { characters.push_back( ch ); } for( int i = 0; i < characters.size(); ++i ) { std::cout << static_cast < int >( characters[ i ] ); } } |
|
« 1 » |