👤

AJUTOR URGENT AM TEST!!!!!!!!!!

Cerința

Se dau trei numere naturale n, k și p și n șiruri formate din litere mici ale alfabetului englez. Înlocuiți a k-a literă din fiecare șir cu a p-a literă din alfabet. Dacă șirul are mai puțin de k litere se va scrie oglinditul lui.


Date de intrare

Pe prima linie a fișierului schimb.in se află trei numere naturale n, k și p. Pe următoarele n linii se află n șiruri.


Date de ieșire

În fișierul schimb.out se vor scrie noile șiruri, fiecare pe un rând nou.


Restricții și precizări

1 ≤ n, k ≤ 10000

1 ≤ p ≤ 26

șirurile au cel mult 500 de caractere


Problema 1580 de pe pbinfo


Răspuns :

Răspuns:

#include <iostream>

#include <cstring>

#include <fstream>

using namespace std;

ifstream f("schimb.in");

ofstream g("schimb.out");

char s[502], ch, t[502];

short n,k,p,i, len, cod;

void ogl(char s[], short len)

{

  for (short j=0; j<len/2; ++j)

     swap(s[j],s[len-1-j]);

}

int main()

{

   f >> n >> k >> p;

   f.get();

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

   {

       f >> s; f.get();

       len=strlen(s);

       cout << len << "\n";

       cod=97+p-1; ch=(char)cod;

       if (len<k)

           { ogl(s,len); g << s << "\n"; }

       else

       {

           s[k-1]=ch;

           g << s << "\n";

       }

   }

}

Explicație:

Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări suplimentare sau nevoie de ajutor, vă rugăm să ne contactați cu încredere. Așteptăm cu drag să reveniți și nu uitați să ne salvați în lista dumneavoastră de favorite!


En Studentsy: Alte intrebari