Zamiana na duże litery

Zad. 2. Napisz program, zamieni wszystkie małe litery na duże. 

 

Wejście

Ciąg składający się z małych i dużych liter zakończony kropką.

Wyjście

Ciąg składający się z dużych liter (bez kropki)

Przykład

Wejście:
Alamakota.

Wyjście:
ALAMAKOTA

Rozwiązanie:

 

Warto zauważyć, że różnica w kodzie ASCII między dużą a małą literą wynosi 32:

 A - 65  --> a - 97

B - 66 --> b - 98

C - 67 --> c - 99

itd.

Zamieniamy tylko małe litery, a więc wystarczy sprawdzić, czy kod ASCII danego znaku jest większy niż 96.

#include<iostream>
#include<cstdlib>
using namespace std;

int main()
{

char znak;
cin>>znak; //wczytujemy pierwszy znak

while(znak!='.') //dopóki nie napotkamy na znak '.'
{
	if(znak>95) //gdy napotkamy małą literę zamieniamy ją na dużą
	  	cout<<(char)(znak-32); //przesuwając o 32 miejsca w kodzie ASCII
	else
		cout<<znak; 
	
	cin>>znak; //wczytujemy następny znak
}

cout<<endl;

system("pause");
return 0;
}
 

 

Program można testować na tej stronie.