Kurs maturalny z języka angielskiego!
kurs-maturalny-jezyk-angielski

PROGRAMOWANIE I ALGORYTMY

Zajęcia maturalne z informatyki
Olimpiada Informatyczna Juniorów
    Prowadzący: Marcin Kasprowicz
  • właściciel serwisu algorytm.edu.pl
  • wrzesień 2024 — start zajęć
  • czytaj więcej

Zliczanie liter


Zadanie 3. Napisz program, który zliczy ilość wystąpień każdej z liter w zdaniu. Wypisz tylko te, które wystąpiły co najmniej raz.

Dane wejściowe

Jedno zdanie nie dłuższe niż 100 znaków.

Dane wyjściowe

Kolejne litery (najpierw małe) oraz ilość ich wystąpień.

Rozwiązanie

#include<iostream>
using namespace std;
 
int main()
{
    char zdanie[101]; //tablica przechowująca wczytane zdanie
        int zlicz[123] = {}; //wyzerowania tablica przechowująca zliczenia liter
        
        cin.getline(zdanie,123); //wczytanie zdania
        
        int i=0; //zmienna do poruszania po komórkach tablicy
        
        while(zdanie[i]) //lub zdanie[i]!=0
        {
                ++zlicz[zdanie[i]]; //zliczanie znaków
                ++i;
        }
        
        for(int i=97;i<123;i++) //wypisanie wystąpień małych liter ASCII - 97-122
                if(zlicz[i]<0) //lub if(zlicz[i])
                        cout<<(char)i<<" - "<<zlicz[i]<<endl;
                        
        for(int i=65;i<91;i++) //wypisanie wystąpień dużych liter ASCII - 65-90
                if(zlicz[i]<0) //lub if(zlicz[i])
                        cout<<(char)i<<" - "<<zlicz[i]<<endl;   
          
        return 0;
}

Przykładowe wejście

Ala ma kota, a kot ma Ale :)

Wyjście

a - 5
e - 1
k - 2
l - 2
m - 2
o - 2
t - 2
A - 2