👤

Scrieți un program care afișează cele mai frecvente litere care apar într-un fișier. Programul nu va face distincție între literele mari și mici. Dacă există mai multe litere care apar de cel mai multe ori în fișier, programul le va afișa pe toate. Dacă nu există nici o literă în fișier, programul va afișa un mesaj corespunzător.

Răspuns :

#include <iostream>

#include <fstream>

#include <cstring>

using namespace std;

ifstream f("text.in");

char s[256], ch;

int exista=0, n, i, fr[91], maxap, cod;

int main()

{

  f.getline(s,256);

  n=strlen(s);

  for (i=0; i<n; ++i)

  {

      if (s[i]>='A' && s[i]<='Z') { cod=s[i]; ++fr[cod]; exista=1;}

      else

      {

          if (s[i]>='a' && s[i]<='z') { cod=s[i]; ++fr[cod-32]; exista=1; }

      }

  }

  if (exista==0) cout << "textul din fisier nu contine litere...";

  else

  {

      cout << "Litere din fisier cu frecventa maxima: ";

      for (i=65; i<91; ++i)

       {

           if (fr[i]>maxap) maxap=fr[i];

       }

      for (i=65; i<91; ++i)

      {

          if (maxap==fr[i])

            { ch=i; cout << ch << " "; }

      }

  }

}

Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.


Wix Learning: Alte intrebari