0810 - Nr A: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: == Cerinţa == Se dă un şir de caractere ce conţine cuvinte formate din litere mici ale alfabetului englez, separate prin unul sau mai multe spații. Înaintea primului cuvânt nu există spații, și nici după ultimul. Să se determine numărul de cuvinte din șir în care apare litera '''a'''. == Date de intrare == Programul va citi de la tastatură şirul dat. == Date de ieșire == Programul va afişa pe ecran numărul de cuvinte determinat. == Restricţii şi preciză...
 
Line 7: Line 7:
== Restricţii şi precizări ==
== Restricţii şi precizări ==
* șirul dat va conține cel mult '''70''' caractere, litere mici ale alfabetului englez și spații
* șirul dat va conține cel mult '''70''' caractere, litere mici ale alfabetului englez și spații
== Exemplu 1 ==
== Exemplul 1 ==
; Intrare
; Intrare
  voi sustine      examenul la  informatica
  voi sustine      examenul la  informatica
Line 14: Line 14:
  3
  3
<br>
<br>
== Exemplu 2 ==
== Exemplu 2 ==
; Intrare
; Intrare

Revision as of 18:15, 25 December 2023

Cerinţa

Se dă un şir de caractere ce conţine cuvinte formate din litere mici ale alfabetului englez, separate prin unul sau mai multe spații. Înaintea primului cuvânt nu există spații, și nici după ultimul. Să se determine numărul de cuvinte din șir în care apare litera a.

Date de intrare

Programul va citi de la tastatură şirul dat.

Date de ieșire

Programul va afişa pe ecran numărul de cuvinte determinat.

Restricţii şi precizări

  • șirul dat va conține cel mult 70 caractere, litere mici ale alfabetului englez și spații

Exemplul 1

Intrare
voi sustine      examenul la   informatica
Iesire
Datele de intrare corespund restrictiilor impuse
3


Exemplu 2

Intrare
voi sustine      examenul LA   informatica
Iesire
Datele de intrare nu corespund restrictiilor impuse


Rezolvare

<syntaxhighlight lang="python" line> def main():

   # Citirea șirului de la tastatură
   sir = input().strip()
   # Verifică dacă șirul respectă restricțiile
   if len(sir) > 70 or not all(c.islower() or c.isspace() for c in sir):
       print("Datele de intrare nu corespund restrictiilor impuse")
       return
   print("Datele de intrare corespund restrictiilor impuse")
   # Separarea șirului în cuvinte
   cuvinte = sir.split()
   # Calcularea numărului de cuvinte care conțin litera 'a'
   numar_cuvinte = sum('a' in cuvant for cuvant in cuvinte)
   # Afișarea numărului de cuvinte
   print(numar_cuvinte)


if __name__ == "__main__":

   main()

</syntaxhighlight>