2348 - Caracterul mediu 1: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: ==Cerința== Caracterul mediu a două sau al mai multor caractere este caracterul care are codul ASCII egal cu partea întreagă a mediei aritmetice a codurilor ASCII ale caracterelor date. Un caracter se numeste ''bun'' daca nu este spatiu, nu este litera mare si nu este vocala . Se citeste un sir de caractere (care poate contine si spatii). Să se determine caracterul mediu al caracterelor bune din sir . ==Date de intrare== Programul citește de la tastatură un sir de c...
 
No edit summary
Line 9: Line 9:
Programul citește de la tastatură un sir de caractere.
Programul citește de la tastatură un sir de caractere.
==Date de ieșire==
==Date de ieșire==
Programul va afișa pe ecran caracterul mediu al caracterelor bune din sir .
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse."
 
Pe următorul rând se va afișa caracterul mediu al caracterelor bune din sir.
 
În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Datele de intrare nu corespund restricțiilor impuse."


==Restricții și precizări==
==Restricții și precizări==
Line 56: Line 60:


     if not conditii(sir):
     if not conditii(sir):
         return print("Date de intrare gresite!")
         return print("Datele de intrare nu corespund restricțiilor impuse.")
    print("Datele de intrare corespund restricțiilor impuse.")


     caractere = [ord(c) for c in caractere_bune(sir)]
     caractere = [ord(c) for c in caractere_bune(sir)]

Revision as of 10:42, 26 March 2023

Cerința

Caracterul mediu a două sau al mai multor caractere este caracterul care are codul ASCII egal cu partea întreagă a mediei aritmetice a codurilor ASCII ale caracterelor date.

Un caracter se numeste bun daca nu este spatiu, nu este litera mare si nu este vocala .

Se citeste un sir de caractere (care poate contine si spatii). Să se determine caracterul mediu al caracterelor bune din sir .

Date de intrare

Programul citește de la tastatură un sir de caractere.

Date de ieșire

Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse."

Pe următorul rând se va afișa caracterul mediu al caracterelor bune din sir.

În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Datele de intrare nu corespund restricțiilor impuse."

Restricții și precizări

  • 2 ≤ numărul de caractere citite ≤ 200
  • Caracterul mediu poate fi spatiu, litera mare sau vocala.
  • Cel putin un caracter va fi bun

Exemplu 1

Intrare
fz
Ieșire
p

Exemplu 2

Intrare
FaZ QWaaP
Ieșire
Date de intrare gresite!

Rezolvare

<syntaxhighlight lang="python" line="1">

  1. 2348 Caracterul Mediu 1

import re


def caractere_bune(sir):

   bune = []
   for caracter in sir:
       if not re.match(r"([aeiouA-Z ])", caracter):
           bune.append(caracter)
   return bune


def conditii(sir):

   return all((
       2 <= len(sir) <= 200,
       len(caractere_bune(sir)) > 0
   ))


def main():

   sir = input()
   if not conditii(sir):
       return print("Datele de intrare nu corespund restricțiilor impuse.")
   print("Datele de intrare corespund restricțiilor impuse.")
   caractere = [ord(c) for c in caractere_bune(sir)]
   medie = sum(caractere) // len(caractere)
   print(chr(medie))


if __name__ == "__main__":

   main()

</syntaxhighlight>