Inkrementacja kodu ASCII

0

Cześć

Chce zrobić pętle for, która przy poddaniu inkrementacji kodu dziesiętnego ASCII poda mi zinkrementowany znak z tejże tabeli.
Np. wartość początkowa to 'M' czyli 77, to chce poddać inkrementacji w pętli for i uzyskać np. dziesięć kolejnych znaków.
Takie coś robiłem ale wychodziły różne dziwy:

int main()
{
	
	for(int i = 77; i<88; i++)
	{
	
	char a = 'M';
	int b = a;
	a = a + i;
	b = a;

	cout << b << endl;
	}

	system("pause");
	return 0;
} 

Proszę o pomoc

1

po pierwsze, pętli masz cały czas M, wiec każda iteracja startuje od M. Potem po coś przypisujesz do B wartość z A, zwiększasz A i jeszcze raz przypisujesz do B (to po co to robiłeś pierwszy raz?) i wypisujesz WARTOŚĆ LICZBOWĄ zmiennej B a nie jej znak. I dokładnie to samo robisz co iterację.

 
int main()
{
    for(int i=77; i<88; cout<<(char)++i<<endl){}
}
0

Zrobiłem takie coś:

int main()
{
	
	for(int i = 77; i<88; i++)
	{
	int b = 0;
	char a = 'M';
	b+=i;
	a=b;

	cout << a << endl;
	}

	system("pause");
	return 0;
}

Twój kod jest o wiele lepszy... Czy ten co podałem też może być czy jest tam coś nawalone nie tak?

2

Nie musisz konwertować na int tam i z powrotem:

for(char ch='M';ch<'Z';++ch) cout<<ch;

Nie używaj i++ kiedy możesz użyć ++i - to się zemści.

1 użytkowników online, w tym zalogowanych: 0, gości: 1