👤
a fost răspuns

Cerința
Se consideră fișierul prosir.in care conține pe primul rând un text format din cel mult 199 de caractere litere mici și spații. Cuvintele din text sunt separate prin unul sau mai multe spații.
Să se modifice textul citit din fișier prin înlocuirea ultimei litere a fiecărui cuvânt cu cifra 5. Textul modificat se va afișa pe ecran.

Date de intrare
Fișierul de intrare prosir.in conține pe prima linie șirul de caractere.

Date de ieșire
Fișierul de ieșire prosir.out va conține pe prima linie șirul modificat conform cerinței.

Restricții și precizări
lugimea șirului citit este maximum 200
ultimul cuvânt din text se termină cu caracterul ‘.’



Exemplu
prosir.in

ana are multe mare si o gutuie.
prosir.out

an5 ar5 mult5 mar5 s5 5 gutui5.


Răspuns :

Pentru ca acesta problema este punctata corespunzator gradului de dificultate am sa-ti ofer o sursa in C++. Succes!

#include <bits/stdc++.h>
using namespace std;
int n, i, k, nr, lu;
char s[256], c[25], *p;
string v[256];
int main()
{
   ifstream f("prosir.in");
   ofstream g("prosir.out");
   f.getline(s, sizeof(s));
   p = strtok(s, " .");
   while(p)
{
strcpy(c, p);
lu = strlen(c);
c[lu - 1] = '5';
v[++ k] = c;
p = strtok(NULL, " .");
}
for(i = 1; i < k; i ++)
 g << v[i] << " ";
g << v[k] << ".";
    return 0;
}