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ăspunsuri la întrebare
Răspuns de
5
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;
}
#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;
}
Alte întrebări interesante
Engleza,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Engleza,
9 ani în urmă
Limba română,
9 ani în urmă