Fişierul intrare/ieşire:lab-12-03b.in, lab-12-03b.outSursăad-hoc
AutorAdăugată deadrian.lunguAdrian Lungu adrian.lungu
Timp execuţie pe test1 secLimită de memorie16384 kbytes

Vezi solutiile trimise

Problema 3B

Scrieţi un program pentru căutarea unui şir dat într-un fişier text şi afişarea liniilor care conţin şirul dat. Numele fişierului şi şirul căutat vor fi trimise ca argumente în linia de comandă, în această ordine. Adăugaţi programului posibilitatea de a primi ca argumente şi una sau mai multe dintre următoarele opţiuni (ultimele 2 argumente vor fi întotdeauna numele fişierului şi şirul căutat):

  • -i ignoră diferenţa dintre litere mici şi litere mari.
  • -n afişează şi numerele liniilor din fişier care conţin şirul căutat.
  • -c afişează numărul de linii în care s-a găsit şirul căutat.

Aceste 3 argumente pot apărea în orice ordine.

Date de intrare (argumente în linia de comandă)

  • Numele fişierului în care se realizează căutarea
  • Parametrii pentru căutare
  • Stringul căutat

Date de ieşire (consolă)

  • Liniile ce conţin şirul căutat
  • Numărul liniei din fişierul sursă
  • Numărul de linii în care s-a găsit şirul căutat

Exemplu

Dacă, căutăm în fişierul input.txt stringul vacanta:

./executabil -c -i -n input.txt vacanta

input.txtstdout
Mai e putin si vine vacanta
Mie nu imi plac pointerii dar iubesc vacanta
Abia astept sesiunea
Haideti sa mergem la un suc chiar acum
Cine stie sa se dea cu placa de snowboard ?!
Vacanta asta merg la Predeal si ma dau cu placa :)
Ma asteapta o sesiune infernala :-(
Vine vacanta cu trenul din Franta ...
La multi ani 2014
[1] Mai e putin si vine vacanta
[2] Mie nu imi plac pointerii dar iubesc vacanta
[6] Vacanta asta merg la Predeal si ma dau cu placa :)
[8] Vine vacanta cu trenul din Franta ...
Numar total de linii: 4
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?